Structure Web Application Framework
Go to file
2021-11-20 19:09:26 +01:00
config Reorganize many root config parameters 2021-06-01 14:38:53 +02:00
scripts Copy assets to dist folder at dist step 2021-11-20 15:43:20 +01:00
src frontend/BaseLayout: make it easier to edit the BaseLayout without redefining everything 2021-11-20 19:04:55 +01:00
test Move tests page view to test folder 2021-11-20 17:29:17 +01:00
.eslintrc.cjs Add specific tsconfig for eslint 2021-11-10 17:07:05 +01:00
.gitignore Move all sources to src folder, add common ts subproject 2021-05-27 15:26:19 +02:00
jest.config.js Do not distribute backend source, export everything to commonjs 2021-11-20 15:39:51 +01:00
LICENSE Add license 2020-08-25 17:58:34 +02:00
package.json Version 0.24.4 2021-11-20 19:09:14 +01:00
README.md Rename project to swaf 2020-11-12 16:11:16 +01:00
rollup.config.js [TO SQUASH] fix scss assets build pipeline 2021-06-02 18:29:37 +02:00
tsconfig.json Move route building to common subproject, fix Time export 2021-06-01 14:34:10 +02:00
tsconfig.test.json Fix indent on tsconfig files 2021-04-27 15:44:04 +02:00
yarn.lock Upgrade dependencies 2021-11-20 15:39:51 +01:00

Structure Web Application Framework

A NodeJS TypeScript web application framework (duh).

/!\ Still in development! There are not near enough tests /!\

Use at your own risk. Also please feel free to contribute with issues, bug reports and pull requests.

Features

Application building

  • Model, View, Controller
  • Uses express
  • Custom Middleware classes that enable advanced modularity
  • Modular models (you can add components with some definition automation)
  • Simple database migrations (raw sql queries for now)
  • Nunjucks for the view template engine
  • Mail template system using Nunjucks + MJML
  • Beautiful logging thanks to tslog

Databases

  • MySQL (persistent data)
  • Redis (cache, session)
  • (more to come)

Common systems

  • Advanced modular multi-factor authentication system
  • CSRF protection
  • WebSocket server with Controller-style endpoint listeners
  • WIP: automatic updates