Introdução
Cookest — plataforma de planeamento de refeições com inteligência artificial
Cookest
O Cookest é uma plataforma completa de planeamento de refeições e gestão de cozinha desenvolvida como projeto de escola (PAP). O backend é uma API REST em Rust, o cliente é uma aplicação Flutter para iOS e Android, e um pipeline em Python alimenta a base de dados de receitas e ingredientes.
O que está nesta documentação
API Backend
Rust · Actix-Web 4 · SeaORM — autenticação, endpoints, esquema da base de dados, pipeline de PDF
Aplicação Móvel
Flutter · Riverpod · GoRouter — ecrãs, gestão de estado, sistema de design
Pipeline ETL
Python — ingestão de receitas e dados nutricionais do USDA e TheMealDB
Arquitetura
Como os três componentes se ligam e comunicam
Guia do Utilizador
Como usar o Cookest como utilizador final
Estrutura do projeto
PAP/
api/ — Backend Rust (Actix-Web 4, SeaORM, PostgreSQL)
UI/ — Aplicação Flutter (Riverpod, GoRouter)
etl/ — Pipeline de dados em Python
dataset/ — Dataset CSV em bruto (MM-Food-100K)
docs/ — Este siteTecnologias
| Camada | Stack |
|---|---|
| API | Rust · Actix-Web 4 · SeaORM · PostgreSQL 15 |
| Autenticação | Argon2id · JWT acesso + refresh · cookies HttpOnly |
| IA | Ollama (llava para visão PDF, llama3.2 para chat) |
| Pagamentos | Stripe — webhooks + planos Free / Pro / Family |
| Móvel | Flutter 3 · Dart 3 · Riverpod · GoRouter |
| Dados | Python · psycopg2 · USDA FoodData Central · TheMealDB |