Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Estruturas

Hub de aprendizagem de Estruturas de Dados e Programação Competitiva. Um caderno acadêmico vivo: aulas com teoria rigorosa, visualizações interativas do funcionamento dos algoritmos e uma camada de gamificação no espírito de um "Duolingo de algoritmos" — trilha, XP, sequência de dias, vidas e quizzes.

Este projeto nasceu de um repositório de estudos em C (busca, ordenação, árvores). O código C original permanece nas pastas busca/, ordenacao/ e arvore/ como material de referência; o site o transforma numa plataforma.

O que tem aqui

  • 7 trilhas — Fundamentos & Complexidade, Ordenação, Busca & Hashing, Árvores, Grafos, Programação Competitiva e Matemática Competitiva.
  • Aulas em MDX com matemática renderizada (KaTeX), callouts de ideia/prova/cuidado e código em C, C++ e Python lado a lado.
  • Visualizadores — laboratório de ordenação (8 algoritmos animados) e busca binária passo a passo, em Canvas/SVG puro.
  • Arena — quizzes rápidos com feedback imediato, XP, streak e vidas.
  • Gamificação persistente via localStorage (sem login, sem servidor, sem rastreadores).

A trilha de Ordenação está construída a fundo (11 aulas). As demais têm a estrutura navegável e vão sendo preenchidas.

Stack

Astro 5 · TypeScript · Tailwind v4 · MDX · KaTeX · nanostores (estado) · Shiki (highlight). Visualizações são módulos TS puros hidratados como ilhas. Identidade visual caderno acadêmico / Swiss: papel-tinta, grid milimetrado, serif display, um acento vívido, tema claro/escuro.

Rodar

npm install
npm run dev      # http://localhost:4321
npm run build    # gera dist/ estático
npm run preview  # serve o build

Neste ambiente o wrapper nvm do shell está quebrado; use o binário direto: /usr/bin/node /usr/bin/npm run dev.

Estrutura

src/
  content/lessons/<trilha>/*.mdx   aulas
  data/tracks.ts                   currículo (trilhas, unidades, aulas)
  data/snippets.ts                 código C/C++/Python das aulas
  data/quizzes.ts                  bancos de questões
  lib/progress.ts | gamification.ts  estado e regras de jogo
  components/{layout,lesson,path,viz}/  UI e visualizadores
  pages/                           rotas (home, trilha, aula, arena, ...)
busca/ ordenacao/ arvore/          código C original (referência)

Como adicionar uma aula

  1. Crie src/content/lessons/<trilha>/<slug>.mdx com o frontmatter (veja uma aula existente de ordenacao/).
  2. Registre-a em src/data/tracks.ts (com status: 'ready').
  3. Opcional: adicione snippets em src/data/snippets.ts e um quiz em src/data/quizzes.ts (chave "<trilha>/<slug>").

About

No description or website provided.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages