Sobre o projeto

O Project NOMAD é um servidor de conhecimento e educação autossuficiente e offline-first. É instalado em sistemas baseados em Debian (Ubuntu 26.04 LTS recomendado; 24.04 LTS e Debian 12 também suportados) por meio de um script de terminal, e todas as ferramentas são acessadas pelo navegador, sem exigir ambiente desktop. A instalação rápida usa apt e um script via curl; um caminho avançado oferece um modelo Docker Compose para configuração manual. Após a instalação, o Command Center fica disponível na porta 8080 em localhost ou no IP do dispositivo. Arquitetura e operação: o NOMAD é uma interface de gerenciamento (Command Center) mais uma API que orquestra uma coleção de ferramentas e recursos conteinerizados via Docker. Ele lida com instalação, configuração e atualizações desses componentes. Um assistente de configuração guia a primeira configuração com coleções de conteúdo curadas, e há ferramentas integradas como seletor de conteúdo da Wikipedia, gerenciador de biblioteca ZIM e explorador de conteúdo. Recursos descritos no README: - Chat de IA com base de conhecimento: chat de IA local com Ollama ou servidores compatíveis com OpenAI, como LM Studio ou llama.cpp, com upload de documentos e busca semântica (RAG via Qdrant). - Biblioteca de informações: Wikipedia offline, referências médicas, e-books e mais via Kiwix. - Plataforma educacional: cursos da Khan Academy com acompanhamento de progresso e suporte a múltiplos usuários via Kolibri. - Mapas offline: mapas regionais para download via ProtoMaps. - Ferramentas de dados: criptografia, codificação, hash e análise via CyberChef. - Notas: anotações locais em Markdown via FlatNotes. - Benchmark do sistema: pontuação de hardware com Builder Tags e leaderboard da comunidade. - Supply Depot: catálogo de aplicativos com um clique (ferramentas de PDF, navegador de arquivos, biblioteca de e-books, gerenciador de senhas e mais) e capacidade de executar contêineres Docker personalizados. - Atualizações automáticas: atualizações agendadas opcionais para o software principal, aplicativos instalados e conteúdo offline; atualizações menores/patch podem ocorrer em uma janela configurável após um período de espera e somente quando as verificações prévias passam, enquanto versões principais exigem atualização manual. Hardware: o aplicativo de gerenciamento é leve, com requisitos mínimos de processador dual-core de 2 GHz, 4 GB de RAM, pelo menos 5 GB de espaço livre e SO baseado em Debian; a internet é necessária apenas durante a instalação. A execução de LLMs e outras ferramentas de IA é recomendada em um dispositivo com GPU, com especificações ideais listadas como Ryzen 7 ou Core i7 ou superior, 32 GB de RAM, NVIDIA RTX 3060 ou equivalente AMD ou superior, e pelo menos 250 GB de espaço livre, preferencialmente em SSD. Modelos de IA podem rodar em outro host apontando as configurações do assistente de IA para uma URL de API compatível com Ollama ou OpenAI; para Ollama remoto, o servidor deve ser iniciado com OLLAMA_HOST=0.0.0.0. Privacidade e conectividade: o NOMAD é projetado para uso offline e afirma não ter telemetria embutida. A internet é necessária apenas para a instalação inicial e para downloads posteriores escolhidos pelo usuário. As verificações de conectividade tentam primeiro o endpoint de trace 1.1.1.1 da Cloudflare e usam como fallback endpoints que o aplicativo já contata (API do GitHub e API do Project NOMAD). A URL de teste pode ser substituída em Configurações, em Avançado, ou pela variável de ambiente INTERNET_STATUS_TEST_URL, com a variável tendo precedência. Postura de segurança: por design, o projeto não inclui autenticação e é destinado a ficar aberto em uma rede local; o README recomenda controles no nível da rede e desaconselha expor uma instância diretamente à internet. Autenticação opcional é mencionada como possível recurso futuro, acompanhada no roteiro público. Manutenção e desenvolvimento: scripts auxiliares em /opt/project-nomad iniciam, param, atualizam e removem a pilha; o script de atualização apenas atualiza os contêineres do Command Center, não os contêineres de aplicativos instaláveis, que são atualizados pela interface. Para colaboradores, um comando Ace (auto-update:dry-run) executa todo o pipeline de decisão de atualização automática sem disparar uma atualização, com suporte a suítes de cenários determinísticas, simulação ao vivo de lançamentos do GitHub e execuções totalmente offline com listas de lançamentos predefinidas e relógio fixo. O projeto é licenciado sob Apache License 2.0 e oferece site, comunidade no Discord, leaderboard de benchmark, FAQ e documentação de complementos da comunidade.