← Back to Blog

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 code

After:

# 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-docs

Better 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-dev

Available 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 files

Documentation Updates

When adding or modifying features:

  1. Update code in the main package directories
  2. Update documentation in docs/ or web/content/ as needed
  3. 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 hugo to generate static site
  • Deploy: Automatic deployment to aixgo.dev

Migration Notes

For External Contributors

If you had a fork of the old web repository:

  1. Fork the main aixgo-dev/aixgo repository
  2. Website source is now in the web/ directory
  3. 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:


Start contributing to both code and documentation today:

git clone https://github.com/aixgo-dev/aixgo.git
cd aixgo && make web-dev
release infrastructure developer-experience