The clientside codebase is divided into a few main folders. An overview of significant folders is shown below.
└─ docs/
└─ public/
└─ scripts/
└─ src/
└─ components/
└─ ui/
└─ ...
└─ constants/
└─ redux/
└─ utils/
./scripts
Contains any scripts for building resources when deploying the site. Currently the data.js
file handles the ‘In the Press’ and the ‘Share the Harvest’ page content generation by pulling from an external CMS.
./src
Contains source code for the client application
./src/components
React components used in this application. Other groupings of components have their own folders.
./src/components/ui
Contains re-usable, “low-level” interface elements used throughout the application. These components are presentational and generally have little to no state.
./src/constants
Constants used throughout the application. Files in ./data
are generated by scripts
./src/redux
Global state management with slices and reduces. Handles mutations to map, filter, authentication, and settings.
./src/utils
React Hooks and API wrappers