Valentin Gagarin
be057fb93b
use email address that's being monitored
2024-11-18 09:40:41 +01:00
Valentin Gagarin
07fa942989
increase sensitive area of the menu toggle
2024-11-15 09:54:37 +01:00
Valentin Gagarin
b78d341d95
simplify menu-toggle label SVG
2024-11-15 09:54:37 +01:00
Valentin Gagarin
e61ff7c039
show mobile menu toggle in mode-sensitive color
2024-11-15 09:54:37 +01:00
Valentin Gagarin
5179283b83
add mobile style
2024-11-13 15:47:12 +01:00
Valentin Gagarin
a6e764d2fc
list events on the dedicated page more like articles
2024-11-13 15:47:12 +01:00
Valentin Gagarin
3b002a5d2d
add a desktop stylesheet
...
it also features a dark mode
2024-11-13 15:47:12 +01:00
Valentin Gagarin
4f37c5b7b2
style
2024-11-13 15:47:12 +01:00
Valentin Gagarin
457f0adee7
more structured front page
...
this allows for more customised styling
2024-11-13 15:47:12 +01:00
Valentin Gagarin
91ab0e3cd4
remove legacy stylesheet
2024-11-13 15:47:12 +01:00
Valentin Gagarin
555974a3af
fix <hgroup> rendering
2024-11-13 15:47:12 +01:00
Valentin Gagarin
27a7ba84bd
add stylesheet with fonts
2024-11-13 15:47:12 +01:00
Valentin Gagarin
419f2b881b
implement raw assets
...
this allows adding files to the output as they are
2024-11-13 15:47:12 +01:00
Valentin Gagarin
6e3bd814f1
move inline recursiveAttrs to lib.types
2024-11-13 15:47:12 +01:00
Valentin Gagarin
cb8363ebb5
implement stylesheet links
2024-11-13 15:47:12 +01:00
Valentin Gagarin
b1d8ac85e0
build with full trace
2024-11-13 15:47:12 +01:00
Valentin Gagarin
ed2e0679c4
add .direnv to gitingore
2024-11-13 15:47:12 +01:00
Valentin Gagarin
c60d10b355
add todo concerning palpable content
2024-11-13 15:47:12 +01:00
Valentin Gagarin
9e97ca3f14
list all news articles on a separate page
2024-11-13 15:47:12 +01:00
Valentin Gagarin
23462e3110
add past events and list them on a page
2024-11-13 15:47:12 +01:00
Valentin Gagarin
61b2d07b1d
add event content type
2024-11-13 15:47:12 +01:00
Valentin Gagarin
d5b329ede9
implement definition lists with dl, dt, dd
2024-11-13 15:47:12 +01:00
Valentin Gagarin
d0c7f1cad1
make template overrides take final and prev
2024-11-13 15:47:12 +01:00
Valentin Gagarin
1fe519c838
add note on using direnv
2024-11-13 15:47:12 +01:00
Valentin Gagarin
f837b436d7
add devmode for live preview
2024-11-13 15:47:12 +01:00
Valentin Gagarin
897acd2a5c
fix semantics: wrap content body into section
2024-11-13 15:47:12 +01:00
Valentin Gagarin
18864f2738
make template overrides chainable
2024-11-13 15:47:12 +01:00
Valentin Gagarin
67d00fea7e
remove old template garbage
2024-11-13 15:47:12 +01:00
Valentin Gagarin
9b74458a8c
override page template for articles
2024-11-13 15:47:12 +01:00
Valentin Gagarin
00e3cfcb52
make page templates granularly overridable
2024-11-13 15:47:12 +01:00
Valentin Gagarin
ef5594d963
add resulting Nix value to default.nix outputs
...
this is practical for debugging and demonstration purposes
2024-11-13 15:47:12 +01:00
Valentin Gagarin
f71bc89921
move things to more appropriate places
2024-11-13 15:47:12 +01:00
Valentin Gagarin
6f90db7193
unify template parameters
2024-11-13 15:47:12 +01:00
Valentin Gagarin
cbe10ec304
further prettify output
2024-11-13 15:47:12 +01:00
Valentin Gagarin
d4aa88f759
fix indentation in output
2024-11-13 15:47:12 +01:00
Valentin Gagarin
95f7e5e162
reiterate on mandatory headings in sections
2024-11-13 15:47:12 +01:00
Valentin Gagarin
661158223a
ensure the section hierarchy is spec-compliant
...
- automatically assign heading levels
- check that the maximum nesting depth is not exceeded
2024-11-13 15:47:12 +01:00
Valentin Gagarin
4aeb9579d6
separate DOM mapping and generic templating
...
the templates collection will soon only be there for reusable snippets,
while the HTML representation of document types will be attached to
those types directly.
2024-11-13 15:47:12 +01:00
Valentin Gagarin
5ee1c8b006
implement sectioning semantics
...
this was quite a beast to tame, but it now allows putting sections anywhere
in the tree without having to redundantly specify heading levels, which
will be computed automatically from the nesting depth.
the whole thing will also blow up if the maximum section nesting depth
is exceeded, just as the spec requires - albeit with an absolutely
impenetrable error message. this could in principle be improved with
lots of additional machinery, but this is by far not low-hanging fruit.
just don't nest your sections too much.
2024-11-13 15:47:12 +01:00
Valentin Gagarin
414aeb45ba
fix module for <link>
and <base>
2024-11-13 15:47:12 +01:00
Valentin Gagarin
153b761c8f
fix attrs printing
2024-11-13 15:47:12 +01:00
Valentin Gagarin
36d1c9c433
add README
2024-11-13 15:47:12 +01:00
Valentin Gagarin
5bef87be1f
render content via structured DOM representation
2024-11-13 15:47:12 +01:00
Valentin Gagarin
e531e861ce
formatting
2024-11-13 15:47:12 +01:00
Valentin Gagarin
2595511a38
implement a slice of the DOM spec as modules
...
this is roughly sufficient to recreate the website as it currently is
- elements:
- document
- html
- head
- title
- base
- link (variants that must be unique nested under `head` directly)
- canonical
- meta (same as for link):
- charset
- viewport
- author (can be multiple, but still unique in aggregate for a document)
- description
- global attributes:
- class
- hidden
- id
- lang
- style
- title
- element-specific attributes:
- href
- target
there's still a lot to do for a reasonably complete implementation, most
importantly everything concerning
- navigation
- top-level flow content (`div`, `article`, headings, `p`, ...)
- stylesheets
there's also some infrastructure to be arranged for easy but somewhat
safe switching between literal HTML and structured representations.
2024-11-13 15:47:12 +01:00
Valentin Gagarin
779eb8b192
add more string processing helpers
2024-11-13 15:47:12 +01:00
Valentin Gagarin
e77b55e8e9
add type for list of unique elements
2024-11-13 15:47:12 +01:00
Valentin Gagarin
c7a13f04c9
don't use outPath any more
...
- links are constructed explicitly, relative to the current page's
location
- templates are called explicitly by output type
2024-11-13 15:47:12 +01:00
Valentin Gagarin
e2691f8469
let navigation have its own template
2024-11-13 15:47:12 +01:00
Valentin Gagarin
84f5d17e3e
make a proper link
2024-11-13 15:47:12 +01:00