GitHub Organization Migration
Status: Planned — not yet executed
syncc is migrating from a personal GitHub account to a dedicated organization to support a growing multi-repo structure and professional B2G positioning.
Target structure
syncc-transit/
├── syncc ← main monorepo (transferred from RickySandi/syncc)
└── gtfs-data ← new repo: La Paz GeoJSON + future city feeds
Organization name: syncc-transit → github.com/syncc-transit
Why
- Credibility — pitching to municipalities and government with
github.com/syncc-transit/synccis more professional than a personal account URL - Multi-repo — already at 2 repos (main + wiki), adding
gtfs-data; the namespace matters now - Team management — add developers/contractors with org roles instead of per-repo personal access
- GitHub auto-redirects the old
RickySandi/synccURL, so nothing breaks
Migration steps
1. Create the organization
- github.com →
+→ New organization - Name:
syncc-transit - Plan: Free (unlimited public repos, fine for now)
2. Transfer the main repo
RickySandi/syncc→ Settings → Danger Zone → Transfer ownership →syncc-transit- GitHub creates a permanent redirect from the old URL automatically
- All existing clone URLs, CI integrations, and wiki links keep working
3. Create gtfs-data
- New repo under
syncc-transit/gtfs-data - Push La Paz GeoJSON (
lapaz-routes.geojson) as the first commit - See GTFS Data Sources for the hybrid loading plan
4. Update hardcoded references (post-transfer)
After the transfer, update any hardcoded RickySandi/syncc references in:
- apps/web-admin/src/environments/ — if any repo URLs are referenced
- AGENTS.md / CLAUDE.md footer lines
- This wiki (Home.md and Architecture.md footers)
- Any CI/CD config if added in the future
gtfs-data repo structure
gtfs-data/
├── lapaz/
│ └── lapaz-routes.geojson ← 9.2 MB, current bundled file
├── cochabamba/
│ └── README.md ← pointer to Trufi Association feed
└── README.md
Version naming convention: city-YYYY-MM (e.g. lapaz-2025-01) for release tags when the feed is updated.
Hybrid loading pattern (to implement in gtfs.service.ts):
1. Fetch from https://raw.githubusercontent.com/syncc-transit/gtfs-data/main/lapaz/lapaz-routes.geojson
2. On failure (timeout / offline / GitHub down) → fall back to the bundled local file at apps/api-server/src/passenger/data/lapaz-routes.geojson
This matches exactly how Cochabamba works (live fetch → local cbba-stops.json fallback).
Future use of gtfs-data
The gtfs-data repo will also be the home for data analysis work on the La Paz feed — notebooks, scripts, and findings — when that phase begins.