Uma "Pokédex" para seres reais: animais, plantas e fungos. A plataforma centraliza fotos de observação, pesquisas e artigos de curiosidade. Nesta primeira fase, o foco é na identificação de animais por foto.
- 📸 Tirar ou enviar uma foto de um animal
- 🔍 Identificar a espécie a partir da imagem
- 🗺️ Registrar localização da observação
- 🏆 Sistema de pontos e troféus por clado
- 📊 Ranking global de observadores
- 🔐 Login sem senha por código de email
- 🔑 Login social com Google e Apple
- 📱 Aplicativo mobile para capturar fotos
| Aplicativo | Tecnologia | Descrição |
|---|---|---|
| Servidor | Bun + Hono + Drizzle | API que controla usuários, fotos, espécies e ranking |
| Mobile | React Native + Expo | App para tirar fotos e enviar para identificação |
| Identificador | Python + FastAPI | Serviço de identificação por imagem (mockado por enquanto) |
Mobile → Bun/Hono API → PostgreSQL
↓
Python FastAPI
(identificador)
# Clone o repositório
git clone <url>
cd bioindice
# Inicie o banco de dados e o Mailpit
docker compose up -d
# Instale as dependências
bun install
# Execute as migrações do banco
cd apps/server
bun run db:migrate
# Popule o banco com espécies
bun run db:seed
# Inicie os serviços (em terminais separados)
bun run dev:server
# Mobile
cd apps/mobile
npx expo startAcesse a API em http://localhost:3000.
Copie o arquivo .env.example para .env e preencha:
DATABASE_URL=postgresql://user:password@localhost:5432/bioindice
SERVER_PORT=3000
IDENTIFIER_URL=http://localhost:4001
JWT_SECRET=mude-isso-em-producao
# Email (Mailpit em desenvolvimento)
SMTP_HOST=localhost
SMTP_PORT=1025
# OAuth
GOOGLE_CLIENT_ID=seu-client-id
GOOGLE_CLIENT_SECRET=seu-client-secretO serviço de identificação está mockado nesta fase. Ele retorna uma espécie aleatória do catálogo com uma confiança simulada.
Para conectar o modelo real do TCC:
- Coloque o arquivo
.pthno projeto. - Configure
MODEL_PATHno.envdo serviço. - Substitua a função mock pela inferência real do PyTorch.
- Ganhe 10 pontos para cada espécie distinta observada.
- Desbloqueie troféus por clado (mamíferos, aves, répteis, etc.).
- Suba no ranking global de observadores.
bioindice/
├── apps/
│ ├── server/ # API Bun + Hono
│ └── mobile/ # Aplicativo mobile Expo
│ └── identifier/ # Serviço Python FastAPI
├── packages/
│ └── shared-types/ # Tipos e schemas compartilhados
├── utils/
│ └── training # Script Python para treino do modelo
└── docker-compose.yml