Skip to main content

Welcome to AllMyChats Developer Documentation

AllMyChats is an AI-powered message analysis and categorization tool for chat conversations. This full-stack application helps users make sense of their chat conversations by using AI to automatically categorize and analyze messages from any messaging platform.

What This Project Does​

AllMyChats enables users to:

  • Import chat exports from any messaging platform (WhatsApp, Telegram, etc.)
  • Automatically categorize messages using LLMs (Claude, GPT-4, etc.)
  • Create custom message categories
  • Search and analyze conversations with AI-powered insights
  • Manage their chat history with a user-friendly dashboard

Who This Documentation Is For​

This developer documentation is for:

  • Contributors who want to help build and improve AllMyChats
  • Developers who want to understand the codebase and architecture
  • Maintainers who need to deploy and manage the application
  • Researchers interested in AI-powered message analysis

Getting Started​

Understanding the Codebase​

Reference​

Contributing​

Prerequisites​

Before diving into the code, make sure you have:

  • Node.js 20+ - We use the latest JavaScript features
  • PostgreSQL 14+ - Our database (can run via Docker)
  • Docker & Docker Compose - For local database container
  • Git - For version control
  • npm or pnpm - Package manager

See the Local Setup Guide for detailed installation instructions.

How to Get Help​

Stuck? Here's how to get help:​

  1. Check the Documentation - Search the docs using the search bar (top-left)
  2. Open an Issue - Report bugs or request features on GitHub Issues
  3. Join Discussions - Ask questions and share ideas in GitHub Discussions
  4. Read the Code - The codebase is well-documented - check inline comments and JSDoc

Documentation Structure​

developer/
├── intro.md (you are here)
├── overview.md
├── setup/
│ └── local-setup.md
├── architecture/
│ ├── architecture.md
│ ├── authentication.md
│ ├── design-decisions.md
│ └── file-uploads.md
├── api/
│ ├── intro.md
│ └── trpc-endpoints.md
├── guides/
│ ├── deployment.md
│ └── llm-integration.md
├── standards/
│ ├── commit-conventions.md
│ └── llm-agnostic.md
└── contributing.md

Next Steps​

Ready to start? We recommend following this path:

  1. Read the Local Setup Guide to get the app running
  2. Check the Architecture Overview to understand how it works
  3. Explore the Contributing Guide to make your first contribution

Tech Stack Overview​

AllMyChats is built with modern, developer-friendly technologies:

Key Features for Developers​

  • Type-Safe Full Stack - End-to-end TypeScript with shared types
  • Modern DX - Hot reload, fast refresh, and excellent tooling
  • Scalable Architecture - Layered design with clear separation of concerns
  • LLM Agnostic - Easy to add new AI providers
  • Comprehensive Testing - E2E tests with Playwright
  • Production Ready - Deployment guides and best practices included

Ready to start? Begin with the Local Setup Guide to get AllMyChats running on your machine.