O seu gerenciador de referências bibliográficas moderno, web-first e focado em UX.
Funcionalidades • Tech Stack • Como Rodar • Supabase • Contribuindo
Litdock é uma aplicação PWA (Progressive Web App) projetada para pesquisadores, estudantes e acadêmicos que precisam organizar suas leituras sem a complexidade de softwares legados.
Diferente de gerenciadores tradicionais, o Litdock foca em uma interface limpa, captura automática de metadados inteligente e uma experiência de leitura imersiva direto no navegador.
- Auto-Importação: Cole um DOI, ISBN, PMID ou link do ArXiv e o Litdock preenche tudo para você.
- Detecção Inteligente: Suporta inputs variados (URLs de PDF, IDs antigos do ArXiv, DOIs camuflados).
- Organização Flexível: Sistema robusto de Coleções (Pastas) e Tags coloridas.
- Visualizador Nativo: Leitor de PDF embutido de alta performance (baseado em PDF.js).
- Foco Total: Modo tela cheia que sobrepõe a interface para leitura sem distrações.
- Dark Mode Real: Inversão inteligente de cores para leitura noturna confortável em PDFs.
- Zoom & Layout: Suporte a scroll contínuo ou paginação slide-por-slide.
Para contornar limites de armazenamento em nuvem e economizar dados:
- Arquivos Pequenos (< 512KB): Sincronizados na nuvem (Supabase Storage). Acessíveis em qualquer lugar.
- Arquivos Grandes (> 512KB): Salvos localmente no dispositivo (IndexedDB). Rápido e sem custo de banda.
- Responsivo: Interface adaptável que fecha menus automaticamente e ajusta layouts.
- Instalável: Adicione à tela inicial do seu celular ou tablet como um app nativo.
- Tema: Suporte completo a Light e Dark Mode (persistente).
O projeto foi construído com as tecnologias mais modernas do ecossistema Vue:
- Core: Vue 3 (Composition API) + Vite
- Linguagem: TypeScript
- Estado: Pinia (Stores modulares)
- UI/Estilo: Tailwind CSS + Shadcn-vue
- Backend as a Service: Supabase (Auth, Database, Storage, Edge Functions)
- Forms: Vee-Validate + Zod
- Utilitários: VueUse + Lucide Icons
- Node.js 20+
- Conta no Supabase
-
Clone o repositório
git clone [https://github.com/seu-usuario/litdock.git](https://github.com/seu-usuario/litdock.git) cd litdock -
Instale as dependências
npm install
-
Configure as Variáveis de Ambiente
# Crie um arquivo .env na raiz VITE_SUPABASE_URL=sua_url_do_supabase VITE_SUPABASE_ANON_KEY=sua_key_anonima -
Rode o servidor de desenvolvimento
npm run dev
Para que o projeto funcione, você precisa configurar o banco de dados.
Execute o script de migração (disponível em /supabase/schema.sql) no SQL Editor do seu projeto
Supabase. Ele criará:
items: Tabela principal com suporte a JSONB para metadados flexíveis.tags&collections: Organização.item_tags: Relacionamento N:N.
Crie um bucket chamado papers:
- Privado (Private bucket).
- MIME Types:
application/pdf. - Policies (RLS): Adicione as políticas para permitir que usuários autenticados façam CRUD
apenas em seus próprios arquivos (pasta
user_id/*).
Para importar metadados do ArXiv sem erros de CORS, faça deploy da função arxiv-proxy localizada
em supabase/functions.
Contribuições são bem-vindas! Se você tem uma ideia de melhoria:
- Faça um Fork do projeto.
- Crie uma Branch para sua Feature (
git checkout -b feature/IncrívelFeature). - Commit suas mudanças (
git commit -m 'Add some IncrívelFeature'). - Push para a Branch (
git push origin feature/IncrívelFeature). - Abra um Pull Request.
Este projeto é distribuído sob a licença Apache 2.0.
Consulte o arquivo LICENSE para mais detalhes.
Nota sobre a Marca: A licença Apache 2.0 concede o uso livre do código fonte, mas NÃO concede permissão de uso da marca "Litdock" ou do logotipo do projeto. Se você realizar um fork deste projeto para fins de distribuição, você deve alterar o nome e a identidade visual.


