Commit graph

104 commits

Author SHA1 Message Date
blankie
3c431af082 Added per-subscription nickname override 2026-07-26 16:39:20 -07:00
blankie
c20de93306 tests: add customize and data handler tests (35 new) 2026-07-03 02:40:49 +00:00
blankie
ae3f02fa31 fix: add summary column to pages schema, fix test mocks and gateway fake 2026-07-03 02:35:47 +00:00
blankie
83430f68b4 docs(readme): remove about section (LLM/personal disclosure) 2026-07-03 02:29:09 +00:00
blankie
0639cf0f0e chore: remove pre-release schema migrations 2026-07-03 02:18:13 +00:00
blankie
5b79f2f83f docs(contributing): expand with setup, conventions, and PR guidelines 2026-07-02 23:54:07 +00:00
blankie
b932ca03c3 security: replace personal email with confidential issue reporting 2026-07-02 23:32:58 +00:00
blankie
61408ec955 readme: add RNS browsing to features, update storage estimates for cleaned-text model 2026-07-02 23:27:42 +00:00
blankie
a4322737f9 rns: store cleaned text instead of raw HTML body 2026-07-02 23:27:05 +00:00
blankie
68a92a677a base tag + LRU cache for RNS browse, sync status fixes 2026-06-19 02:17:11 +00:00
blankie
025db00858 rns browser, standalone site server, unified add form
- /rns/<hash>/<path> proxies pages over RNS with link rewriting
- fetch_remote_page() in rns_client.py for generic RNS page fetching
- mesh_sites table for persisting saved hashes
- standalone site_server.py with its own RNS identity
- tinyweb-site/index.html: SPA with RSS-aware nav (/rns/<hash>/ prefix)
- unified /add form: single input accepts URL or 32-char RNS hash
- RNS add indexes into pages table (fetch root page, extract title/desc)
- rns:<hash> URLs displayed in browse/search, linked to /rns/<hash>/
- expand RNS whitelist: allow GET /, /about, /pages, /tags, /share
2026-06-18 20:38:42 +00:00
blankie
4999675ff6 forum trust circle: trust-gated content exchange via subscription graph 2026-06-17 20:16:30 +00:00
blankie
4ac22a472b fix: app.py gateway import alias (broken since src layout migration) 2026-06-17 20:16:06 +00:00
blankie
4fbf36779a forum trust circle: trust-gated content exchange via subscription graph 2026-06-17 20:15:50 +00:00
blankie
257be691ed readme: update project structure to reflect src layout 2026-06-17 05:16:34 +00:00
blankie
3e30678e21 src layout: move core code into src/tinyweb/ package
- Moved app.py, db.py, gateway.py, templates.py, embeddings.py,
  rns_client.py, and handlers/ into src/tinyweb/
- Created root app.py shim (adds src/ to sys.path, imports main)
- Created pyproject.toml with setuptools config (where = ["src"])
- Added src/tinyweb/__init__.py
- Updated all internal imports to use tinyweb. prefix (73 occurrences)
- Removed sys.path.insert hack from conftest.py
- Updated Dockerfile: pip install -e /app before running
- Updated gateway.py usage message: python -m tinyweb.gateway
- Updated README.md gateway usage instructions
2026-06-17 05:03:23 +00:00
blankie
60aa4b274a junimo theme: use {{site_name}} and {{forum_link}} placeholders 2026-06-16 05:23:24 +00:00
blankie
66a9fafd26 remove demo pages, rename themes, add Content-Length header 2026-06-16 05:11:37 +00:00
blankie
0f614c88f8 auto-save: settings save on change via /style/field, noscript fallback button 2026-06-14 08:46:21 +00:00
blankie
1dc87ac449 customize: split into separate settings and template forms 2026-06-14 08:14:43 +00:00
blankie
38860de7d2 customize: move save button above html textarea, add unsaved changes indicator 2026-06-14 08:12:10 +00:00
blankie
f4e5c7efd1 template: remove forum css from DEFAULT_TEMPLATE (injected at render time) 2026-06-14 08:05:20 +00:00
blankie
d9e89e8124 template: add {{nav}} placeholder, separate from {{content}} 2026-06-14 08:00:57 +00:00
blankie
71c1175df8 docker: fix data persistence with TINYWEB_DATA_DIR env var 2026-06-14 07:48:34 +00:00
blankie
af6ad6d391 bookmarklet: use dynamic host and scheme from request headers 2026-06-14 07:43:26 +00:00
blankie
96603da142 simplify: move subscribe form to GET /subscriptions/add 2026-06-14 07:36:37 +00:00
blankie
a008bc7aed Revert "simplify: move subscribe form to GET /subscriptions/add"
This reverts commit 25e24efbfa.
2026-06-14 07:33:38 +00:00
blankie
492f98fed9 simplify: move subscribe form to GET /subscriptions/add 2026-06-14 07:32:58 +00:00
blankie
faa28005e3 readme: remove duplicate forum section 2026-06-09 05:58:55 +00:00
blankie
1962e3e1b6 search: match by tag; add: handle ssl errors with manual entry 2026-06-09 05:35:54 +00:00
blankie
613e43e925 restructure README: expand getting started, demote Docker 2026-06-09 03:18:23 +00:00
blankie
ad26f71a9c add CONTRIBUTING.md and issue template 2026-06-09 03:15:55 +00:00
blankie
f06afa4cfb add SECURITY.md 2026-06-09 03:11:43 +00:00
blankie
8ca4d90416 README: add transparency sections, TOC, update project structure 2026-06-09 03:06:38 +00:00
blankie
16dacbf7ed split handlers.py into handlers/ package
- _helpers.py: CSRF, FTS sanitizer, pagination, response helpers, tag helpers
- search.py: BM25 + hybrid search, trusted/remote result rendering
- pages.py: add/edit/delete/bulk/bookmark handlers
- subscriptions.py: sync, share preview, API sites, subscription CRUD
- customize.py: settings form, about page
- tags.py: tag list and tag browse handlers
- data.py: export, import, semantic reindex handlers
- __init__.py: dispatch, re-exports, forum_plugin, _request_local

All 58 external symbols re-exported. No changes to app.py, conftest.py,
or any test file.
2026-06-09 02:34:04 +00:00
blankie
395beff0fc add .env.example for environment configuration 2026-06-09 02:14:17 +00:00
blankie
a15b1ebcc8 point repo URLs to Codeberg instead of self-hosted Gitea 2026-06-09 01:41:41 +00:00
blankie
e173e23087 clean up: remove unused start.sh/pyinstaller.spec, deduplicate constants, update .gitignore 2026-06-09 01:16:54 +00:00
blankie
608abb0501 remove forgejo CI workflow (no releases) 2026-06-09 01:08:39 +00:00
blankie
304f1eedf9 threaded HTTP server, rate limiting, remove slow-web rhetoric 2026-06-09 01:07:36 +00:00
blankie
63610145ee rewrite README — descriptive tone, remove releases/philosophy sections 2026-06-09 01:07:09 +00:00
blankie
d60abcfce1 move forum layout CSS to main site template system
- Remove FORUM_CSS_DEFAULT/KODAMA2 and _forum_css() from forum handlers
- Add FORUM_CSS constant to templates.py with layout-only forum CSS
- Inject forum CSS into any template's <head> via wrap_page()
- Add forum layout styles to kodama2.html theme
- Update database custom template
2026-06-06 01:41:41 +00:00
blankie
bfde52a697 added tinyweb-site theme 2026-06-05 05:29:36 +00:00
blankie
6174153612 added site_name placeholder to templates 2026-06-05 05:29:36 +00:00
blankie
ea87a848e0 hid forum link when disabled 2026-06-05 05:29:36 +00:00
blankie
29934dcf1b updated forum README with auto-discovery 2026-06-05 05:29:36 +00:00
blankie
20a84dfa26 integrated the forum plugin 2026-06-05 05:29:36 +00:00
blankie
d23751acb6 reworked to distribute via clone, not registry 2026-06-05 05:29:36 +00:00
blankie
7aaebd8021 fixed Docker socket mount 2026-06-05 05:29:36 +00:00
blankie
01164b6ab6 switched to host-mode Docker 2026-06-05 05:29:36 +00:00