Skip to content

solutions

Linux on Rails edited this page Dec 3, 2016 · 7 revisions

Solutions breakdown

We wil make a main division in our project:

  • Backend: this will contain rest api, data access, server side business logic...
  • Frontend: pure front end project (no server side scripting), HTML / JS based.

Backend

TODO: Define backend solutions structure, taking into account that we will base it on Express + Mongoose + MongoDB.

Frontend

We will break the development into three main areas:

  • Application: main application, contains the page, specific application components and api interaction (rest layer etc...), business logic....

  • Reusable widgets library: we will create a library that will hold the implementation of generic components (e.g. thumbnail components, file upload component). This library could be resued in other projects.

  • Markdown library: we are now in the process of evaluating markdown libraries, probably we will need to customize / extend them, this library would be the entry point for this.

We have the following solution structure proposal(*):

modules

( * )lm prefix stands for "LeanMood", we will use this to avoid namespace collisions with other libraries._

An overview of what can hold each of the modules:

breakdown

Page folder structure

First level

  • src
    • common
      • actions
      • components
    • model
    • pages
    • reducers
    • rest-api
    • validations

Second level

Only for the admin module.

  • pages
    • admin
      • home
      • training
        • list
        • detail
      • student
        • list
        • detail
      • permission

Third level

  • pages
    • admin
      • training
        • list
          • actions
          • components
            • listPage.tsx
          • containers
            • listPageContainer.ts
          • index.ts
        • detail
          • actions
          • components
          • containers
          • index.ts
      • student
        • list
          • actions
          • components
          • containers
          • index.ts
        • detail
          • actions
          • components
          • containers
          • index.ts
      • ...
Clone this wiki locally