Skip to content

ArsalanKaleem/Documentum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Documentum

AI-powered documentation, project memory, and seamless AI handoffs. 🌐 Live Demo: documentum-app.web.app

Flutter Dart License Stars Last Commit Live Demo Documentum is a cross-platform Flutter application (desktop + web) that analyses your codebase and generates production-ready documentation automatically β€” README, API reference, architecture guide, installation instructions, contributing guidelines, changelog, and smart recommendations β€” all powered by your choice of free-tier AI provider.


✨ Features

Feature Description
Multi-Agent Documentation Seven parallel AI agents each produce a dedicated document (README, API, Architecture, Installation, Contributing, Changelog, Recommendations).
AI Provider Agnostic Plug in any of 7 free-tier providers: Gemini, Groq, OpenRouter, NVIDIA NIM, Cerebras, SambaNova, or Hugging Face.
Per-Agent Provider Routing Assign a different model to each agent β€” e.g. run the Architecture agent on Gemini and the Changelog agent on Groq.
Project Brain Persistent semantic memory of your project that powers context-aware chat.
AI Chat Ask anything about your codebase using the built-in streaming chat interface.
Project Analysis Automatic stack detection β€” language, framework, database, auth system, build system, architecture pattern, and more.
AI Coordination Visual dashboard of all running agents with live status and retry tracking.
History Full session history with timestamps and per-run document snapshots.
Context File Export Export the full project context as a structured file for use in external AI tools.
Semantic Embeddings Vector-based project indexing for smarter chat responses (via Gemini's text-embedding-004).
Dark / Light / System Theme Full Material You theming with per-component overrides.

πŸ–ΌοΈ Screenshots

Dashboard Projects
Dashboard Projects
AI Coordination Documentation
Coordination Documentation
Project Brain Analysis
Project Brain Analysis
Settings About
Settings About

πŸ—οΈ Architecture

lib/
β”œβ”€β”€ app.dart                    # App root (MaterialApp.router)
β”œβ”€β”€ main.dart                   # Entry point
β”œβ”€β”€ core/
β”‚   β”œβ”€β”€ constants/              # App-wide compile-time constants
β”‚   β”œβ”€β”€ errors/                 # Failure types
β”‚   β”œβ”€β”€ router/                 # go_router configuration & destinations
β”‚   β”œβ”€β”€ theme/                  # Color scheme, typography, component themes, tokens
β”‚   └── utils/                  # Cancellation tokens, path safety
β”œβ”€β”€ models/                     # Freezed data models (+ generated .freezed/.g files)
β”œβ”€β”€ providers/                  # Riverpod providers (settings, chat, docs, projects…)
β”œβ”€β”€ repositories/               # Settings & project persistence
β”œβ”€β”€ screens/
β”‚   β”œβ”€β”€ about/
β”‚   β”œβ”€β”€ analysis/
β”‚   β”œβ”€β”€ brain/
β”‚   β”œβ”€β”€ chat/
β”‚   β”œβ”€β”€ coordination/
β”‚   β”œβ”€β”€ dashboard/
β”‚   β”œβ”€β”€ documentation/
β”‚   β”œβ”€β”€ history/
β”‚   β”œβ”€β”€ projects/
β”‚   └── settings/
β”œβ”€β”€ services/
β”‚   β”œβ”€β”€ ai/                     # Provider implementations (Gemini, Groq, OpenRouter…)
β”‚   β”œβ”€β”€ embeddings/             # Embedding service
β”‚   β”œβ”€β”€ export/                 # Context file & document export
β”‚   β”œβ”€β”€ orchestrator/           # Multi-agent pipeline + prompt builders
β”‚   β”‚   └── agents/             # DocAgent, ReadmeAgent, ApiAgent, ArchitectureAgent…
β”‚   β”œβ”€β”€ file_scanner_service.dart
β”‚   β”œβ”€β”€ project_analyzer_service.dart
β”‚   β”œβ”€β”€ project_brain_service.dart
β”‚   β”œβ”€β”€ session_tracker_service.dart
β”‚   └── zip_service.dart
└── widgets/                    # Shared widgets (AppShell, UploadArea, MarkdownView…)

State management: Riverpod (AsyncNotifierProvider, StateNotifierProvider)
Navigation: go_router with StatefulShellRoute (indexed stack)
Models: Freezed + json_serializable
AI layer: Provider-agnostic AiProvider interface; concrete adapters per service

See ARCHITECTURE.md for a full deep-dive.


πŸš€ Getting Started

See INSTALLATION.md for full setup instructions.

Quick start:

git clone https://github.com/ArsalanKaleem/documentum.git
cd documentum
flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter run -d windows   # or macos, linux, chrome

Then open Settings β†’ AI Providers and add at least one free API key.


πŸ€– Supported AI Providers

All providers listed below have a free tier with no credit card required.

Provider Free Models Sign Up
Gemini gemini-2.5-flash, text-embedding-004 aistudio.google.com
Groq llama-3.3-70b (and others) console.groq.com
OpenRouter deepseek/deepseek-r1:free + many others openrouter.ai
NVIDIA NIM meta/llama-3.3-70b-instruct build.nvidia.com
Cerebras llama-3.3-70b cloud.cerebras.ai
SambaNova Meta-Llama-3.3-70B-Instruct cloud.sambanova.ai
Hugging Face meta-llama/Llama-3.3-70B-Instruct huggingface.co

πŸ“„ Documentation


πŸ“œ License

MIT β€” see LICENSE.


πŸ‘€ Author

Arsalan Kaleem (Somi)
Flutter & AI Developer
github.com/ArsalanKaleem

About

πŸš€ AI-powered documentation generator supporting multiple LLM providers, parallel AI agents, Flutter Desktop, and Web.

Topics

Resources

License

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Contributors