Pular para o conteúdo

Araru — contexto rápido do projeto

Araru é um ecossistema open source e self-hosted para catalogar e ler arquivos locais ou do Google Drive. Server, Web e documentação são projetos independentes e comunicam-se exclusivamente pela API HTTP.

Former project name: Biblioteca Digital. Use o nome antigo somente ao explicar compatibilidade histórica; chame o produto exclusivamente de Araru.

  • frontend: React 18, Vite 8, Router, TanStack Query/Virtual, Tailwind, PDF.js, JSZip;
  • backend: Node 22+, Express, pg, ioredis, Google APIs, Chokidar, parsers/extratores;
  • dados: PostgreSQL persistente, Redis para cache, livros no filesystem e capas derivadas em disco;
  • formatos: PDF, EPUB, MOBI, CBZ, CBR;
  • deploy: frontend Nginx 8080, API 3001, proxy same-origin;
  • testes: suítes unitárias/integração no Server e Web, E2E integrado opcional, benchmarks e budget.

Catálogo/FTS, categorias por diretórios, favoritos/recentes, histórico com retomada, perfis, preferências, séries/works, leitores internos, progresso, PWA/offline, metadados/capas, duplicidades, backup, jobs, integridade e operação.

  • Web: repositório araru-web, entrada em src/main.jsx e rotas em src/App.jsx;
  • Server: repositório araru-server, entrada em server/server.js e rotas em server/routes;
  • schema: server/database/postgresMigrations.js no araru-server;
  • Docker: docker-compose.yml e Dockerfiles.

S3/R2, workers externos, escala horizontal, OpenAPI completo e clientes nativos continuam planejados. PostgreSQL, Redis, usuários e perfis já estão implementados.