{"id":18778464,"url":"https://github.com/will-santosx/crud-auth-node","last_synced_at":"2026-04-10T15:43:37.115Z","repository":{"id":249465899,"uuid":"831586985","full_name":"will-santosx/crud-auth-node","owner":"will-santosx","description":"API para um aplicativo de anotações, permitindo aos usuários registrar, gerenciar e acessar suas anotações de forma segura e eficiente.","archived":false,"fork":false,"pushed_at":"2024-07-27T23:59:01.000Z","size":36,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-29T10:16:49.876Z","etag":null,"topics":["authentication","backend","express","javascript","jsonwebtoken","nodejs","typescript"],"latest_commit_sha":null,"homepage":"https://crud-auth-node-7h9w.onrender.com/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/will-santosx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-21T02:35:17.000Z","updated_at":"2024-07-27T23:59:03.000Z","dependencies_parsed_at":"2024-11-07T20:16:25.428Z","dependency_job_id":"63eb27ed-eae2-4edc-ae1b-7f6c84d9e448","html_url":"https://github.com/will-santosx/crud-auth-node","commit_stats":null,"previous_names":["will-santosx/crud-auth-node"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/will-santosx%2Fcrud-auth-node","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/will-santosx%2Fcrud-auth-node/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/will-santosx%2Fcrud-auth-node/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/will-santosx%2Fcrud-auth-node/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/will-santosx","download_url":"https://codeload.github.com/will-santosx/crud-auth-node/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239690075,"owners_count":19681035,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["authentication","backend","express","javascript","jsonwebtoken","nodejs","typescript"],"created_at":"2024-11-07T20:16:21.540Z","updated_at":"2025-12-17T11:30:17.381Z","avatar_url":"https://github.com/will-santosx.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Quick Notes - CRUD API\nEste projeto é uma API para o aplicativo web [Quick Notes](https://github.com/will-santosx/quick-notes), que inclui autenticação de usuário com JWT e um CRUD para anotações. A API foi desenvolvida utilizando Node.js, TypeScript, Express e Prisma.\n\n## Funcionalidades\n\n- Registro de usuário\n- Login de usuário\n- Criação, leitura, atualização e exclusão de anotações\n- Autenticação e autorização usando JWT\n\n## Tecnologias Utilizadas\n\n- Node.js\n- TypeScript\n- Express\n- Prisma\n- SQLite\n- bcryptjs\n- jsonwebtoken\n- dotenv\n\n## Instalação\n\n1. Clone o repositório:\n   ```sh\n   git clone https://github.com/will-santosx/crud-auth-node.git\n   cd crud-auth-node\n   ```\n2. Instale as dependências:\n   ```sh\n   npm install\n   ```\n3. Configure as variáveis de ambiente:\n\n    - Crie um arquivo .env na raiz do projeto e adicione as seguintes variáveis:\n      \n      ```sh\n      DATABASE_URL=\"your_db_url\"\n      JWT_SECRET=\"your_secret_key\"\n      PORT=5000\n      ```\n4. Execute as migrações do Prisma para configurar o banco de dados:\n    ```sh\n    npx prisma migrate dev --name init\n    npx prisma generate\n    ```\n\n## Uso\n\n1. Inicie o servidor:\n    ```sh\n    npm run dev\n    ```\n2. A API estará disponível em http://localhost:5000.\n\n## Endpoints\n\n  ### Autenticação\n\n  1. __POST /api/auth/register__ ; Registra um novo usuário.\n  ```\n  Request Body:\n   \n  {\n    \"name\": \"John Doe\",\n    \"email\": \"john.doe@example.com\",\n    \"password\": \"password123\"\n  }\n  ```\n  \n  2. __POST /api/auth/login__ ; Faz login de um usuário; Requer token JWT no header de Authorization.\n   ```\n  Request Body:\n  \t\n  {\n    \"title\": \"Minha Anotação\",\n    \"content\": { \"text\": \"Conteúdo da anotação\" },\n    \"color\": \"blue | red | green | purple\"\n  }\n  ```\n\n### Anotações\n\n  1. __GET /api/notes/__ ; Retorna todas as anotações do usuário autenticado ; Requer token JWT no header de Authorization.\n  \n  2. __PUT /api/notes/__ ; Atualiza uma anotação existente ;\n  ```\n  Request Body (um ou mais campos podem ser enviados):\n  \t\n  {\n    \"title\": \"Novo Título\",\n    \"content\": { \"text\": \"Novo conteúdo\" },\n    \"color\": \"#00ff00\"\n  }\n  ```\n  \n  3. __DELETE /api/notes/__ ; Deleta uma anotação existente ; Requer token JWT no header de Authorization.\n\n## Segurança\n\n  - Senhas são armazenadas de forma segura utilizando hash (bcrypt).\n  - JWT é utilizado para autenticação e autorização.\n  - Middleware de autenticação verifica a validade do token JWT antes de permitir acesso às rotas protegidas.\n\n## Licença\n\nEste projeto está licenciado sob a licença MIT.\n\n   \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwill-santosx%2Fcrud-auth-node","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwill-santosx%2Fcrud-auth-node","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwill-santosx%2Fcrud-auth-node/lists"}