| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
post afterimage
Amp-Thread-ID: https://ampcode.com/threads/T-019db698-f351-7161-a397-1cce1fdab440
Co-authored-by: Amp <amp@ampcode.com>
|
|
first-visit burst
Amp-Thread-ID: https://ampcode.com/threads/T-019db698-f351-7161-a397-1cce1fdab440
Co-authored-by: Amp <amp@ampcode.com>
|
|
Amp-Thread-ID: https://ampcode.com/threads/T-019db698-f351-7161-a397-1cce1fdab440
Co-authored-by: Amp <amp@ampcode.com>
|
|
|
|
|
|
|
|
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
|
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>
|
|
- 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>
|
|
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
|
- 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>
|
|
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>
|
|
- 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>
|
|
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>
|
|
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>
|
|
|
|
Made-with: Cursor
|
|
(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
|
|
Amp-Thread-ID: https://ampcode.com/threads/T-019d94cc-99a9-74af-8f3d-9521cd73324f
Co-authored-by: Amp <amp@ampcode.com>
|
|
Amp-Thread-ID: https://ampcode.com/threads/T-019d94cc-99a9-74af-8f3d-9521cd73324f
Co-authored-by: Amp <amp@ampcode.com>
|
|
Amp-Thread-ID: https://ampcode.com/threads/T-019d94cc-99a9-74af-8f3d-9521cd73324f
Co-authored-by: Amp <amp@ampcode.com>
|
|
|
|
|
|
Amp-Thread-ID: https://ampcode.com/threads/T-019d7b31-fd6a-7378-9eb0-fa080df2906d
Co-authored-by: Amp <amp@ampcode.com>
|
|
--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
|
|
PgUp/PgDn scroll the post list with nav sound; hint bar documents shortcuts.
Made-with: Cursor
|
|
Testable CLI flags; version package under internal/version; broad tests for
atom, generator, post, processor, and cmd—overall coverage ~85%.
Made-with: Cursor
|
|
|
|
Rework aurora theme splash: ribbon aurora WebGL, sky stars/glow, refreshed title.
Made-with: Cursor
|
|
Per-theme Web Audio presets; pagination footer bar with reduced height;
brutalist splash label tweak; doc updates.
Made-with: Cursor
|
|
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
|
|
Add standalone pipeline tests for .jpg, .jpeg, and .gif (previously only
.png was exercised as a lone image). Rename TestImageInput to TestPNGInput
and factor shared HTML/asset assertions into assertStandaloneImagePost.
Introduce writeSampleJPEG/writeSampleGIF and sampleRGBAImage helpers.
Made-with: Cursor
|
|
Made-with: Cursor
|
|
Clarify in package comment and Run docstring that files are processed in
order, successful sources are removed before later files run, and on error
the returned count reflects posts already created.
Made-with: Cursor
|
|
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
|
|
Markdown uses goldmark html.WithUnsafe for intentional raw HTML in
personal-inbox posts. Package and processMd comments state the trust
model and warn against untrusted input on the same path.
Made-with: Cursor
|
|
claimedByMarkdown now wraps os.ReadFile failures instead of skipping,
so Run fails fast and avoids wrong image claim state. Add regression
test using an unreadable markdown file (Unix).
Made-with: Cursor
|
|
Cover NewID; txt autolink helpers; markdown local image discovery;
pagination, page filenames, JSON script literals, time formatting,
and buildPageData nav links.
Made-with: Cursor
|
|
Introduce Version constant (0.0.1) in internal/version.go and wire
-version/-v in cmd/snonux to print it and exit successfully.
Made-with: Cursor
|
|
buildMarkdownPost no longer removes referenced images during build.
buildPost returns inboxExtras paths; processFile removes them after
p.Save(postDir) succeeds, matching source file deletion ordering and
avoiding loss of originals if Save fails.
Made-with: Cursor
|
|
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>
|
|
- 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>
|
|
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>
|
|
|
|
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|