| Release | Build Status |
|---|---|
| Edge | |
| Latest |
This project was bootstrapped with Create Next App.
Find the most recent version of this guide here, and check out Next.js repo for the most up-to-date info on Next JS.
A docker-compose setup is available in the compose folder.
Navigate to /compose (cd ./compose) and Follow the instructions found in compose/README.md to start a local cluster of Argo Platform micro services.
- Install dependencies:
npm ci - Set up environment: copy
.env.schemato.envand update environment accordingly. Out-of-the-box values are meant for local development. - Dev commands:
npm run devstarts local dev servernpm run buildcreates a production build.npm run force-resolutionsfixes vulnerable dependencies listed inpackage.json > resolutions
To keep commit messages consistent, we use gitmoji. To easily access emojis on Mac, press ctrl+cmd+space.
npm run type-check: trigger TypeScript type check for whole reponpm run type-check -- --watch: runs the above with watch mode- Any
npm run type-checktriggerstsc, so any flag layed out here can be used
- Any
- If using vscode (recommended),
tsccan also be run as a task in the editor:Cmd+Shift+B, then selecttsc:build - tsconfig.json- This will report errors in vscode's
PROBLEMStab
-
We use GraphQL Code Generator to generate an introspection schema and types.
-
Install the GraphQL VSCode plugin for code suggestions based on the schema as well as syntax highlighting.
-
On first build,
generated/graphql_schema.jsonhasn't been generated yet, so follow these steps:- Comment out the
schemaitem ingraphql.config.yaml. - In
codegen.yamluse the remote schema option. - Run
npm run graphql-codegen. - Uncomment the
schemaitem ingraphql.config.yaml. - Optional: use the local schema option in
codegen.yaml, if you're not working on the API.
- Comment out the
-
Modify
./codegen.yamlto get the schema either from your configured API or a local file. -
npm run gql-checkto check your GraphQL files and run a build. -
npm run devwill also watch for GraphQL changes. -
Name your GraphQL documents appropriately: They need to go in a
gqlfolder and have_QUERY_MUTATION_FRAGMENTat the end of the filename. They also need to be*.tsfiles.
This project is built with UI components provided by @icgc-argo/uikit. For more information, please visit: