Scaffolding Details
Short explanations for the purpose of different directories in our proposed scaffolding
/github
This directory should contain all GitHub actions and workflows
/storybook
This directory contains all of our storybook components for reusable UI elements
/docs
Any relevant documentation
/cypress
All cypress testing configs, mocks, tests
/src/assets
Any assets used globally and not stored on CDN
/components
All atomic react components as component directories that contain the component, styles, and tests.
/MyComponent
Each component directory should contain the index file with component export, abstracted styles, unit tests, and any specific helper files
Example:
/MyComponent
/MyComponent.tsx
/MyComponent.styled.tsx
/MyComponent.test.tsx
/views
Each of these directories should be used for views or parent containers used for component composition. When thinking of views you should be considering routing - if it is something that would exist on its own route then it is most likely a good view candidate.
/services
All third party and in house service configurations should exist here i.e. Auth0, cloud/CDN configs, custom api connect configs, etc
/typings
All typescript types and interfaces
/data
Any exportable data or json files
/store
Anything related to the global store on the front end will go here whether that be Redux or another solution
/context
Custom contexts should be placed here i.e. theming, language, etc
/utilities
All globally accessible custom utilities
/validations
Any custom validation configs
Last updated