Skip to content

Dedo-Finger2/md-notes-api

Repository files navigation

📝 MD Notes

cover

📝 Veja suas anotações em qualquer lugar e a qualquer momento 📝


GitHub license GitHub latest commit

Este projeto é uma API de um projeto que, com auxilio da API REST oficial do GitHub, permite aos usuários acessar e gerenciar suas anotações em Markdown armazenadas em qualquer repositório do usuário de forma prática e eficiente.

O projeto é ideal para usuários que utilizam o GitHub como um repositório de backups e sincronização para anotações, como os usuários do Obsidian ou LogSeq. Ambos apps com funções de sincronização de arquivos pagas, porém com plugins que tornam a sincronização através do GitHub possível.

Através do MD Notes, você pode acessar suas anotações de qualquer dispositivo, seja um smartphone ou outro computador. Com simplicidade e facilidade uso.


🎯 Objetivo

O objetivo principal do MD Notes é oferecer uma maneira intuitiva de acessar e, brevemente, gerenciar suas anotações armazenadas em repositórios do GitHub, podendo então acessar tais anotações escritas em markdown através de qualquer dispositivo de forma gratuita e facilitadora.


😓 Dor Enfrentada

Muitos usuários enfrentam limitações com softwares de anotações em markdown que possuem um plano pago para dar acesso a funcionalidade de sincronização entre dispositivos. O MD Notes visa resolver este problema ao proporcionar uma integração direta com o GitHub, atuando como um micro-serviço entre o GitHub e o seu software de anotações favorito, permitindo a leitura e gestão dos arquivos Markdown de maneira descomplicada.


📋 Requisitos

Funcionais

  • Registro de Dados: Permitir o registro dos dados necessários para o uso da API do GitHub.
  • Listagem de Arquivos: Exibir a lista de arquivos presentes no repositório do GitHub.
  • Listagem de Pastas: Exibir a lista de pastas presentes no repositório do GitHub.
  • Navegação em Pastas: Permitir o acesso e visualização de arquivos dentro das pastas.
  • Acesso a Arquivos Markdown: Exibir o conteúdo dos arquivos Markdown (apenas leitura).

Não Funcionais

  • Segurança dos Dados: Armazenar dados do usuário em cookies HTTP Only para garantir segurança.
  • Arquitetura Escalável: Construir a aplicação com uma arquitetura que permita futuras expansões e melhorias.
  • Documentação Completa: Garantir que a API esteja totalmente documentada para fácil integração e uso.

Regras de Negócio

  • Validação de Dados: Rejeitar requisições com dados inválidos para a API do GitHub.
  • Descriptografia: Garantir que o conteúdo dos arquivos Markdown seja descriptografado corretamente para exibição.
  • Suporte Exclusivo: Suportar apenas arquivos Markdown.

Arquitetura do projeto

COMING SOON...


🖥️ Tecnologias usadas

Tecnologia Uso
JavaScript Linguagem usada
NodeJS Runtime JS usada
Express Servidor HTTP
Valibot Validação de alguns dados
Eslint Formatação e padronização de código
Prettier Formatação e padronização de código
Husky Execução de comandos antes de commits
Lint-Staged Execução de scripts somente em arquivos staged

🗎 Documentação da API

A documentação da API pode ser acessada através da rota /api/docs na porta padrão do projeto (3000).

OBS: A documentação está na versão inicial, sendo assim será atualizada após a refatoração do código.

api-docs


📱 Contato

About

Veja sua anotações de qualquer dispositivo usando a API REST do GitHub.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published