{"id":32790054,"url":"https://github.com/sanztheo/cometi","last_synced_at":"2026-05-14T01:42:04.827Z","repository":{"id":318468283,"uuid":"1071409841","full_name":"sanztheo/Cometi","owner":"sanztheo","description":"Cometi est une extension Chrome innovante qui intègre un assistant IA directement dans votre navigateur. Plus besoin d'ouvrir une nouvelle fenêtre ou un onglet - votre assistant est toujours là, dans le panneau latéral de Chrome, prêt à vous aider.","archived":false,"fork":false,"pushed_at":"2025-10-23T16:29:23.000Z","size":16579,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-26T20:50:11.970Z","etag":null,"topics":["ai","chrome","extension","gpt","modele","web"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sanztheo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-07T10:06:21.000Z","updated_at":"2025-10-23T16:29:53.000Z","dependencies_parsed_at":"2025-10-30T09:01:03.148Z","dependency_job_id":null,"html_url":"https://github.com/sanztheo/Cometi","commit_stats":null,"previous_names":["sanzcloud-web/cometi","sanztheo/cometi"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sanztheo/Cometi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanztheo%2FCometi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanztheo%2FCometi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanztheo%2FCometi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanztheo%2FCometi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sanztheo","download_url":"https://codeload.github.com/sanztheo/Cometi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanztheo%2FCometi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":282807274,"owners_count":26730415,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-05T02:00:05.946Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","chrome","extension","gpt","modele","web"],"created_at":"2025-11-05T11:01:27.301Z","updated_at":"2025-11-05T11:03:03.720Z","avatar_url":"https://github.com/sanztheo.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🌟 Cometi - Votre Assistant IA dans Chrome\n\n**Chattez avec l'IA, résumez le web, boostez votre productivité**\n\n---\n\n## ✨ Qu'est-ce que Cometi ?\n\nCometi est une **extension Chrome innovante** qui intègre un assistant IA directement dans votre navigateur. Plus besoin d'ouvrir une nouvelle fenêtre ou un onglet - votre assistant est toujours là, dans le panneau latéral de Chrome, prêt à vous aider.\n\n### 🚀 Fonctionnalités Principales\n\n- **💬 Chat IA Intelligent** - Discutez avec GPT-4 directement dans Chrome\n- **📄 Résumé de Pages** - Obtenez des résumés instantanés des articles web\n- **🎯 Suggestions Contextuelles** - Recevez des suggestions intelligentes basées sur votre navigation\n- **📚 Historique des Conversations** - Vos discussions sont sauvegardées et organisées\n- **🔍 Recherche Sémantique** - Trouvez des informations dans vos documents avec les embeddings\n- **⚡ Interface Ultra-Rapide** - Conçue pour le side panel de Chrome avec React\n\n---\n\n## 🛠️ Stack Technologique\n\n### Frontend (Extension Chrome)\n- **React 18** - Interface utilisateur moderne et réactive\n- **TypeScript** - Développement type-safe\n- **Tailwind CSS** - Styling utilitaire et responsive\n- **Vite** - Build tool ultra-rapide\n- **Chrome Extensions Manifest V3** - API moderne de Chrome\n\n### Backend\n- **Node.js** - Runtime JavaScript serverless\n- **TypeScript** - Code type-safe et maintenable\n- **Prisma** - ORM moderne avec PostgreSQL\n- **OpenAI API** - Intégration GPT-4 et embeddings\n- **Vercel** - Déploiement serverless instantané\n\n### Base de Données\n- **PostgreSQL (Neon)** - Base de données cloud performante\n- **Embeddings Vectoriels** - Recherche sémantique avancée\n\n---\n\n## 📦 Installation et Configuration\n\n### Prérequis\n- Node.js 18+\n- Clé API OpenAI\n- Chrome/Firefox récent\n\n### 1. Configuration du Backend\n\n```bash\ncd backend-cometi\n\n# Installation des dépendances\nnpm install\n\n# Configuration des variables d'environnement\ncp .env.example .env\n```\n\n**Variables d'environnement requises :**\n```env\nOPENAI_API_KEY=votre_clé_openai\nOPENAI_MODEL=gpt-4o-mini\nOPENAI_SUGGESTIONS_MODEL=gpt-4.1-nano\nORIGIN=https://votre-extension-id.chromiumapp.org\n```\n\n**Pour activer les embeddings (optionnel) :**\n```env\nDB_EMBEDDING=postgresql://user:pass@host/db?sslmode=require\nEMBEDDING_MODEL=text-embedding-3-small\nRESUME_TOP_K=6\nRESUME_QUERY=RESUME\n```\n\n### 2. Déploiement Backend (Vercel)\n\n```bash\n# Installation du CLI Vercel\nnpm i -g vercel\n\n# Déploiement\nvercel\n\n# Configuration des variables d'environnement dans le dashboard Vercel\n```\n\n### 3. Configuration de l'Extension\n\n```bash\ncd cometi\n\n# Installation des dépendances\nnpm install\n\n# Configuration\ncp .env.example .env\n```\n\n**Variables d'environnement :**\n```env\nVITE_COMETI_API_BASE=https://votre-projet.vercel.app/api\n```\n\n### 4. Installation de l'Extension\n\n```bash\n# Build de l'extension\nnpm run build\n\n# Chargement dans Chrome\n# 1. Ouvrez chrome://extensions/\n# 2. Activez \"Mode développeur\"\n# 3. Cliquez \"Charger l'extension non empaquetée\"\n# 4. Sélectionnez le dossier cometi/dist/\n```\n\n---\n\n## 🎮 Utilisation\n\n### Chat IA\n1. Cliquez sur l'icône Cometi dans Chrome\n2. Le panneau latéral s'ouvre avec l'interface de chat\n3. Tapez votre message ou utilisez les suggestions contextuelles\n4. Appuyez sur Entrée pour envoyer\n\n### Commandes Slash\n- **`/resume`** - Résume la page actuellement active\n\n### Suggestions Intelligentes\nCometi analyse le contexte de votre navigation et propose des suggestions pertinentes :\n- Résumé des articles\n- Analyse de contenu\n- Questions de recherche\n- Actions contextuelles\n\n### Historique\n- Vos conversations sont automatiquement sauvegardées\n- Accédez à l'historique via la sidebar\n- Reprenez une conversation à tout moment\n\n---\n\n## 🔧 Développement\n\n### Développement Frontend\n```bash\ncd cometi\nnpm run dev\n# Ouvre http://localhost:5173/sidepanel.html\n```\n\n### Développement Backend\n```bash\ncd backend-cometi\nnpm run dev\n# API disponible sur http://localhost:3000\n```\n\n### Tests en Mode Développement\nLe mode dev permet de tester l'UI directement dans le navigateur avec hot-reload, tout en communiquant avec le backend.\n\n---\n\n## 🌐 API Endpoints\n\n### Chat\n- `POST /api/chat` - Complétion de chat\n- `POST /api/chat-stream` - Streaming de chat SSE\n- `GET /api/chats` - Liste des conversations\n- `POST /api/chats` - Créer une conversation\n- `GET /api/chats/:id` - Récupérer une conversation\n\n### Resume\n- `POST /api/resume` - Résumé de page web\n- Support extraction PDF et HTML\n- Recherche sémantique avec embeddings\n\n### Suggestions\n- `POST /api/suggestions` - Suggestions contextuelles\n- Analyse du domaine et du contexte\n- Support multilingue\n\n---\n\n## 🎨 Personnalisation\n\n### Thèmes et Styles\nL'interface utilise Tailwind CSS et peut être facilement personnalisée via les classes CSS.\n\n### Commandes Slash\nAjoutez de nouvelles commandes dans `cometi/src/sidepanel/commands/index.ts` :\n\n```typescript\nexport const SLASH_COMMANDS: SlashCommand[] = [\n  {\n    id: 'ma-commande',\n    label: '/ma-commande',\n    value: '/ma-commande',\n    description: 'Description de ma commande'\n  }\n];\n```\n\n---\n\n## 🚀 Déploiement Production\n\n### Backend (Vercel)\n1. Connectez votre repo GitHub à Vercel\n2. Configurez les variables d'environnement\n3. Déployez automatiquement sur chaque push\n\n### Extension (Chrome Web Store)\n1. Créez un compte développeur Chrome Web Store\n2. Packagez l'extension avec `npm run build`\n3. Soumettez le dossier `dist/` pour review\n\n---\n\n## 🤝 Contribution\n\n1. Fork le projet\n2. Créez votre branche feature (`git checkout -b feature/AmazingFeature`)\n3. Committez vos changements (`git commit -m 'Add some AmazingFeature'`)\n4. Push vers la branche (`git push origin feature/AmazingFeature`)\n5. Ouvrez une Pull Request\n\n---\n\n## 📄 License\n\nCe projet est sous licence MIT - voir le fichier [LICENSE](LICENSE) pour plus de détails.\n\n\n---\n\n## ⭐ Show Your Support\n\nSi Cometi vous aide dans votre quotidien, donnez-lui une ⭐️ !\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eFait avec ❤️\u003c/strong\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsanztheo%2Fcometi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsanztheo%2Fcometi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsanztheo%2Fcometi/lists"}