Cirrus CIWeb Front-End for
Front end for Cirrus CI that uses Relay framework to minimize the amount of business logic.
yarnto install all external dependencies.
yarn bootstrapto compile all GraphQL queries and mutations and to sync the schema.
After everything is prepared, run
npm start to start a local server. All changes will be instantly ready to view in your browser.
Running Production Build Locally
Running a production build locally might be useful for testing large refactoring or major upgrades. In order to do so please build a Docker image locally and then simply run the image via Docker CLI:
./.ci/build_docker.sh docker run -p 8080:8080 cirrusci/web-front-end:latest
Authentication from localhost
In order to authenticate with
api.cirrus-ci.com from locally running Cirrus CI Web, login on cirrus-ci.com,
and remove the
Same-Site restrictions for
cirrusAuthToken cookies (for
api.cirrus-ci.com, on Firefox this means setting
works just fine for it).
Disable Type Checking temporarily
This app is written in TypeScript and whenever TypeScript finds a static type error it will display an "error overlay" in the browser which prevents you "seeing" the app even if it was compilable to JS. Sometimes during quick experimentation this can be annoying. Therefore you can disable typechecking temporarily by running the app with:
$ npm run start-untyped
If you happen to use VSCode, here are some recommended extensions which work well with this app:
- Visual Studio IntelliCode - provides AI based code completion
- GraphQL (prisma.vscode-graphql) - provides syntax highlighting for GraphQL queries
You can also use Gitpod, an online IDE perfect for developing this app.
Once you have forked the repository, navigate to
Gitpod will automatically setup the workspace and open it for you.