- README.md (English) links to README.fr.md and GUIDE.en.md - README.fr.md (French) links to README.md and GUIDE.md
6.1 KiB
Memento
Une application de prise de notes intelligente et powered by IA. Comme Google Keep, mais avec des notebooks, la recherche semantique, des agents IA et un serveur MCP integre.
Read in English | Guide complet
Fonctionnalites
Notes et organisation
- Notes texte, checklists et Markdown (avec LaTeX/KaTeX)
- Notebooks avec labels contextuels
- Grille masonry responsive avec drag-and-drop
- Upload d'images, partage de notes, archive et corbeille
- 10 themes pastel + mode sombre
IA et automatisation
- Recherche semantique par embeddings
- Generation automatique de tags et suggestions de titre
- Agents IA configurables avec instructions personnalisees
- Conversations chat IA persistees
- Memory Echo - decouverte de connexions entre notes
- Organisation automatique par batch et labels intelligents
- Resumes de notebooks generes par IA
- Workflows visuels
Integrations
- Serveur MCP avec 37 outils - connecter Claude Desktop, N8N, ou tout client MCP
- API REST pour integrations personnalisees
- Support de flux RSS
- Tableau blanc Canvas/Lab (Excalidraw)
Plateforme
- 15 langues (FR, EN, AR, DE, ES, FA, HI, IT, JA, KO, NL, PL, PT, RU, ZH)
- Progressive Web App (PWA)
- Systeme de rappels avec recurrence
- Export/import de donnees (JSON)
- Panneau admin pour providers IA, SMTP et parametres
Demarrage rapide
Docker (recommande)
git clone https://github.com/yourusername/Momento.git
cd Momento
cp .env.docker.example .env.docker
# Modifier ces deux valeurs obligatoires :
# NEXTAUTH_URL="http://VOTRE_IP_SERVEUR:3000"
# NEXTAUTH_SECRET="generer avec : openssl rand -base64 32"
docker compose up -d
Ouvrir http://localhost:3000 - le premier utilisateur inscrit devient admin.
Developpement local
git clone https://github.com/yourusername/Momento.git
cd Momento/memento-note
cp .env.example .env
# Editer .env avec DATABASE_URL, NEXTAUTH_SECRET, etc.
npm install --legacy-peer-deps
npx prisma migrate dev
npm run dev
Providers IA
Memento supporte trois providers IA, configurables independamment pour les tags, embeddings et chat :
| Provider | Type | Configuration |
|---|---|---|
| Ollama | Local, gratuit | docker compose --profile ollama up -d |
| OpenAI | Cloud, payant | Definir OPENAI_API_KEY |
| Custom | OpenRouter, Groq, Together, Mistral... | Definir CUSTOM_OPENAI_API_KEY + CUSTOM_OPENAI_BASE_URL |
Exemple avec Ollama :
# .env.docker
AI_PROVIDER_TAGS=ollama
AI_PROVIDER_EMBEDDING=ollama
OLLAMA_BASE_URL="http://ollama:11434"
AI_MODEL_TAGS="granite4:latest"
AI_MODEL_EMBEDDING="embeddinggemma:latest"
Tous les parametres IA sont aussi configurables depuis le panneau admin /admin/settings.
Serveur MCP
Connecter des agents IA a vos notes via le Model Context Protocol.
// claude_desktop_config.json
{
"mcpServers": {
"memento": {
"command": "docker",
"args": ["exec", "-i", "memento-mcp", "node", "index.js"]
}
}
}
37 outils disponibles - CRUD notes, notebooks, labels, operations IA (generation de tags, suggestions de titre, memory echo, batch organize), rappels et gestion des cles API.
Pour N8N ou clients HTTP, utiliser le mode HTTP Streamable : http://localhost:3001/mcp
Stack technique
| Couche | Technologie |
|---|---|
| Framework | Next.js 16, React 19, TypeScript 5 |
| Style | Tailwind CSS 4, shadcn/ui |
| Base de donnees | PostgreSQL 16, Prisma ORM 5 |
| Auth | NextAuth.js v5 |
| IA | Vercel AI SDK (OpenAI, Ollama, Custom) |
| MCP | @modelcontextprotocol/sdk |
| Nodemailer (SMTP) / Resend |
Documentation
Pour le guide complet d'installation, deploiement et configuration, voir GUIDE.md.
Structure du projet
Momento/
├── docker-compose.yml # Orchestration multi-conteneurs
├── .env.docker.example # Template environnement Docker
├── memento-note/ # Application Next.js
│ ├── app/ # App Router (pages, actions, API)
│ ├── components/ # Composants React
│ ├── lib/ # Logique metier (IA, DB, mail, i18n)
│ ├── prisma/ # Schema + migrations
│ ├── locales/ # 15 fichiers i18n
│ └── Dockerfile # Build multi-stage
├── mcp-server/ # Serveur MCP (37 outils)
│ ├── index.js # Mode stdio
│ ├── index-sse.js # Mode HTTP Streamable
│ ├── tools.js # Definitions des outils
│ └── Dockerfile # Build conteneur
└── n8n-memento-workflow.json # Workflow N8N preconfigure
Variables d'environnement
Voir .env.docker.example pour la liste complete. Variables cles :
| Variable | Requis | Description |
|---|---|---|
NEXTAUTH_URL |
Oui | URL publique de l'app |
NEXTAUTH_SECRET |
Oui | Secret JWT (openssl rand -base64 32) |
POSTGRES_PASSWORD |
Rec. | Mot de passe PostgreSQL (defaut : memento) |
AI_PROVIDER_TAGS |
Non | Provider IA pour tags : ollama, openai, custom |
OPENAI_API_KEY |
Si OpenAI | Cle API OpenAI |
Contribuer
Les contributions sont bienvenues !
- Rapports de bugs : Ouvrir une issue
- Idees de fonctionnalites : Lancer une discussion
- Pull requests : Fork, creer une branche, et soumettre une PR
Soutenir
Si Memento vous est utile, pensez a soutenir son developpement :
- Ko-fi - Soutien ponctuel ou mensuel
- GitHub Sponsors - Parrainage recurrent
- Star le repo - C'est gratuit et ca aide la visibilite
Licence
Apache License 2.0 avec Commons Clause Restriction.
Usage personnel, educatif et non-commercial libre. Usage commercial soumis a autorisation ecrite de l'auteur. Voir LICENSE pour les details.