Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vilhalva/api-restful-com-adonisjs
šØāš«PROJETO CRIADO PARA O CURSO DE ADONISJS.
https://github.com/vilhalva/api-restful-com-adonisjs
adonisjs api-rest crud curse database framework javascript nodejs projeto site sqlite
Last synced: 27 days ago
JSON representation
šØāš«PROJETO CRIADO PARA O CURSO DE ADONISJS.
- Host: GitHub
- URL: https://github.com/vilhalva/api-restful-com-adonisjs
- Owner: VILHALVA
- Created: 2024-06-04T22:03:52.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-06-04T22:10:07.000Z (8 months ago)
- Last Synced: 2024-06-04T23:50:01.135Z (8 months ago)
- Topics: adonisjs, api-rest, crud, curse, database, framework, javascript, nodejs, projeto, site, sqlite
- Language: JavaScript
- Homepage:
- Size: 858 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# API RESTFUL COM ADONISJS
šØāš«PROJETO CRIADO PARA O CURSO DE ADONISJS.
## DESCRIĆĆO:
Este projeto Ć© uma API RESTful criada com AdonisJS para gerenciamento de usuĆ”rios, projetos e tarefas. A API permite o registro e login de usuĆ”rios, bem como a criaĆ§Ć£o, leitura, atualizaĆ§Ć£o e exclusĆ£o de projetos e tarefas associadas. A autenticaĆ§Ć£o Ć© feita utilizando JWT (JSON Web Token) para proteger as rotas.## FUNCIONALIDADES:
1. **Registro de UsuƔrios**
- Rota: `POST /api/v1/usuarios/registro`
- DescriĆ§Ć£o: Permite a criaĆ§Ć£o de novos usuĆ”rios no sistema.2. **Login de UsuĆ”rios**
- Rota: `POST /api/v1/usuarios/login`
- DescriĆ§Ć£o: Permite aos usuĆ”rios existentes fazer login e obter um token JWT.3. **Gerenciamento de Projetos**
- Rota: `GET /api/v1/proyectos`
- DescriĆ§Ć£o: Retorna a lista de todos os projetos do usuĆ”rio autenticado.
- Middleware: `auth`
- Rota: `POST /api/v1/proyectos`
- DescriĆ§Ć£o: Cria um novo projeto.
- Middleware: `auth`
- Rota: `PATCH /api/v1/proyectos/:id`
- DescriĆ§Ć£o: Atualiza um projeto existente.
- Middleware: `auth`
- Rota: `DELETE /api/v1/proyectos/:id`
- DescriĆ§Ć£o: Exclui um projeto existente.
- Middleware: `auth`4. **Gerenciamento de Tarefas**
- Rota: `GET /api/v1/proyectos/:id/tareas`
- DescriĆ§Ć£o: Retorna a lista de todas as tarefas associadas a um projeto especĆfico.
- Middleware: `auth`
- Rota: `POST /api/v1/proyectos/:id/tareas`
- DescriĆ§Ć£o: Cria uma nova tarefa para um projeto especĆfico.
- Middleware: `auth`
- Rota: `PATCH /api/v1/tareas/:id`
- DescriĆ§Ć£o: Atualiza uma tarefa existente.
- Middleware: `auth`
- Rota: `DELETE /api/v1/tareas/:id`
- DescriĆ§Ć£o: Exclui uma tarefa existente.
- Middleware: `auth`## EXECUTANDO O PROJETO:
1. **Instalando as DependĆŖncias:**
- Para instalar as dependĆŖncias listadas no arquivo "package.json", vocĆŖ pode usar o comando `npm install` no terminal. Certifique-se de estar no diretĆ³rio `CODIGO` e execute o seguinte comando:
```bash
npm install
```2. **Configure as VariƔveis de Ambiente**
- Crie um arquivo `.env` na raiz do projeto e adicione as seguintes configuraƧƵes:
```env
HOST=127.0.0.1
PORT=3333
NODE_ENV=developmentAPP_NAME=AdonisJs
APP_URL=http://${HOST}:${PORT}CACHE_VIEWS=false
APP_KEY=uma_chave_unica_gerada
DB_CONNECTION=sqlite
DB_HOST=127.0.0.1
DB_PORT=3306
DB_USER=root
DB_PASSWORD=
DB_DATABASE=adonisHASH_DRIVER=bcrypt
```3. **Gere uma APP_KEY**
```bash
adonis key:generate
```4. **Execute as MigraƧƵes**
```bash
adonis migration:run
```6. **Inicie o Servidor:**
- Execute o seguinte comando no Terminal:
```bash
npm start
```## EXEMPLOS DE REQUISIĆĆES:
- **Registro de UsuƔrio**
```bash
curl -X POST http://127.0.0.1:3333/api/v1/usuarios/registro -H "Content-Type: application/json" -d '{"username": "testuser", "email": "[email protected]", "password": "secret"}'
```- **Login de UsuƔrio**
```bash
curl -X POST http://127.0.0.1:3333/api/v1/usuarios/login -H "Content-Type: application/json" -d '{"email": "[email protected]", "password": "secret"}'
```- **Listar Projetos**
```bash
curl -X GET http://127.0.0.1:3333/api/v1/proyectos -H "Authorization: Bearer "
```- **Criar Projeto**
```bash
curl -X POST http://127.0.0.1:3333/api/v1/proyectos -H "Authorization: Bearer " -H "Content-Type: application/json" -d '{"name": "Novo Projeto"}'
```## NĆO SABE?
- Entendemos que para manipular arquivos em `HTML`, `CSS` e outras linguagens relacionadas, Ć© necessĆ”rio possuir conhecimento nessas Ć”reas. Para auxiliar nesse aprendizado, oferecemos cursos gratuitos disponĆveis:
* [CURSO DE JAVASCRIPT](https://github.com/VILHALVA/CURSO-DE-JAVASCRIPT)
* [CURSO DE NODEJS](https://github.com/VILHALVA/CURSO-DE-NODEJS)
* [CURSO DE SQLITE](https://github.com/VILHALVA/CURSO-DE-SQLITE)
* [CONFIRA MAIS CURSOS](https://github.com/VILHALVA?tab=repositories&q=+topic:CURSO)## CREDITOS:
- [PROJETO FEITO PELO VILHALVA](https://github.com/VILHALVA)
- [PROJETO CRIADO PARA O CURSO DE ADONISJS](https://github.com/VILHALVA/CURSO-DE-ADONISJS)