Commit Graph

256 Commits

Author SHA1 Message Date
leo
50c3c939b6
head.tmpl: add Content Security Policy meta attr
All checks were successful
continuous-integration/drone/push Build is passing
* implement calculating integrity for script, stylesheet assets
* break out browser-sync loader script to its own file (instead of
  inline)
* implement Content Security Policy that only allows BrowserSync scripts
  and hooks to load from localhost when DevelMode is enabled (i.e. not
  in production)
2023-05-15 14:12:39 +02:00
leo
852cc60a9e
go(funcmap): add sha384,sha512 funcs
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-14 22:53:25 +02:00
leo
31ab083f8a
handlers: add health-check endpoints
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-13 22:33:38 +02:00
leo
ac4cc4ad48
config: expand comment [skip ci] 2023-05-13 21:33:55 +02:00
leo
3a86905b14
config: rename LoadConfig to Load
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-13 19:44:32 +02:00
leo
23bd5df200
readme: update link to logo [skip ci] 2023-05-13 14:15:55 +02:00
leo
1dc22cb811
config: add schemaCompatibility
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-12 23:29:16 +02:00
leo
7eb13cfa9a
config: also take into account PCMT_DEVEL
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-12 23:22:48 +02:00
leo
fc4460d5e1
go: delete pertinent ENVs after loading settings
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-12 22:43:36 +02:00
leo
e8ac4e39ce
modules/funcmap: add funcs to calculate SRI hashes
All checks were successful
continuous-integration/drone/push Build is passing
* correctly handle LiveMode resp. whether or not to set/read embeds
2023-05-12 00:11:23 +02:00
leo
b77c2fe941
handlers: add func addHeaders
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 23:50:40 +02:00
leo
13b9c3bdb4
navbar: reduce the top gap + persist topside
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 23:29:07 +02:00
leo
9c6fd898ca
head.tmpl: add referrer meta element
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 23:24:17 +02:00
leo
adeb6f5720
go: create funcmap,bluemonday modules
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 18:16:15 +02:00
leo
1fb7479d8e
slogger: rename Logger to Slogger
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 17:06:20 +02:00
leo
f23ec569c2
just: fix svgo tgt by not quoting * [skip ci] 2023-05-11 14:26:27 +02:00
leo
a385b194b9
handlers/home: render success with StatusOK
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 05:07:53 +02:00
leo
468e20da0a
handlers/index: refactor to use c.Render
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 05:01:19 +02:00
leo
f80e06078a
handlers/home: redirect w/ 303 instead of 301
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 04:55:56 +02:00
leo
847d4aab22
handlers: rename helper.go -> error.go
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 04:54:31 +02:00
leo
9bbfbe923e
app: set debug lvl also to gommon Echo logger
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 04:48:24 +02:00
leo
741af20b6e
app: call logger consistently
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 04:45:33 +02:00
leo
bef3cb228e
app(logger): restore the old behaviour
All checks were successful
continuous-integration/drone/push Build is passing
that is - have the Logger() method return pointer to the local (s)logger
2023-05-11 04:42:38 +02:00
leo
355f09bf5a
set embeds early to prevent nil pointer derefs
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 04:40:10 +02:00
leo
122ea638c9
go: refactor template rendering
All checks were successful
continuous-integration/drone/push Build is passing
* create pkg 'modules/template'
* move template rendering code from 'handlers' to 'modules/template'
* update call sites
* walk the 'templates' dir to discover nested hierarchies
* solidify LiveMode handling (vs embedded assets)
* break out funcMap to it's own file
* general clean-up
2023-05-11 04:32:39 +02:00
leo
61760fa373
app/assets.go: add info on what path failed
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-11 03:09:12 +02:00
leo
46cc1d663f
go(handlers): split get,set funcMap funcs
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-10 19:17:17 +02:00
leo
2215383c5d
go: refactor handlers
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-10 19:09:41 +02:00
leo
813d0c233e
echo settings: enable rate-limiting
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-10 17:48:02 +02:00
leo
30347cd485
gitignore: ignore vim sessions [skip ci] 2023-05-10 12:42:26 +02:00
leo
a879704535
go: partially rework how slogging works
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-09 17:35:00 +02:00
leo
e44238600b
slogging: add a default if unknown level is set
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-09 13:23:51 +02:00
leo
0efb419d56
tmpl,just: process SVGs with svgo
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-08 23:42:27 +02:00
leo
df0c280ad1
go: redo asset handling
All checks were successful
continuous-integration/drone/push Build is passing
* only embed substructure of assets
* create subfolders for css, imgs
* add .gitattributes file specifying pcmt.css as generated (by tailwind)
2023-05-08 00:13:33 +02:00
leo
1b2679ad97
go: add generate mechanism for frontend
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-07 19:37:44 +02:00
leo
0490786f11
refactor(handlers): break out signin funcs
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-07 00:19:10 +02:00
leo
e122e26596
templates(navbar): condition the link target
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-07 00:14:32 +02:00
leo
4f697282cf
templates: align footer with the main container
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-07 00:12:37 +02:00
leo
9dbc475145
go: implement the Echo renderer for templates
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-06 21:50:35 +02:00
leo
e651235f90
air: update config [skip ci] 2023-05-06 13:49:23 +02:00
leo
7d1c65e5a9
config: rename dir testconfigs to testdata
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-06 13:47:46 +02:00
leo
f8df3f3806
dhall: switch to using the versioned config
All checks were successful
continuous-integration/drone/push Build is passing
the Dhall config package formerly in ./config/schema has been moved to
https://git.dotya.ml/mirre-mt/pcmt-config-schema/, meaning the schema
has been decoupled from this repository.

the schema is now being versioned, which makes it easier to progress
without breaking stuff (unless we wanted to reference the versions by
commit hashes...).

* use schema version 0.0.0
2023-05-06 01:48:03 +02:00
leo
c4f8cf87f5
go: redirect signed users from / to /home
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-06 00:09:13 +02:00
leo
eafc9c1e92
go,tmpl: conditionally show content to users
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-06 00:03:41 +02:00
leo
0a34bca1c1
go: allow choosing db type, setting connstr
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-05 23:10:56 +02:00
leo
f1bb52c58f
go: add a setting val for whether db is set up
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-05 22:58:13 +02:00
leo
b1ab686493
go: add db module for preps/checks
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-05 22:52:59 +02:00
leo
4dad751716
handlers: rm pages.go [skip ci] 2023-05-05 19:58:35 +02:00
leo
bb4854cf1f
nix: add devenv
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-05 19:43:28 +02:00
leo
bfafc4a8be
config: update schema
All checks were successful
continuous-integration/drone/push Build is passing
* couple session-related attrs in a record
* couple logger-pertaining attrs in a record
* update config Go representation
* update Go config consumers
2023-05-05 19:31:43 +02:00