Este repositório contém um projeto baseado em FastAPI que se comunica com um banco de dados SQLite.
Certifique-se de ter os seguintes requisitos instalados antes de executar o projeto:
- Python 3.9+
- Virtualenv (opcional, mas recomendado)
Clone este repositório:
git clone https://github.com/Jurupoc/MA-24.2-Backend.git
cd MA-24.2-BackendExistem dois scripts disponíveis para facilitar a configuração e execução do projeto, dependendo do seu sistema operacional.
-
🚀 Windows (setup.bat e run.bat): No Windows, você pode usar so scripts .bat para configurar o ambiente virtual, instalar as dependências e rodar o servidor. Basta dar um duplo clique no arquivo setup.bat e em seguida no run.bat para iniciar tudo automaticamente. A API estará disponível em
http://127.0.0.1:8000. -
🚀 Linux/macOS (setup.sh e run.sh): No Linux/macOS, você pode usar o script .sh. Para rodá-lo, siga os seguintes passos:
- Dar permissão de execução ao script (Caso necessário):
chmod +x <nome_do_scrit>.sh
- Executar o script de setup:
./setup.sh
- Executar o script que inicializa a API:
./run.sh
Após iniciar a API, você pode acessar a documentação interativa gerada automaticamente pelo FastAPI:
- Swagger UI: http://127.0.0.1:8000/docs
- ReDoc: http://127.0.0.1:8000/redoc
Este projeto utiliza SQLite como banco de dados. O arquivo do banco de dados será gerado automaticamente ao rodar a API.
Caso queira gerenciar o banco, você pode utilizar ferramentas como:
- DB Browser for SQLite
sqlite3via terminal:sqlite3 database.db
📁 MA-24.2-Backend/
│── app
│── 📁 crud
│── 📄 __init__.py
│── 📄 emotion_crud.py
│── 📄 user_crud.py
│── 📁 data_structures
│── 📄 __init__.py
│── 📄 emotion_data_structure.py
│── 📄 test_emotion_data_structure.py
│── 📁 databases # Configuração da conexão SQLite
│── 📄 __init__.py
│── 📄 sqlite_database.py
│── 📁 models # Modelos do banco de dados
│── 📄 __init__.py
│── 📄 emotion_record_model.py
│── 📄 user_model.py
│── 📁 schemas # Objetos da API (response e request)
│── 📄 __init__.py
│── 📄 emotion_schema.py
│── 📄 emotion_record_schema.py
│── 📄 user_schema.py
│── 📁 routers # Definição das rotas da API
│── 📄 __init__.py
│── 📄 emotion_router.py
│── 📄 user_router.py
│── 📁 utils # Arquivos utilitarios
│── 📄 __init__.py
│── 📄 constants.py
│── 📄 main.py # Arquivo principal da API
│── 📄 __init__.py
│── 📄 requirements.txt # Dependências do projeto
│── 📄 setup.bat
│── 📄 run.bat
│── 📄 setup.sh
│── 📄 run.sh
Sinta-se à vontade para abrir issues e pull requests para melhorar este projeto.
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.