Thank you for contributing to the Aerostack CLI. This document outlines our workflow and conventions.
# Clone the repo
git clone https://github.com/aerostackdev/cli.git
cd cli
# Install dependencies
go mod download
# Run locally
go run cmd/aerostack/main.go --help
# Build
go build -o bin/aerostack cmd/aerostack/main.goWe commit in small, logical phases. Each phase should be a single PR when possible.
- CLI entry point, Cobra setup
init,dev,deploy,login,dbcommands (stubs or basic impl)
aerostack devwith workerd- Template engine, bundler integration
- Hot reload (if applicable)
aerostack deployintegration- Cloudflare Workers / Aerostack platform API
aerostack db create,db migrate,db pull- D1, Neon, external DB support
- Error handling, logging
- Install script, Homebrew
- Documentation
Use Conventional Commits:
feat(scope): add hot reload
fix(dev): resolve port conflict
docs: update install instructions
See RELEASE.md for full details.
- Branch from
main:git checkout -b feature/your-feature - Commit with conventional messages
- Push and open a PR
- CI must pass (lint, test, build)
- Review — at least one approval
- Merge — squash or merge, per repo settings
- Go: Follow Effective Go and
gofmt - Tests: Place tests next to code (
*_test.go) - Comments: Document exported functions and types
Open an issue or reach out to the team.