Sitio de documentación oficial del plugin de Minecraft Apolo. Construido con Vite + React + TypeScript + TailwindCSS.
| Tecnología | Versión | Uso |
|---|---|---|
| Vite | 5 | Bundler y dev server |
| React | 19 | UI |
| TypeScript | 5 | Tipado estricto (strict: true) |
| TailwindCSS | 3 | Estilos con darkMode: 'class' |
| highlight.js | latest | Syntax highlighting en bloques de código |
- Dark / Light mode — Toggle con persistencia en
localStoragey respeto aprefers-color-scheme - i18n ES / EN — Implementación manual con hook
useTranslation, sin librerías externas - Sidebar sticky con scroll-spy — resalta la sección visible en pantalla
- Título dinámico —
document.titlecambia según la sección activa - Buscador + filtros por categoría en la sección de comandos
- Buscador en la tabla de permisos
- Copiar anchor — botón
#en cada título de sección para compartir enlace directo - Copiar nodo — botón de copiar en hover en cada fila de permisos
- Bloques de código con syntax highlight (YAML / Bash / Java) y botón "Copiar"
- Botón "Volver arriba" flotante
- Drawer hamburger en móvil
- Sin backend — toda la data hardcodeada en
src/data/
- Hero
- Descripción general
- Requisitos
- Instalación
- Configuración (
config.ymlcompleto) - Comandos (24 comandos con filtros)
- Permisos (24 nodos)
- Cross-Server (Redis PubSub)
- API pública (JavaDoc style)
- Arquitectura de módulos
src/
├── components/
│ ├── layout/ # Navbar, Sidebar, Footer
│ ├── ui/ # Badge, CodeBlock, CommandCard, EventCard,
│ │ # PermissionRow, SectionHeader, ThemeToggle, BackToTop
│ └── sections/ # Una sección por cada bloque de contenido
├── context/ # ThemeContext, LanguageContext
├── data/ # commands.ts, permissions.ts, events.ts, config.ts
├── hooks/ # useTranslation, useTheme, useDynamicTitle
├── i18n/ # es.ts, en.ts
└── types/ # index.ts
npm install
npm run devEl dev server arranca en http://localhost:5173.
npm run build # build de producciónNuevo comando → src/data/commands.ts, agregar un objeto Command.
Nuevo permiso → src/data/permissions.ts, agregar un objeto Permission.
Nueva traducción → src/i18n/es.ts y src/i18n/en.ts en paralelo; TypeScript forzará que ambos archivos sean isomórficos gracias al tipo Translations.
Apolo Plugin — by AlexisDev
