- Saídas em JSON, XML e CSV
- Versionamentode API (v1,v2,...)
- Autenticação com Token
- Log de controle de armazenamento
- Paginação
- Throttle/Rate Limiting
- Filtros e ordenação
- Cache
- API das bases: radares, contagem, trajetos
- Navegação com Mapa
- Interação com mapa para saber endereços e fluxo de contagem de veículos ao longo do dia
- Filtros dinâmicos de Lote, quantidade de faixasm velocidade
- Saiba pontos de congestionamento, vias com maior fluxo e radares com maiores e menores índices de infração
- Cadastramento de usuário
- Permissões e Grupos de acesso (administrador, outros)
- Auto Cadastramento
- Protocolo HTTPS
- Agnóstica a plataforma, multiplataforma, roda em windows, linux e Mac
- Serviço funciona em banco SQL (postgres, mysql ou sqlite) ou NoSQL (mongoDB)
Slides - https://docs.google.com/presentation/d/1Wh3uLDF66x8tkwyF42uuZY1rVi9e6LFNCizsGW94UvQ/edit?usp=sharing
API - http://radartona.portalretina.com/docs/
Front CRUD - http://radartona.portalretina.com/admin/
Front Dashboard - http://radartona.portalretina.com:8050/
Usuário
: admin
Senha
: admin
Essas instruções fornecerão uma cópia do projeto em execução na sua máquina local para fins de desenvolvimento e teste. Consulte implantação para obter notas sobre como implantar o projeto em um sistema em ambiente de produção.
- Docker
- docker-compose
Install Docker and Docker compose
Clone o repositório e entre no seu diretório
git clone https://github.com/guica/api_dados_radar.git
cd api_dados_radar
Crie um arquivo .env:
touch .env
Construa a imagem em Docker, suba o container e entre nele
sudo docker-compose build
sudo docker-compose up -d
sudo docker-compose exec web bash
Crie um super-usuário:
python manage.py createsuperuser
Entre em http://localhost/admin e faça seu login. Você pode usar essa interface para navegar e explorar os dados.
API - http://localhost/docs/
Front CRUD - http://localhost/admin/
Front Dashboard - http://localhost:8050/
MTV (Model, View e Template) estrutura de componentização no framework Django
- Melhorar Segurança (integrar OAuth 2.0, HTTPS, Logs de uso e Throttle)
- Logs (check)
- throttle (check)
- OAuth 2.0
- HTTPS
- Testes Automáticos
- Melhorar Escalabilidade (testes de estresse na solução)
- Estruturação de dados (descrições dos parâmetros, rever estrutura de dados e sanity checks)
- Python 2.7
- Django 1.11.8
- Django Rest Framework
- Docker
- Docker-Compose
- Celery
- Nginx
- Postgres
- Sqlite3
- Redis
- Dash
Este projeto está licenciado sob a licença MIT - consulte o arquivo LICENSE.md para mais detalhes.