have the app create the initial admin user:
* if the db has not yet been set up
* if there are not users
* if the config value for Init.CreateAdmin is True
* if the admin password is not empty
default username, email values can be seen in modules/user/const.go
this entails a couple of breaking changes due to schema evolution. once
the schema is stabilised, backward compatibility promise will be given.
* update config struct and accompanying scructs
* update tests
* update exampleConfig.dhall
* update local dev environment (devenv)
* make settings reflect the config schema changes
* make use of some settings/config updates
* add log messages telling the user what went wrong if the app fails to
start
* improve existing log messages
* cleanup: close channels when exiting
* cleanup: stop listening for signals when exiting
* add handlers for signin,singup,logout...
* introduce ent ORM and add user schema
* add live mode, devel mode to selectively turn on features via
config/flags
* add templates, handle embedding moar smarter:
* live mode uses live folder structure, else embedded templates are
used
* start using tailwindcss to style stuff
* add development goodies for hot-reloading (browser-sync - bs.js)
* pimp-up config.dhall with actual custom config Type (enables remote
schema and local values only as needed)
* add justfile (alternative to makefile for process automation)