-
Notifications
You must be signed in to change notification settings - Fork 1
Directory structure
Darren Siegel edited this page Oct 24, 2017
·
9 revisions
-
assets- static assets needed for web application -
src- Application source code -
test- Application unit tests
-
actions- Redux action creators -
components- General application components and views -
data- Data models and persistence -
editors- Editor implementations-
document- Top level document editors. Each editor should exist in a subdirectory.-
workbook- Workbook page editor -
course- Course editor -
assessment- Assessment editor -
org- Organization editor -
common- Common components and utilities
-
-
content- Content based sub-editors.-
common- Common components and utilities
-
-
-
reducers- Redux reducer implementations. Each reducer should be defined in a subdirectory -
utils- application wide utilities
The following image depicts the dependencies that should be enforced within the code. The arrows indicate
an allowed dependency between code in the various directories or components depicted. For instance,
the presence of the arrow between reducers and actions indicates that it is acceptable for code in
reducers to use or depend on code in directory actions. With no arrow between them, it is not acceptable for
code in editors/document to depend on or use code in data - or vice versa.
While not explicitly stated by the following diagram, the only code that should subscribe to global
application Redux state is Main.tsx or code within the components directory.
