Ecosystem
GitHub Organization as Application Catalog
The Towlion GitHub organization serves as a catalog of deployable applications. Each repository is a standalone, self-hostable application.
towlion/
.github # Organization profile and community health files
platform # Architecture docs and platform tools
app-template # Template for bootstrapping new apps
todo-app # Todo CRUD application
hello-world # Multi-app deployment test
starter-app # Created from app-template
Planned application repos include uku-companion, fretboard-trainer, chord-transposer, and practice-timer.
Repository Types
Organization Profile (towlion/.github)
The special .github repository provides the organization-level profile README displayed on github.com/towlion. Contains:
profile/README.md— marketing content shown on the org landing page
Platform Repository (towlion/platform)
The meta repository for the ecosystem. Contains:
- Architecture documentation
- Platform specification
- Deployment guides
Application Template (towlion/app-template)
A GitHub Template Repository for creating new applications. Includes:
- FastAPI backend scaffold
- Next.js frontend scaffold
- Docker configuration
- GitHub Actions deployment workflow
- Database migration setup
New apps are created by:
- Click "Use this template" to create a new repo
- Customize the application code
- Push — deploys automatically
Application Repositories
Each application is a separate GitHub repository under the towlion organization. Each one:
- Is a standalone web application in its own repo
- Contains its own Docker configuration and deployment workflow
- Can be forked and self-hosted independently
- Follows the application specification
- Follows the platform's governance policies, including branch protection, PR requirements, and commit conventions
Multi-Application Runtime
The platform supports running many applications on a single server. All applications share core infrastructure:
Server
├── Caddy (reverse proxy)
├── PostgreSQL
├── Redis
├── MinIO
├── App 1 container
├── App 2 container
└── App 3 container
Each application gets:
- Its own subdomain (e.g.,
uku.towlion.com) - Its own database (e.g.,
uku_db) - Its own storage bucket
- Its own container(s)
For details on how the server is structured and how app workflows interact with it, see Server Contract.
Core Philosophy
1. Repository-Driven Deployment
Each repository deploys itself — no central deployment platform needed.
2. Forkable Infrastructure
Anyone can deploy by forking:
3. Single-Server SaaS
Optimized for indie developers, small SaaS apps, AI-generated tools, and personal product ecosystems.
Target Use Cases
The ecosystem is designed for:
- Small SaaS applications
- Open-source developer tools
- Web utilities
- AI-generated applications
- Self-hosted services