- Set the correct Node version via
nvm use
- Start the Firebase Emulators via
npm run dev
- In another Terminal:
- Navigate into the
hosting
directory - Run
npm i
- Create a
.env
file based off of.env.sample
- You can get a GitHub token from here - please ensure it has the scopes
public_repo
,read:user
anduser:email
- You can get a GitHub token from here - please ensure it has the scopes
- Start the React development server via
npm start
- In order to authenticate locally, you will need to use
127.0.0.1
rather thanlocalhost
- In order to authenticate locally, you will need to use
- Navigate into the
We follow the Atomic Design methodology for organising our components. It provides a clear way to structure consistent and scalable components which relates to their final context.
We use the React Query library for handling caching and synchronisation of our API calls. For consistency, we use the format [<service-being-called>, <endpoint>, <parameter>]
for our query keys (for example: ["github", "repositories", "example-user"]
). We ask that you keep the implementation of query functions slim, placing most the logic in the service layer.