Structure Web Application Framework
Go to file
Alice Gaudon 875a4fc458 Update description comments for some config fields 2021-04-19 14:22:27 +02:00
config Update description comments for some config fields 2021-04-19 14:22:27 +02:00
src Clean validator in AccountController 2021-02-23 17:45:32 +01:00
test Allow users to change their username every configurable period of time 2021-02-23 17:43:11 +01:00
views Allow users to change their username every configurable period of time 2021-02-23 17:43:11 +01:00
.eslintrc.json eslint: add no-floating-promises 2020-10-01 14:18:31 +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 Update repository URL 2021-02-21 13:19:28 +01: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-02-18 11:47:33 +01: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