250 Commits

Author SHA1 Message Date
ca9e6623ff
static site generator part 7? --- refactoring, more tests
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2025-03-15 15:22:03 -05:00
76b1800155
static site generator part 6 --- start testing stuff
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2025-03-15 14:20:15 -05:00
746314f4ed
static site generator part 5 --- consolidate markdown code
all that's left is basically the instance copier code (ssg.py) and
markdown handling (markdown.py)

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2025-03-15 08:53:08 -05:00
c9d17523ce
static site generator part 4 --- user-selectable styles
not entirely happy about using JavaScript, but I think I figured out a
way to load the selected style via cookie without causing the page to
flash, so for the moment I'm sticking with it because I love the feature
so much

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2025-03-14 20:29:48 -05:00
02c548880e
static site generator part 3
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2025-03-13 19:28:51 -05:00
1ace0e1427
static site generator part 2 --- config and other fixes
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2025-03-13 18:57:19 -05:00
0d59e64323
static site generator part 1 --- incomplete, but kinda works
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2025-03-13 18:33:17 -05:00
68d6f83b4c
add termcolor dep for something I'm working on
I don't *need* to commit this just yet without the script actually done,
but I think the script is a foregone conclusion at this point, so might
as well just get this part out of my staging area

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2025-03-12 10:28:38 -05:00
ed12272d4d
default tables to 100% width
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-12-05 23:44:04 -06:00
1e839d691b
update reference to the DCO now that it's in CONTRIBUTING.md
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-05-02 09:25:40 -05:00
aeff73e3fc
add twine to development packages
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-26 10:13:23 -05:00
d28ddf9392
remove "trailing slash on void elements" which "has no effect"
caught by the W3C validator

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-26 10:11:38 -05:00
249f9d4962
put ancillary docs under the main license
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
v1.11.3
2024-04-21 17:48:43 -05:00
f12b76680f
use reuse lint for REUSE compliance
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-16 00:38:28 -05:00
c21a9b2638
replace plain text LICENSE with LICENSE.md
REUSE specification will care of the .txt in a bit

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-16 00:14:39 -05:00
6d7bfc58c8
add copyright and license tags to CSS and templates
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-16 00:10:34 -05:00
071be9b62d
requirements recompile + adding reuse
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-15 23:58:10 -05:00
ae584d5bf8
move the DCO into CONTRIBUTING.md
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-04-12 00:58:52 -05:00
05fb402029
add some quick contribution info and point at an IRC channel
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-02-25 00:29:08 -06:00
ada8691f85
version bumps
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2024-02-24 23:55:01 -06:00
d4ce04cd34
update feed test directory for the new structure
I guess this proves that the old structure still works with the new
code, though it creates IDs that have the file path in them

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-30 22:35:58 -06:00
63a263724c
simplify the expected feed structure
I don't think there's any need for a million directories, on second
thought, so just put YYMMDD prefixed files in the feed/ directory

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
v1.11.2
2023-12-30 22:17:28 -06:00
02c2176c4f
link to the Atom and RSS feeds in the template
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-30 22:09:58 -06:00
30d6f99c9b
return the proper atom and rss content types for the feeds
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
v1.11.1
2023-12-30 15:31:18 -06:00
575e2ad387
provide author information for the feed and entries
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-30 15:25:46 -06:00
b26975421c
make the feed ID be a valid URL for compliance
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-30 15:19:57 -06:00
6dc443e59f
implement a rudimentary Atom/RSS feed module
this provides a somewhat unconfigurable (at the moment) feed module
which provides Atom and RSS feeds. entries are determined by symlinks to
content pages, because my core CMS usage is still more general and not
blog-like. the symlinks allow for arbitrarily adding entries as I see
fit.

this also moves core Markdown parser stuff to the library module, since
that's used by the feed as well as normal pages

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
v1.11.0
2023-12-30 14:55:02 -06:00
5a9a36f463
deduplicate TITLE_SUFFIX from new DOMAIN_NAME
I will need the domain name for feed stuff, and I'm already crudely
using the title suffix in the nav as if it was a domain name, so let's just be
explicit in the case I ever change my mind on domain-in-title styling

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-30 11:55:01 -06:00
680a2bc764
add python 3.12 to tox environments
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-30 11:13:08 -06:00
713632fe7a
unpin tox in requirements
for some reason bandit wasn't earlier catching the SubElement usage but
now it is, but it's harmless anyway so we'll just suppress it.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-30 11:12:59 -06:00
bf646db1e8
convert tooling to pyproject.toml based
still has dynamic versioning and etc.

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-30 10:33:28 -06:00
2871e5a000
version bumps
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-28 15:40:56 -06:00
7b225a6de3
adding a compliant copyright line to all code
Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-28 15:33:41 -06:00
e1dc2afc7b
add SPDX-License-Identifier and DCO information
this includes my personal signoff on the MAINTAINERS.md for DCO purposes

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
2023-12-18 11:15:56 -06:00
0fef13c71a
version bumps, especially flask and werkzeug 3 v1.10.1 2023-10-07 14:02:23 -05:00
6b5cdb7f7e
add python 3.11 to tox tests 2023-10-07 13:07:05 -05:00
55cfad90a9
use werkzeug safe_join to sanitize the requested path
no tests changed, so my implementation might have been good, but let's
use the provided check
v1.10.0
2022-12-31 11:53:14 -06:00
b3dfab2611
simplify and better standardize the link underline 2022-12-31 11:33:36 -06:00
715bc38d78
serve per-instance static files at custom-static/ 2022-12-31 10:51:36 -06:00
e9af2de21e
don't assume all styles are in the static directory
this is to make room for a second, instance-configured spot for them
2022-12-31 10:16:35 -06:00
83bc8b2c21
requirements bump, only affected dev tools 2022-12-31 10:13:20 -06:00
4a2f650a33
don't hardcode styles to present, use config
now that we can override the styles in practice, we also need to only
present what is possible in the HTML
2022-12-31 09:53:22 -06:00
fd0fb390ff
allow for overriding PAGE_STYLES
moving this allows for per-instance customizations later, but that won't
be practical until serving styles from the instance dir is also allowed.
but, this sets the ground work and does allow for removing some styles
(e.g. if someone wanted to only allow 'plain').

also I still need to add the ability to present the themes list dynamically
2022-12-31 09:40:13 -06:00
be8a8dd35a
test full path for stylesheets
I'm going to be screwing around with this code in some future commits so
it's better to be explicit
2022-12-31 09:02:57 -06:00
0f19fcb174
fix bad copy and paste job on link styles v1.9.1 2022-09-16 14:16:13 -05:00
f1684a57a9
requirements recompile v1.9.0 2022-09-16 13:49:57 -05:00
83eb464be9
style the potential for links in the footer 2022-09-16 13:40:23 -05:00
0f03ad6f38
allow pages to supply extra footer text 2022-09-16 13:35:40 -05:00
21ea24ffa1
header style tweaks, deemphasizing it a bit v1.8.2 2022-06-05 21:30:49 -05:00
724a2240b2
requirements bump for latest release v1.8.1 2022-05-25 07:24:03 -05:00