The entire Serial app is maintained in a mono repo with a CI/CD pipeline built on Github Actions. The pipeline consists of several workflows that handle different aspects of the development and deployment process:Documentation Index
Fetch the complete documentation index at: https://docs.serial.okos.com/llms.txt
Use this file to discover all available pages before exploring further.
- Linting: A lint workflow runs on pull requests and pushes to the staging and main branches, checking the frontend and Zuplo code for style and potential errors.
-
Testing:
- Zuplo tests are run on pull requests and pushes to the staging and main branches.
- Supabase schema changes are validated by generating TypeScript types and checking for uncommitted changes.
-
Deployment:
- Supabase migrations are automatically deployed to the staging environment when changes are pushed to the staging branch, and to the production environment when changes are pushed to the main branch.
- Zuplo is deployed on both staging and main branches when changes are made to the Zuplo directory.
- Vercel deloployments are automatically triggered when any PR is merged to staging or main
- Version Management: A version workflow runs on pushes to the staging and main branches, incrementing the version number and updating relevant files.
- Changes are made in feature branches.
- Pull requests are created to merge into the staging branch.
- After passing all checks and reviews, changes are merged into staging for further testing.
- Once verified in staging, changes are then merged into the main branch for production deployment.

