cake-erp-challenge/README.md

27 lines
1.2 KiB
Markdown
Raw Normal View History

2021-10-14 15:02:23 -04:00
# Rodando
As dependências (Python) do projeto estão listadas em `requirements.txt`.
2021-10-17 18:24:03 -04:00
2021-10-17 18:23:00 -04:00
Crie o banco de dados:
```python3 create_db.py```
2021-10-17 18:24:03 -04:00
2021-10-17 18:23:00 -04:00
Depois, no diretório `api`:
```flask run```
2021-10-17 18:24:03 -04:00
Por padrão o servidor tem sua interface em `http://localhost:5000`.
2021-10-14 15:02:23 -04:00
# Desenvolvimento
- Comecei a desenvolver o projeto em Rust, mas sofri muito com a linguagem, perdendo uma tarde inteira lutando com o *borrow checker* e o framework Rocket. Concluí que preciso aprender melhor as mecânicas de *ownership* do Rust, e decidi fazer em Python (framework Flask) ao invés.
- Pensei em fazer em C# ou C++, mas seria obrigado a usar um sistema de build como cmake, que demoraria bastante tempo pra organizar. Isso porque uso Linux, e não posso garantir a portabilidade das `Makefile`s pra outras plataformas.
2021-10-17 20:21:28 -04:00
- Comecei fazendo com SQL bruto, mas aprendi como funciona a biblioteca de ORM SQLAlchemy, e passei a usá-la.
# Endpoints
Os endpoints que já estão funcionando marcados:
- [X] GET /trainer
- [X] POST /trainer
- [X] POST /trainer/authenticate
- [X] GET /trainer/{trainerId}
- [] GET /trainer/{trainerId}/pokemon
- [] POST /trainer/{trainerId}/pokemon
- [] GET /trainer/{trainerId}/pokemon/{pokemonId}
- [] DELETE /trainer/{trainerId}/pokemon/{pokemonId}