298e838d0b
readme: add instructions on running pcmt [skip ci]
2023-05-20 18:27:32 +02:00
6ebf092b9f
ci,just,pre-commit: add Containerfile
...
continuous-integration/drone/push Build is passing
* lint in pre-commit, ci, justfile
* build on feature branches and PRs and publish on tags.
* add a symlink to Dockerfile
2023-05-20 18:05:26 +02:00
723c3fea5f
justfile: add db init args [skip ci]
2023-05-20 18:00:02 +02:00
ac7c1ae431
add TODOs [skip ci]
2023-05-17 20:55:09 +02:00
72723d951d
go(refactor): clean up run.go
continuous-integration/drone/push Build is passing
2023-05-17 20:40:24 +02:00
4de0576c26
go: add some more startup checks for DB
continuous-integration/drone/push Build is passing
2023-05-17 13:35:13 +02:00
e5980b15e5
update TODOs [skip ci]
2023-05-17 13:21:14 +02:00
be1709794a
fix(session panic): check if nil before use
continuous-integration/drone/push Build is passing
2023-05-16 13:49:02 +02:00
ad6bcac326
css: stage the tailwind-built file
...
continuous-integration/drone/push Build is passing
ci: save the generated file in the tmp folder and do a diff with the
staged file
2023-05-16 12:13:49 +02:00
695039e882
handlers(echo): use c.Bind in sign{in,up}
continuous-integration/drone/push Build is passing
2023-05-15 23:57:38 +02:00
15918d4cd7
tmpls: set required attr for form fields
continuous-integration/drone/push Build is passing
2023-05-15 18:37:34 +02:00
532934b88f
browserSync: update what gets watched [skip ci]
2023-05-15 15:25:58 +02:00
50c3c939b6
head.tmpl: add Content Security Policy meta attr
...
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
852cc60a9e
go(funcmap): add sha384,sha512 funcs
continuous-integration/drone/push Build is passing
2023-05-14 22:53:25 +02:00
31ab083f8a
handlers: add health-check endpoints
continuous-integration/drone/push Build is passing
2023-05-13 22:33:38 +02:00
ac4cc4ad48
config: expand comment [skip ci]
2023-05-13 21:33:55 +02:00
3a86905b14
config: rename LoadConfig to Load
continuous-integration/drone/push Build is passing
2023-05-13 19:44:32 +02:00
23bd5df200
readme: update link to logo [skip ci]
2023-05-13 14:15:55 +02:00
1dc22cb811
config: add schemaCompatibility
continuous-integration/drone/push Build is passing
2023-05-12 23:29:16 +02:00
7eb13cfa9a
config: also take into account PCMT_DEVEL
continuous-integration/drone/push Build is passing
2023-05-12 23:22:48 +02:00
fc4460d5e1
go: delete pertinent ENVs after loading settings
continuous-integration/drone/push Build is passing
2023-05-12 22:43:36 +02:00
e8ac4e39ce
modules/funcmap: add funcs to calculate SRI hashes
...
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
b77c2fe941
handlers: add func addHeaders
continuous-integration/drone/push Build is passing
2023-05-11 23:50:40 +02:00
13b9c3bdb4
navbar: reduce the top gap + persist topside
continuous-integration/drone/push Build is passing
2023-05-11 23:29:07 +02:00
9c6fd898ca
head.tmpl: add referrer meta element
continuous-integration/drone/push Build is passing
2023-05-11 23:24:17 +02:00
adeb6f5720
go: create funcmap,bluemonday modules
continuous-integration/drone/push Build is passing
2023-05-11 18:16:15 +02:00
1fb7479d8e
slogger: rename Logger to Slogger
continuous-integration/drone/push Build is passing
2023-05-11 17:06:20 +02:00
f23ec569c2
just: fix svgo tgt by not quoting * [skip ci]
2023-05-11 14:26:27 +02:00
a385b194b9
handlers/home: render success with StatusOK
continuous-integration/drone/push Build is passing
2023-05-11 05:07:53 +02:00
468e20da0a
handlers/index: refactor to use c.Render
continuous-integration/drone/push Build is passing
2023-05-11 05:01:19 +02:00
f80e06078a
handlers/home: redirect w/ 303 instead of 301
continuous-integration/drone/push Build is passing
2023-05-11 04:55:56 +02:00
847d4aab22
handlers: rename helper.go -> error.go
continuous-integration/drone/push Build is passing
2023-05-11 04:54:31 +02:00
9bbfbe923e
app: set debug lvl also to gommon Echo logger
continuous-integration/drone/push Build is passing
2023-05-11 04:48:24 +02:00
741af20b6e
app: call logger consistently
continuous-integration/drone/push Build is passing
2023-05-11 04:45:33 +02:00
bef3cb228e
app(logger): restore the old behaviour
...
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
355f09bf5a
set embeds early to prevent nil pointer derefs
continuous-integration/drone/push Build is passing
2023-05-11 04:40:10 +02:00
122ea638c9
go: refactor template rendering
...
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
61760fa373
app/assets.go: add info on what path failed
continuous-integration/drone/push Build is passing
2023-05-11 03:09:12 +02:00
46cc1d663f
go(handlers): split get,set funcMap funcs
continuous-integration/drone/push Build is passing
2023-05-10 19:17:17 +02:00
2215383c5d
go: refactor handlers
continuous-integration/drone/push Build is passing
2023-05-10 19:09:41 +02:00
813d0c233e
echo settings: enable rate-limiting
continuous-integration/drone/push Build is passing
2023-05-10 17:48:02 +02:00
30347cd485
gitignore: ignore vim sessions [skip ci]
2023-05-10 12:42:26 +02:00
a879704535
go: partially rework how slogging works
continuous-integration/drone/push Build is passing
2023-05-09 17:35:00 +02:00
e44238600b
slogging: add a default if unknown level is set
continuous-integration/drone/push Build is passing
2023-05-09 13:23:51 +02:00
0efb419d56
tmpl,just: process SVGs with svgo
continuous-integration/drone/push Build is passing
2023-05-08 23:42:27 +02:00
df0c280ad1
go: redo asset handling
...
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
1b2679ad97
go: add generate mechanism for frontend
continuous-integration/drone/push Build is passing
2023-05-07 19:37:44 +02:00
0490786f11
refactor(handlers): break out signin funcs
continuous-integration/drone/push Build is passing
2023-05-07 00:19:10 +02:00
e122e26596
templates(navbar): condition the link target
continuous-integration/drone/push Build is passing
2023-05-07 00:14:32 +02:00
4f697282cf
templates: align footer with the main container
continuous-integration/drone/push Build is passing
2023-05-07 00:12:37 +02:00