Bem-vindo ao Terra-Tech-api, uma API desenvolvida para análise da folha do café, com funcionalidades de autenticação robusta. Este projeto utiliza Python, Django e MariaDB.
- Linguagem: Python 3.9+
- Framework: Django 3.2+
- Banco de Dados: MariaDB
- Autenticação: JSON Web Tokens (JWT) com django-rest-knox
- Registro de Usuário: Permite que novos usuários se registrem fornecendo informações básicas.
- Login: Sistema de login que permite aos usuários acessarem a API com credenciais válidas.
- Autenticação JWT: Utiliza JWT para autenticação segura e gerenciamento de sessões.
- Recuperação de Senha: Permite que os usuários redefinam suas senhas através de e-mail.
- Upload de Imagens: Permite que os usuários façam upload de imagens das folhas de café.
- Processamento de Imagens: Algoritmos para análise das imagens enviadas, identificando características relevantes (doenças, pragas, etc.).
- Relatórios de Análise: Gera relatórios detalhados com os resultados da análise das folhas de café, incluindo sugestões de tratamento.
- Histórico de Análises: Mantém um histórico das análises realizadas por cada usuário, permitindo acesso fácil a dados anteriores.
Certifique-se de ter as seguintes ferramentas instaladas em sua máquina:
- Python 3.9+
- MariaDB
- Virtualenv (opcional, mas recomendado)
-
Clone o repositório:
git clone https://github.com/seu-usuario/Terra-Tech-api.git cd Terra-Tech-api -
Crie e ative um ambiente virtual:
python -m venv venv
source venv/bin/activate # No Windows: venv\Scripts\activate- Instale as dependências:
pip install -r requirements.txt- Configuração do Banco de Dados:
Configure seu banco de dados MariaDB e atualize as configurações no arquivo settings.py:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'nome_do_banco_de_dados',
'USER': 'seu_usuario',
'PASSWORD': 'sua_senha',
'HOST': 'localhost',
'PORT': '3306',
}
}- *Migrações do Banco de Dados:
Aplique as migrações para criar as tabelas no banco de dados:
python manage.py migrate
Criação de Superusuário:- Crie um superusuário para acessar a administração do Django:
python manage.py createsuperuser
- ** Execução do Servidor:** Inicie o servidor de desenvolvimento:
python manage.py runserver
A API estará disponível em http://127.0.0.1:8000/.POST /api-auth/- Inclui URLs de autenticação da Django Rest FrameworkGET /activate/<str:token>/- Ativação de contaPOST /forgot-password/- Recuperação de senhaPOST /verify-token/- Verificação de tokenPOST /reset-password/- Redefinição de senhaPOST /create-user/- Criação de usuárioPUT /update-user/<int:pk>/- Atualização de usuárioPOST /login/- Login de usuárioPOST /logout/- Logout de usuárioPOST /logout-all/- Logout de todos os dispositivos
POST /photos- Upload de fotosDELETE /photos/<int:pk>- Deletar fotoGET /photos/- Listar fotosGET /photos/filter/- Filtrar fotos
POST /- Upload geralGET /download/- Download de arquivos
Sinta-se à vontade para contribuir com o projeto enviando pull requests. Toda ajuda é bem-vinda!