This is an intro how to start fixing or adding features
This project is written in React and Typescript. It's a single page application and it was initialized with Create React App.
Some of the extensively used libraries are
- react-hook-form for managing html forms
- redux with redux-toolkit, and rtk-query to manage application-wide state, and api calls, respectively
- react-router for application routing
They typically have a good documentation which is worth reading when something is unclear.
Please also refer to Style guide
The app starting point is src/index.tsx
. Some libraries are set up here, and the rest of the app is imported here.
But at first, it may be more relevant for you to start at src/App.tsx
. You'll find application-wide routing here. Page layouts and pages are imported here, so you can use it as a code crossroad.
Run the app, try changing something — and see what happens...
- all the app code is in
src/
- public stuff is in
public/
- and some configurations are in the root.
package.json
andtsconfig.json
might be the most important
Within the src/
, you may find the following structure:
pages/
,org/pages
anduser/pages
- routing pageslayout/
- components related to app layout and main routing outletscomponents/
- reusable componentsutils/
- helper functionsstyles/
- scss stylesheets that are not bound to any particular tsx componenthooks/
- reusable component logic extracted in the form of react hooksfeatures/
andapp/
- redux stuffapp/services/
- connection to apiassets/
- stuff that's not code - images, icons, fonts etc...
Go to api.md
We used Visual Studio Code to write this project, and there is a config for it here already, but you can of course use any other IDE.
For vscode
, you may find the following extensions useful:
dbaeumer.vscode-eslint
csstools.postcss
esbenp.prettier-vscode
- TypeScript language support seems to be included by default
You can contact Talita or Michal to learn more. We may call, go through the code and answer questions etc. which could make your onboarding smoother. They can speak in English, Czech and Polish. Don't hesitate to ask!