# Ti-Pote 🤖 **Robot animatronique de bureau personnel — modulaire, imprimé en 3D, propulsé par l'IA.** Ti-Pote est un compagnon de bureau intelligent qui combine un hardware modulaire imprimé en 3D avec un backend cloud puissant. Le robot agit comme un client léger : il capture la voix et l'environnement de l'utilisateur, tandis que toute l'intelligence (compréhension du langage, function calling, mémoire conversationnelle) est traitée côté serveur. ## Vision Créer un assistant robotique personnel, open-source et modulaire, capable de : - Converser de manière fluide et naturelle en vocal - Exécuter des actions concrètes (agenda, emails, recherche web, minuteurs…) - Apprendre et se souvenir des préférences de l'utilisateur au fil du temps - S'adapter physiquement grâce à des modules interchangeables (caméra, base mobile, écran…) ## Architecture Ti-Pote suit une **architecture hexagonale** avec une séparation claire : ``` ┌──────────────┐ WebSocket / REST ┌──────────────────────┐ │ Robot │ ◄──────────────────────────► │ Core Backend │ │ (Thin Client)│ │ (NestJS / TypeScript)│ │ - Micro │ │ - STT / TTS │ │ - Speaker │ │ - LLM + Functions │ │ - Caméra │ │ - Services métier │ │ - Wake Word │ │ - Mémoire │ └──────────────┘ └──────────────────────┘ │ ┌─────────┴─────────┐ │ │ PostgreSQL Redis + pgvector ``` Le robot ne fait **aucun traitement lourd** — il capture, streame, et restitue. ## Stack technique | Composant | Technologie | |-----------|------------| | Backend (Core) | TypeScript, NestJS, architecture hexagonale | | Base de données | PostgreSQL + pgvector | | Cache / Sessions | Redis | | Communication | WebSocket (audio), REST (config) | | Frontend / App | React, Next.js | | Robot (embarqué) | Raspberry Pi, OpenWakeWord, ReSpeaker | | STT | Deepgram / Whisper | | LLM | Configurable (OpenAI, Anthropic, etc.) | | TTS | ElevenLabs / Azure TTS | ## Documentation | Document | Description | |----------|-------------| | [Architecture](docs/architecture.md) | Architecture hexagonale, services, flux de données | | [Infrastructure](docs/infrastructure.md) | Déploiement cloud, bases de données, monitoring | | [Fonctionnalités](docs/features.md) | Liste complète des features et cas d'usage | | [Modèle de données](docs/data-model.md) | Schéma BDD, entités, relations | | [Mémoire conversationnelle](docs/memory-system.md) | Système de mémoire à 3 niveaux | | [Hardware](docs/hardware.md) | Propositions de composants et modules | | [Roadmap](docs/roadmap.md) | Phases de développement et priorités | | [Simulateur](docs/simulator.md) | Simulateur web et CLI pour développer sans le robot physique | ## Équipe - **Arthur** — Software & Backend (TypeScript, API, applications) - **Juliann** — Hardware & Design (impression 3D, PCB, Arduino) ## Licence À définir.