- Install dependencies
yarn
- Run development server
develop:matt-fyi
- Or create production build
build:matt-fyi
Install VSCode with the following extensions:
Configure Docker to run as non-root user. Required for visual regression tests.
- Pre-commit:
npx lint-staged -d
- Github Workflows: Install act and execute commands like
act -s SLACK_BOT_TOKEN=<token> -W "./.github/workflows/slack-tests.yml"
- Exact versions to comply with https://12factor.net/dependencies
- All devDependencies until needed otherwise: webpack/webpack#520
- Re-enable
tsconfig.json->isolatedModules
. Requires graphql types to not be exported globally, whichgatsby-plugin-typegen
does. - Move
lib/helper/src/test.ts
to somewhere more relevant to unit testing utilities - ESLint rules: No relative imports (tried this but didn't work: https://github.com/import-js/eslint-plugin-import/blob/HEAD/docs/rules/no-relative-packages.md)
- Less tsconfig duplication
- Intellisense for GraphQL. only works for one project at a time. Need to toggle between Life and matt.fyi. See
graphql.config.yml
.
-
Generate types for GraphQL query inside
createPages.ts
. -
Non-optional fields should not be typed as optional.
gatsby-plugin-typegen
applies Maybe utility type to all fields.