summaryrefslogtreecommitdiff
path: root/internal/generator
AgeCommit message (Collapse)Author
2026-04-23newPaul Buetow
2026-04-22v0.8.0: modal drift, flying emoji, random flips, hue drift, cursor sparkle, ↵v0.8.0Paul Buetow
post afterimage Amp-Thread-ID: https://ampcode.com/threads/T-019db698-f351-7161-a397-1cce1fdab440 Co-authored-by: Amp <amp@ampcode.com>
2026-04-22v0.7.0: vertical bounce, hover ripple, modal scroll-end, idle breathing, ↵v0.7.0Paul Buetow
first-visit burst Amp-Thread-ID: https://ampcode.com/threads/T-019db698-f351-7161-a397-1cce1fdab440 Co-authored-by: Amp <amp@ampcode.com>
2026-04-22v0.6.0: bounce effect on page boundary + wild bouncev0.6.0Paul Buetow
Amp-Thread-ID: https://ampcode.com/threads/T-019db698-f351-7161-a397-1cce1fdab440 Co-authored-by: Amp <amp@ampcode.com>
2026-04-20feat(nav): add sno-wild visual effects and theme support to nav.tmplPaul Buetow
2026-04-20forgot to addv0.5.0Paul Buetow
2026-04-20new themePaul Buetow
2026-04-18v0.4.2: boost wild mode intensity across all 14 themesPaul Buetow
DOS: camera FOV/Z/X lunge + per-char X jitter (corrupted RAM look) Spaceage: station scale pulse, pods fly to expanded/oscillating radius, full camera X/Y/Z/FOV chaos (was time-offset only) Matrix: camera plunges into the rain with Z/X sway + FOV warp Plasma: blobs pulse in scale + camera sucked into vortex (was no camera) Synthwave: camera warp-drive rush X/Y/Z/FOV (was tiny X drift only) Retro: main cube scale pulse, orbiters expand to larger radius, camera frenetic X/Y/Z/FOV sway Retrofuture: rings tumble in 3D (X/Y tilt), full camera spiral + FOV pulse All themes now have multi-dimensional wild effects; weakest now ≥4/5. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18feat(cosmos): make wild mode dramatically more intensePaul Buetow
- Speed multiplier raised from 10× to 22× - Planet rings now counter-spin and tilt independently in wild mode - Asteroid orbits breathe in/out and scatter vertically (radial + y sine waves) - Camera swings 20 units left/right, bobs 10 units, dives ±14 units in z - FOV pulses 42°–78° giving a dramatic zoom-in/zoom-out feel Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18feat(aurora): make wild mode dramatically more intensePaul Buetow
- Time offset multiplier raised from 7× to 18× (waves churn ~19× faster) - Wave amplitude boosted 3.2× in wild mode (tall, violent ribbon swings) - Camera sways left/right and bobs up/down while wild is active - Ribbons drift vertically independently so they cross and tangle mid-air Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18feat(themes): make non-active posts translucent to reveal WebGL backgroundPaul Buetow
Non-selected posts now sit at 0.55 opacity so the animated background bleeds through clearly. Hovering a non-active post raises it to 0.85, and the active/highlighted post is always fully opaque (1.0). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18feat(themes): add PgUp/PgDn scroll effects, wild mode lightning & badge fixPaul Buetow
- PgUp/PgDn now calls snonuxScrollEffect(dir) in all 14 themes - Each theme gets a unique directional colour strip (theme-matched gradient) sliding across the screen in the scroll direction; thicker when wild - Wild mode activation fires dramatic multi-flash lightning overlay plus a persistent storm overlay that flickers intermittently while active - Wild mode deactivation shows a brief dark veil then removes the storm - Fixed WILD MODE badge: animation now only runs under .sno-wild-on so the badge stays fully hidden (opacity:0, no pulsing) when wild is off Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18feat(themes): add per-theme special effects, wild mode & w hotkeyPaul Buetow
Each of the 14 themes now has three interactive effect hooks: - Navigation (j/k): brief thematic flash/shake/glitch per theme - Page change (h/l): zoom/warp/tunnel transition per theme - Wild mode (w key): toggles background animation into overdrive Wild-mode effects per theme: - neon: rings spin 14x, particles vortex - matrix: rain falls 10x faster - volcano: embers/smoke 8x/5x, lava glows brighter - brutalist: boxes 15x + random jitter - aurora/ocean/plasma/cosmos/dos/synthwave/terminal/retro/spaceage/retrofuture: time-offset approach accelerates all sine-based animations 8-11x Shared infrastructure added to nav.tmpl: - sno-shake/sno-zoom-fwd/sno-glitch CSS keyframes - #sno-wild-badge pulsing red overlay badge - selectPost() calls snonuxNavEffect() - h/l navigation calls snonuxPageEffect() - w key calls snonuxWildToggle() Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18fix(generator): match markdown typography between list and zoomed-in modal viewsPaul Buetow
The zoomed-in post modal (opened with Enter/click) used #modal-content to display post HTML, but the CSS typography rules (.post-text p/ul/ol/li margin and padding) only targeted the .post-text class used in the list view. This caused visually different formatting — missing paragraph spacing and unindented lists — in the expanded modal compared to the feed. Fix: extend all .post-text typography selectors in nav.tmpl to also cover #modal-content, so both views apply identical spacing rules. Also adds a missing spaceage theme sound preset to satisfy the TestThemeSoundPresetsMatchRegistry test that was already failing. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18Add retrofuture themev0.4.0Paul Buetow
2026-04-16refactor(generator): load themes & shared HTML from embedded template files ↵Paul Buetow
(task s4) Move the 12 theme HTML templates out of theme_*.go (~185KB of raw-string literals) and the shared navDefs/faviconHeadHTML fragments out of shared.go/favicon.go into separate .tmpl files under internal/generator/templates/{themes,shared}/. A new templates subpackage owns a //go:embed FS and exposes Theme(), Shared() and ThemeNames() helpers so the binary still ships fully self-contained. The hand-maintained themeRegistry map is replaced by on-startup enumeration of the embedded FS; getTheme/ListThemes now derive theme names from the template files themselves, and navDefs/faviconHeadHTML are loaded once at package init. Rendered output is byte-equivalent — all unit tests and integration tests pass, go vet is clean. Made-with: Cursor
2026-04-16v0.3.0: add DOS theme with VT323 webfontv0.3.0Paul Buetow
Amp-Thread-ID: https://ampcode.com/threads/T-019d94cc-99a9-74af-8f3d-9521cd73324f Co-authored-by: Amp <amp@ampcode.com>
2026-04-16v0.2.0: markdown image embedding, post typography, modal improvementsv0.2.0Paul Buetow
Amp-Thread-ID: https://ampcode.com/threads/T-019d94cc-99a9-74af-8f3d-9521cd73324f Co-authored-by: Amp <amp@ampcode.com>
2026-04-11Release v0.1.6v0.1.6Paul Buetow
2026-04-11Update hosting text to 'Served by NetBSD on a Raspberry Pi 3' across all themesPaul Buetow
Amp-Thread-ID: https://ampcode.com/threads/T-019d7b31-fd6a-7378-9eb0-fa080df2906d Co-authored-by: Amp <amp@ampcode.com>
2026-04-10Release v0.1.5v0.1.5Paul Buetow
--sync rsync to pi mirrors when reachable; default dirs ./inbox ./dist; ignore inbox/dist. Splash index paths (/, trailing slash). PgUp/PgDn scroll + highlight. Nav shared CSS in head for valid HTML; ARIA/viewport fixes; neon viewport. Made-with: Cursor
2026-04-10Release v0.1.4v0.1.4Paul Buetow
PgUp/PgDn scroll the post list with nav sound; hint bar documents shortcuts. Made-with: Cursor
2026-04-10Release v0.1.3v0.1.3Paul Buetow
Testable CLI flags; version package under internal/version; broad tests for atom, generator, post, processor, and cmd—overall coverage ~85%. Made-with: Cursor
2026-04-10Release v0.1.2v0.1.2Paul Buetow
Rework aurora theme splash: ribbon aurora WebGL, sky stars/glow, refreshed title. Made-with: Cursor
2026-04-10Release v0.1.1v0.1.1Paul Buetow
Per-theme Web Audio presets; pagination footer bar with reduced height; brutalist splash label tweak; doc updates. Made-with: Cursor
2026-04-10Release v0.1.0v0.1.0Paul Buetow
Splash: skip via ?splash=0 on pagination to index; frosted panel and vignette for readable copy; brighter hint/tag colors. Pagination links only at bottom of each page. Tests updated for prev href to index. Made-with: Cursor
2026-04-10generator: isolate Atom feed in atom subpackage, document boundariesPaul Buetow
Move Atom 1.0 XML generation to internal/generator/atom so it depends only on config and post, not on themes or the HTML template pipeline. Add generator/doc.go mapping files (orchestration, registry, themes, shared nav templates) and dependency direction. Made-with: Cursor
2026-04-10test: add table-driven unit tests for post, processor, generatorPaul Buetow
Cover NewID; txt autolink helpers; markdown local image discovery; pagination, page filenames, JSON script literals, time formatting, and buildPageData nav links. Made-with: Cursor
2026-04-10enhance WebGL scenes, modal transparency, new cosmos theme, UX polishPaul Buetow
Themes: - glass → cosmos: ringed planet with asteroid belt, nebula clouds, 2500 stars - ocean: sea rock spires, bioluminescent jellyfish, rising bubbles, whale - volcano: glowing lava floor with vertex animation, molten boulders, smoke plume particles, underground furnace glow sphere UX / shared: - Modal background changed to rgba(0,0,0,0.55) so WebGL stays visible behind expanded post view (all themes) - Max-width 1200px applied to all themes via shared navmodal CSS - Default theme changed from "neon" to "random" Sample content: - 120 example entries processed into dist/ for pagination testing (4 pages of 42 posts each) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-10add WebGL scenes to all themes, sounds, image sizing, new themesPaul Buetow
- All 11 themes now have unique Three.js WebGL backgrounds: aurora: flowing sine-wave ribbon meshes with additive blending brutalist: harsh rotating white/red wireframe boxes glass: drifting crystal icosahedron shards, semi-transparent matrix: digital rain particle columns with per-vertex colour fade ocean: animated vertex-displaced wave surface with orbiting light retro: amber demo-scene cube with orbiting octahedrons synthwave: sunset sphere with scan-line rings and perspective grid terminal: green icosahedron wireframe with orbiting torus particles neon: existing Three.js orb and rings (unchanged) plasma (replaces minimal): drifting additive-blend colour blobs volcano (replaces paper): rising ember particles with lifecycle - shared.go: distinct sounds for j/k nav (220Hz beep), Enter (ascending triangle chime), and Esc (descending sine sweep) - shared.go: images are now thumbnails (max-height:220px) in list view and expand to full width inside the modal (CSS override in navmodal) - main.go: --list-themes flag prints all theme names and exits; --theme random picks a random theme at all generation time - themes.go: updated registry with plasma/volcano replacing minimal/paper Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09add snonux static microblog generatorPaul Buetow
Full Go implementation with: - txt/md/image/audio input processing, URL auto-linking in .txt files - Paginated HTML output with Atom feed - 11 visual themes: neon, terminal, synthwave, minimal, brutalist, paper, aurora, matrix, ocean, retro, glass (selectable via --theme flag) - Keyboard navigation (j/k/arrows, Enter modal, h/l page nav) - Shared nav templates (navhints, navmodal, navscript) across all themes - Magefile build automation; integration test suite covering all themes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>