๐ค Your AI-powered companion for architecting enterprise-ready applications
๐ฏ Smart Architecture Planning
- Enterprise-grade application scaffolding
- Best practices implementation
- Technology stack optimization
- Project structure generation
๐ง AI-Powered Design
- Architecture pattern recommendations
- Technology stack suggestions
- Security considerations
- Scalability strategies
๐จ Interactive Experience
- User-friendly CLI interface
- Guided project setup
- Detailed documentation generation
- Clear project organization
- Python 3.11 or higher
- Git
- PowerShell 7+
1๏ธโฃ Clone the repository:
git clone https://github.com/w3bdesign/ai-architect-planner.git
cd ai-architect-planner
2๏ธโฃ Create and activate virtual environment:
python -m venv venv
# Windows
venv\Scripts\activate
# Unix/MacOS
source venv/bin/activate
3๏ธโฃ Install in development mode:
pip install -e ".[dev]"
After cloning the repository, you can use our automated setup script:
pwsh setup.ps1
This script will automatically:
- Verify Python 3.11+ is installed
- Create and activate a virtual environment
- Install the package in development mode
Start the interactive planning session:
python -m ai_architect_planner
The tool will:
- Guide you through project setup
- Generate project structure
- Create detailed architecture documentation
- Provide technology recommendations
For each project, the tool creates:
your-project/
โโโ src/ # Source code
โโโ docs/ # Documentation
โ โโโ ARCHITECT.md # Architecture document
โโโ tests/ # Test files
ai_architect_planner/
โโโ core/ # Core functionality
โ โโโ interaction.py # User interaction
โ โโโ project.py # Project operations
โโโ services/ # Service modules
โ โโโ llm.py # AI service (mock)
โโโ utils/ # Utilities
โ โโโ config.py # Configuration
โ โโโ constants.py # Constants
โ โโโ type_definitions.py # Type hints
โโโ cli/ # CLI interface
โโโ cli.py # Main CLI
- interaction.py: User interaction handling
- project.py: Project structure operations
- llm.py: AI service for architecture analysis (currently mocked)
- config.py: Project-wide configuration
- constants.py: Shared constants
- type_definitions.py: TypeScript-like type hints
- cli.py: Main CLI interface
The project uses pytest for testing and maintains code coverage through Codecov integration.
# Run all tests with coverage
pytest --cov=ai_architect_planner --cov-report=term
# Run specific test file
pytest tests/cli/test_cli.py -v
Our GitHub Actions workflow automatically runs on push and pull requests to the main branch, performing:
-
Environment Setup
- Python 3.11 setup
- Installation of dependencies
-
Code Quality
- Linting with Ruff
- Format checking with Ruff (non-blocking)
-
Testing
- Runs pytest with multiple coverage reports:
- XML report for Codecov
- HTML report for local viewing
- Terminal output for immediate feedback
- Generates JUnit XML test results
- Runs pytest with multiple coverage reports:
-
Artifacts
- Uploads test results and coverage reports as artifacts
- Pushes coverage data to Codecov for tracking
View the latest coverage reports on Codecov.
tests/
โโโ cli/ # CLI tests
โโโ core/ # Core module tests
โโโ services/ # Service tests
โโโ utils/ # Utility tests
The tool generates a comprehensive ARCHITECT.md
in your project containing:
- ๐ System Architecture
- ๐ง Technology Stack
- ๐ ๏ธ Implementation Guidelines
- ๐ Security Considerations
- ๐ Scaling Strategies
- Create feature branch
- Make changes
- Run tests and linting:
# Run tests with coverage pytest --cov=ai_architect_planner --cov-report=term # Run Ruff for linting and formatting ruff check ruff format
- Submit pull request
Contributions welcome! Please:
- Fork the repository
- Create a feature branch
- Add tests for new functionality
- Ensure all tests pass
- Submit a pull request
MIT License - see LICENSE file for details.
Made with โค๏ธ by AI enthusiasts for AI developers