Structure Web Application Framework
Go to file
Alice Gaudon e31598fe4e Merge pull request 'Add svelte as a view engine to swaf' (#33) from svelte into develop
Reviewed-on: https://eternae.ink/ashpie/swaf/pulls/33

- config overhaul
- package.json / yarn.lock
  - new scripts, improved
  - now a module
  - new deps and upgraded deps
- rollup instead of webpack
- `assets` folder moved to `src/assets` folder
- `views` moved to `src/assets/views` folder
- make svelte the default view engine (except for mails)
- lots of refactoring
- add personnal information fields to account page
- and more
2021-11-09 19:31:22 +01:00
config Reorganize many root config parameters 2021-06-01 14:38:53 +02:00
scripts Move all sources to src folder, add common ts subproject 2021-05-27 15:26:19 +02:00
src data-table: add data-table-container to overflow-x scroll, use it on relevant pages 2021-11-09 19:29:10 +01:00
test data-table: add data-table-container to overflow-x scroll, use it on relevant pages 2021-11-09 19:29:10 +01:00
.eslintrc.cjs Move all sources to src folder, add common ts subproject 2021-05-27 15:26:19 +02:00
.gitignore Move all sources to src folder, add common ts subproject 2021-05-27 15:26:19 +02:00
jest.config.js esm: fix jest not running 2021-05-12 14:33:18 +02:00
LICENSE Add license 2020-08-25 17:58:34 +02:00
package.json Upgrade dependencies 2021-11-08 01:09:26 +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-08 01:09:26 +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