Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cirruslabs/cirrus-ci-web
Web front end for Cirrus CI
https://github.com/cirruslabs/cirrus-ci-web
graphql react relay-modern
Last synced: 6 days ago
JSON representation
Web front end for Cirrus CI
- Host: GitHub
- URL: https://github.com/cirruslabs/cirrus-ci-web
- Owner: cirruslabs
- License: mit
- Created: 2017-07-16T19:38:33.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-11-20T09:06:45.000Z (about 1 month ago)
- Last Synced: 2024-12-22T04:08:07.754Z (13 days ago)
- Topics: graphql, react, relay-modern
- Language: TypeScript
- Homepage: https://cirrus-ci.com/
- Size: 6.83 MB
- Stars: 93
- Watchers: 9
- Forks: 69
- Open Issues: 29
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Web Front-End for [Cirrus CI](https://cirrus-ci.org/)
[![Build Status](https://api.cirrus-ci.com/github/cirruslabs/cirrus-ci-web.svg)](https://cirrus-ci.com/github/cirruslabs/cirrus-ci-web)
Front end for [Cirrus CI](https://cirrus-ci.org/) that uses [Relay](https://github.com/facebook/relay) framework
to minimize the amount of business logic.## Development Guide
- Run `yarn` to install all external dependencies.
- Run `yarn bootstrap` to 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:```bash
./.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](https://cirrus-ci.com),
and remove the `Same-Site` restrictions for `cirrusUserId` and `cirrusAuthToken` cookies (for `api.cirrus-ci.com`, on Firefox this means setting `Secure` to `false`). ([EditThisCookie](http://www.editthiscookie.com/)
works just fine for it).### Productivity Tips
#### 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:```bash
$ npm run start-untyped
```#### VSCode
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#### Gitpod
You can also use Gitpod, an online IDE perfect for developing this app.
Once you have forked the repository, navigate to `https://gitpod.io/#https://github.com/YOURUSERNAME/cirrus-ci-web`.
Gitpod will automatically setup the workspace and open it for you.