https://github.com/andrepfdev/api-laravel10
https://github.com/andrepfdev/api-laravel10
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/andrepfdev/api-laravel10
- Owner: andrepfdev
- Created: 2023-07-09T21:23:33.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2023-10-23T21:12:36.000Z (over 2 years ago)
- Last Synced: 2023-10-24T21:36:42.681Z (over 2 years ago)
- Language: PHP
- Size: 101 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# API Laravel 10
## API para estudos
Olá, sou estudante de programação e este é meu primeiro contato com API e também com Framework. Escolhi o Laravel 10 por ser a versão mais atual no momento dos meus estudos.
## API de Troca de Livros
Esta é uma API Laravel para uma plataforma de troca de livros. A API permite que os usuários realizem várias operações relacionadas à troca de livros, como listar livros disponíveis, solicitar trocas e gerenciar suas próprias bibliotecas.
## Configuração
Neste caso, estou usando Windows 11 sem Docker
1. Certifique-se de ter o PHP 8.2 (ou superior) instalado na sua máquina.
2. Clone este repositório: `git clone https://github.com/andrepfdev/api-laravel10.git`
3. Instale as dependências do Composer: `composer install`
4. Configure o arquivo `.env` para usar banco de dados SQLite. Instruções abaixo.
5. Execute as migrações do banco de dados: `php artisan migrate`
6. Inicie o servidor de desenvolvimento: `php artisan serve`
Link para Composer: https://getcomposer.org/download/
### Banco de dados SQLite3
Para baixar e usar o SQLite3: https://www.sqlite.org/
Outra ferramenta útil usada no processo: https://sqlitestudio.pl/
No Windows a instalação do SQLite pode ser feita desta forma: https://www.alura.com.br/artigos/sqlite-da-instalacao-ate-primeira-tabela
No arquivo .env configure o banco de dados:
DB_CONNECTION=sqlite
Pode inclusive apagar as outras constantes do banco de dados. Fica a seu critério.
Caso não deseje usar SQLite como banco de dados, pode usar as configurações originais de `.env.example`:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
Caso acontece algum erro ao gerar o banco de dados, cetifique-se de instalar o pacote:
sudo apt install php-sqlite3
## Endpoints
A API possui os seguintes endpoints principais:
### `GET /users`
Retorna uma lista com todos os usuários cadastrados.
Exemplo de resposta:
{
"data": [
{
"identify": 1,
"name": "Seu Jorge",
"email": "mrjorge@gmail.com",
"created": "09-07-2023 14:33:54"
}
]
}
### `GET /books`
Retorna uma lista de todos os livros disponíveis para troca.
#### Parâmetros de consulta opcionais:
Até o momento todos estão configurados para pesquisar pelo ID
Exemplo de resposta:
{
"data": [
{
"id": 1,
"title": "A Republica",
"author": "Platão",
"created_at": "09-07-2023 19:36:53",
"updated_at": "09-07-2023 19:36:53"
},
{
"id": 2,
"title": "Bíblia",
"author": "Espírito Santo",
"created_at": "09-07-2023 14:54:04",
"updated_at": "09-07-2023 19:36:53"
}
]
}
## Contribuição
Se você quiser contribuir para este projeto, sinta-se à vontade para abrir uma **issue** ou enviar uma solicitação de **pull**.