Add initial project structure and core functionality for ArchDoc

- Created `.gitignore` files for various directories to exclude unnecessary files.
- Added `PLAN.md` to outline the project goals and architecture documentation generation.
- Implemented the `archdoc-cli` with a command-line interface for initializing and generating documentation.
- Developed the `archdoc-core` library for analyzing Python projects and generating architecture documentation.
- Included caching mechanisms to optimize repeated analysis.
- Established a comprehensive test suite to ensure functionality and error handling.
- Updated `README.md` to provide an overview and installation instructions for ArchDoc.
This commit is contained in:
2026-01-25 20:17:37 +03:00
commit 3701cee205
36 changed files with 7394 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
use thiserror::Error;
#[derive(Error, Debug)]
pub enum ArchDocError {
#[error("IO error: {0}")]
Io(#[from] std::io::Error),
#[error("Parse error in {file}:{line}: {message}")]
ParseError {
file: String,
line: usize,
message: String,
},
#[error("Configuration error: {0}")]
ConfigError(String),
#[error("Analysis error: {0}")]
AnalysisError(String),
#[error("Rendering error: {0}")]
RenderingError(String),
#[error("File consistency check failed: {0}")]
ConsistencyError(String),
}