Structure Web Application Framework
Go to file
Alice Gaudon e8ab4527f7 Merge branch 'develop' 2021-04-21 13:58:23 +02:00
config Allow users to change their username every configurable period of time 2021-02-23 17:43:11 +01:00
scripts package.json scripts: use NodeJS instead of unix commands 2021-03-30 12:03:26 +02:00
src Handle SIGTERM exit signals (allows clean exit with systemd) 2021-04-21 13:52:52 +02:00
test TestApp: don't ignore commands by default 2021-03-30 12:03:26 +02:00
views Properly implement pagination 2021-03-30 12:02:57 +02:00
.eslintrc.json package.json scripts: use NodeJS instead of unix commands 2021-03-30 12:03:26 +02:00
.gitignore .gitignore: add config/local.* 2021-01-25 12:37:55 +01:00
LICENSE Add license 2020-08-25 17:58:34 +02:00
README.md Rename project to swaf 2020-11-12 16:11:16 +01:00
jest.config.js Add many eslint rules and fix all linting issues 2020-09-28 14:15:22 +02:00
package.json Version 0.23.8 2021-04-21 13:57:20 +02:00
tsconfig.json Fix published npm package folder structure 2021-01-25 12:37:41 +01:00
tsconfig.test.json Add many eslint rules and fix all linting issues 2020-09-28 14:15:22 +02:00
yarn.lock Upgrade dependencies 2021-04-21 13:57:09 +02:00

README.md

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