v0.2.5: Monorepo Consolidation
Website merged into main repository for unified development experience
We’re excited to announce Aixgo v0.2.5, featuring a significant infrastructure improvement: the Aixgo website has been consolidated into the main repository as a monorepo. This change streamlines development and improves the contributor experience.
What Changed
The Aixgo website source code, previously maintained in a separate aixgo-dev/web repository, now lives at web/ in the main aixgo-dev/aixgo
repository.
Before:
# Two separate repositories
github.com/aixgo-dev/aixgo # Framework code
github.com/aixgo-dev/web # Website codeAfter:
# Single unified repository
github.com/aixgo-dev/aixgo
├── agents/ # Framework code
├── examples/
├── docs/
└── web/ # Website code
├── content/
├── themes/
└── static/Why Monorepo?
The consolidation delivers several key benefits:
Single Source of Truth
Documentation and code now live together, making it easier to keep them in sync. When you update a feature, you can update the corresponding documentation in the same pull request.
Simplified Contribution Workflow
Contributors no longer need to navigate between repositories. Want to improve an example and update the related guide? One repository, one PR.
# Before: Two repositories, two PRs
cd aixgo && git checkout -b feature-x
cd ../web && git checkout -b docs-feature-x
# After: One repository, one PR
cd aixgo && git checkout -b feature-x-with-docsBetter Example Integration
Example READMEs now link directly to comprehensive web guides without cross-repository references. The documentation hierarchy is clearer and easier to navigate.
Unified CI/CD
Build, test, and deployment workflows are consolidated. Website changes trigger automated builds and validation alongside framework tests.
For Contributors
Website Development
Developing the website locally is straightforward:
# Clone the repository
git clone https://github.com/aixgo-dev/aixgo.git
cd aixgo
# Start the development server
cd web && make dev
# Or from the root directory
make web-devAvailable Make Targets
The root Makefile now includes website-specific targets:
make web-dev # Start Hugo development server
make web-build # Build production site
make web-lint # Run markdownlint on content
make web-clean # Clean generated filesDocumentation Updates
When adding or modifying features:
- Update code in the main package directories
- Update documentation in
docs/orweb/content/as needed - Submit a single PR with both changes
# Example workflow
git checkout -b add-new-pattern
# Edit internal/supervisor/patterns/new_pattern.go
# Edit web/content/guides/orchestration/new-pattern.md
git add .
git commit -m "feat: add new orchestration pattern with documentation"Deployment
The website still deploys to Firebase Hosting via Cloud Build, but now triggers on changes to web/** in the main repository. The deployment pipeline remains unchanged:
- Trigger: Push to main branch with changes in
web/ - Build: Cloud Build runs
hugoto generate static site - Deploy: Automatic deployment to aixgo.dev
Migration Notes
For External Contributors
If you had a fork of the old web repository:
- Fork the main aixgo-dev/aixgo repository
- Website source is now in the
web/directory - Create PRs against the main repository
For Maintainers
The old aixgo-dev/web repository is now archived and read-only. All future website updates happen in the main repository.
What’s Next
The monorepo consolidation is the foundation for several upcoming improvements:
- Enhanced Documentation Tooling: Automated link validation and documentation coverage checks
- Integrated Examples: Live code examples embedded in documentation with automatic testing
- Versioned Docs: Documentation versioning tied to framework releases
Get Involved
We’d love your feedback on the new monorepo structure:
- GitHub Issues: Report issues or suggest improvements
- Discussions: Share your thoughts
- Contributing: Contribution guide
Start contributing to both code and documentation today:
git clone https://github.com/aixgo-dev/aixgo.git
cd aixgo && make web-dev