Este é o BlenderWiki refatorado de React para HTML puro + JavaScript, conforme solicitado. O site agora é totalmente estático e pode ser hospedado na Vercel ou qualquer outro serviço de hospedagem estática.
- Páginas separadas: Cada seção agora é um arquivo HTML independente
index.html- Página principal (Documentos)api.html- Documentação da APIforum.html- Fórum da comunidadesettings.html- Configurações do usuário
- Cadastro com gênero: Campo obrigatório para seleção de gênero (Masculino/Feminino)
- Avatares automáticos: Gerados dinamicamente usando:
https://avatar.iran.liara.run/public/boy?username={NomeUsuario}(Masculino)https://avatar.iran.liara.run/public/girl?username={NomeUsuario}(Feminino)
- Persistência: Dados salvos no
localStoragedo navegador
- Parser JavaScript: Implementado parser próprio para renderizar Markdown
- Carregamento dinâmico: Arquivos
.mdcarregados via fetch - Exemplo funcional:
docs/api-exemplo.mdcom documentação completa - Syntax highlighting: Suporte para blocos de código com diferentes linguagens
blenderwiki-html/
├── index.html # Página principal
├── api.html # Página da API
├── forum.html # Página do fórum
├── settings.html # Página de configurações
├── styles.css # Estilos globais
├── shared.js # JavaScript compartilhado
├── app.js # JavaScript da página principal
├── api.js # JavaScript da página API
├── forum.js # JavaScript da página do fórum
├── settings.js # JavaScript das configurações
├── markdown-parser.js # Parser de Markdown
├── docs/ # Diretório para arquivos Markdown
│ └── api-exemplo.md # Exemplo de documentação
└── README.md # Este arquivo
-
Navegue até o diretório do projeto:
cd blenderwiki-html -
Inicie um servidor HTTP local:
python3 -m http.server 8000
-
Acesse no navegador:
http://localhost:8000
- Faça upload dos arquivos para um repositório Git
- Conecte o repositório à Vercel
- Configure o diretório raiz como
blenderwiki-html - Deploy automático será realizado
Para adicionar uma nova documentação em Markdown:
-
Crie o arquivo
.mdno diretóriodocs/:docs/minha-nova-doc.md
-
Adicione a seção no arquivo
api.js:const initialApiSections = [ // ... seções existentes { id: 'minha-nova-doc', title: 'Minha Nova Documentação', description: 'Descrição da nova documentação', markdownFile: 'docs/minha-nova-doc.md' } ];
-
Formato do Markdown: Use Markdown padrão com suporte para:
- Headers (
#,##,###) - Parágrafos
- Listas (
-ou*) - Código inline (
`código`) - Blocos de código (
```linguagem) - Links (
[texto](url)) - Negrito (
**texto**) e itálico (*texto*)
- Headers (
- Nome de usuário (único)
- Senha
- Nome completo
- Cargo/Função
- Gênero (para geração do avatar)
- Nome de usuário
- Senha
Os dados são salvos no localStorage do navegador:
blenderwiki_users- Lista de usuários cadastradosblenderwiki_current_user- Usuário logado atualmenteblenderwiki_posts- Posts da página principalblenderwiki_forum_posts- Posts do fórumblenderwiki_user_settings- Configurações do usuário
- CSS: Editável em
styles.css - Framework: Tailwind CSS via CDN
- Ícones: Lucide Icons via CDN
- Modular: Cada página tem seu próprio arquivo JS
- Compartilhado: Funcionalidades comuns em
shared.js - Extensível: Fácil adição de novas funcionalidades
- Suporte completo: Headers, parágrafos, listas, código, links
- Syntax highlighting: Diferentes cores para linguagens
- Botão copiar: Em todos os blocos de código
- Responsivo: Adaptado para mobile
- SPA-like: Navegação fluida entre páginas
- Estado persistente: Login mantido entre páginas
- Responsivo: Funciona em desktop e mobile
- Navegadores modernos: Chrome, Firefox, Safari, Edge
- Mobile: Totalmente responsivo
- Estático: Não requer servidor backend
O site é totalmente responsivo e funciona bem em:
- Desktop: Layout completo com sidebar
- Tablet: Layout adaptado
- Mobile: Menu colapsável e interface otimizada
- Carregamento rápido: Arquivos otimizados
- Cache: Aproveitamento do cache do navegador
- CDN: Bibliotecas carregadas via CDN
- Lazy loading: Markdown carregado sob demanda
- Client-side: Toda autenticação é local
- Sem backend: Não há servidor para atacar
- Dados locais: Informações ficam no navegador do usuário
Este projeto é uma refatoração do BlenderWiki original para HTML puro, mantendo todas as funcionalidades principais e adicionando o sistema de avatares baseado em gênero conforme solicitado.