Project Management
Relevant source files
The following files were used as context for generating this wiki page:
Project Management in Atmos encompasses the lifecycle of project entities, from creation and database persistence to high-level organizational documentation. It serves as the primary container for codebases, providing the structure necessary for workspace isolation, configuration, and integrated documentation through the Wiki system.
The system is architected across three main layers: the frontend user interface for project initialization, the core service layer for business logic, and the infrastructure layer for database entity mapping. This modularity ensures that project data remains consistent across the platform while supporting advanced features like automated Wiki generation and metadata collection.
Architecture and Data Flow
The project management flow typically initiates from the web interface, traverses through the core service for validation and processing, and finally persists in the database.
Creation Flow
When a user initiates project creation, the CreateProjectDialog captures necessary metadata such as the project name and main file path. This data is then dispatched to the backend services.
Data Models
Projects are represented by structured entities that define their identity, location on the filesystem, and temporal metadata.
Project Entity Structure
The database schema for a project includes fields for identification and filesystem mapping.
| Field | Type | Description |
|---|---|---|
id | UUID | Unique identifier for the project |
name | String | Display name of the project |
main_file_path | String | The primary entry point or root directory of the project |
created_at | DateTime | Timestamp of creation |
updated_at | DateTime | Timestamp of last modification |
Sources: crates/infra/src/db/entities/project.rs
Project Documentation and Wiki Integration
A critical component of project management in Atmos is the automated documentation system. Projects support a "Wiki" feature that allows agents to research the codebase and generate comprehensive Markdown-based documentation.
Wiki Generation Process
The generation process involves a research-grade analysis of the project's source code and Git metadata.
Metadata Collection
During project analysis, the system extracts technical context to inform documentation:
- Commit Graph:
git log --oneline --graphfor evolution history. - Contributor Stats:
git shortlogto identify primary authors. - File Metadata: Analysis of
Cargo.toml,package.json, and directory structures.
Sources: skills/project-wiki/SKILL.md, specs/tech/project-wiki.md
Implementation Components
The following table summarizes key technical components involved in managing projects.
| Component | Responsibility |
|---|---|
CreateProjectDialog | Frontend form for capturing project name and path. |
ProjectService | Core logic for creating, retrieving, and updating projects. |
ProjectEntity | Database model definition using SeaORM. |
use-wiki-store | Zustand store managing project wiki state and loading. |
WikiSetup | UI component for triggering documentation generation via Agents. |
Sources: apps/web/src/components/dialogs/CreateProjectDialog.tsx, crates/core-service/src/service/project.rs, specs/tech/project-wiki.md
Project Creation Logic (Rust)
The core service handles the creation of project records, ensuring that the filesystem paths provided by the user are correctly mapped to the database entity.
// Representative structure for project creation
pub struct CreateProject {
pub name: String,
pub main_file_path: String,
}
Sources: crates/core-service/src/service/project.rs
Summary
Project Management in Atmos serves as the foundational layer for all developer activities. By integrating filesystem awareness with database persistence and AI-driven documentation, the system ensures that projects are not just static repositories, but well-documented and manageable environments. This lifecycle—from initial creation in the web UI to deep-dive research for wiki generation—forms the core of the Atmos workflow.