Release v1.5.0: UI improvements and Font Awesome removal#32
Merged
Conversation
Update deploy workflow to automatically: - Extract version from CHANGELOG.md after merge to main - Create and push git tag (e.g., v1.4.0) - Create GitHub release from CHANGELOG notes This eliminates manual tag creation step from release process. Workflow now: 1. Bump version on feature branch 2. Fill CHANGELOG.md 3. Create PR and merge 4. Tag and release created automatically
Remove space in .kiro/instructions/ link that was preventing proper navigation to agent-specific instructions directory.
Adjust hero logo positioning to remove horizontal offset on mobile screens. Moves transform from individual logo elements to container for cleaner responsive behavior.
Document architecture decision for gear inventory feature including: - YAML-based data storage in website/data/gear/ - Hugo template with expandable list and multi-select filters - CLI management script with fzf integration - AI-assisted gear addition via @add-gear prompt - SEO exclusion via robots.txt Files modified: - docs/adr/018-gear-inventory-management-and-display-system.md - new ADR - docs/adr/README.md - add ADR-018 to index
Implement command-line tool for managing gear inventory with: - Add/list/search/edit/delete operations - fzf integration for interactive selection - YAML validation and nested settings support - AI-assisted addition prompt Files added: - scripts/manage_gear.py - CLI management tool - mk/gear.mk - Makefile module for 'make gear' command - .kiro/prompts/add-gear.md - AI-assisted gear addition Files modified: - Makefile - include gear.mk module - requirements-dev.txt - add ddgs>=1.0.0 for web search
Create gear catalog page with: - Expandable list of gear items - Multi-select filters (category, manufacturer, type) - Search functionality - Visual filter tags with rust smoke effect - SVG filter for rough, hand-drawn borders - Nested settings support Files added: - website/layouts/gear/list.html - gear page template - website/content/gear/_index.md - gear page content - website/data/gear/*.yaml - gear data files (BD-2, RingerBringer, Data Corrupter) Features: - JavaScript filtering with OR logic within type, AND across types - Rough border effect using SVG feTurbulence filter - Dark minimal aesthetic with rust-colored filter tags
Implement dark minimal styling for gear page: - Rust-colored smoke effect on filter tags - Complex radial gradients (12 steps per smoke pocket) - Black gradient from left edge (0-15%) - Smoke pockets positioned at 35-85% horizontally - Rough border effect on inputs and gear items - Expandable gear items with smooth transitions - Responsive layout with flexbox Filter tag styling: - 3 smoke pockets with rust colors fading to transparent - Base layer with radial gradient black - Hover state with enhanced smoke effect - Remove button with color transition Gear item styling: - Rough borders using SVG filter - Clean text without distortion effects - Border hidden between header and details when expanded - Nested settings display support Files modified: - website/static/css/main.css - add 345 lines of gear page styles
Add navigation to gear page and configure SEO: - Link "analog filth" text to /gear/ page (same tab) - Create link render hook to only open external links in new tab - Add /gear/ to robots.txt Disallow list Files modified: - website/content/about/_index.md - add gear link - website/layouts/about/section.html - remove target=_blank JavaScript - website/static/robots.txt - add /gear/ to Disallow Files added: - website/layouts/_default/_markup/render-link.html - link render hook
Fix Hugo build error by moving changelog.txt out of data directory. Hugo expects only structured data files (YAML, JSON, TOML) in data/. Files modified: - website/data/changelog.txt - deleted - website/static/changelog.txt - moved here
Add the following pedals: - EarthQuaker Devices Hizumitas (Fuzz/Distortion) - Death By Audio Space Bender (Modulation/Chorus/Vibrato) - Electro-Harmonix Freeze (Sound Sustainer) - Intensive Care Audio Vena Cava Filter (Filter) - M.A.S.F. Pedals wata fUZZ (Fuzz/Distortion) - ZVEX Effects Super Duper 2-in-1 (Boost/Overdrive, nested settings) Files added: - website/data/gear/earthquaker-devices-hizumitas.yaml - website/data/gear/death-by-audio-space-bender.yaml - website/data/gear/electro-harmonix-freeze.yaml - website/data/gear/intensive-care-audio-vena-cava-filter.yaml - website/data/gear/masf-pedals-wata-fuzz.yaml - website/data/gear/zvex-effects-super-duper-2-in-1.yaml
Apply consistent border rendering technique across all gear page elements: - Move filter from wrapper element to ::before pseudo-element - Ensures text remains clean while borders have rough effect - Matches the styling used for gear item boxes Files modified: - website/static/css/main.css - update .input-wrapper border implementation
Add the following pedals: - Walovoid The Distroyer (Distortion/Fuzz) - Walovoid Filth Grinder II (Fuzz/Octaver with detailed controls) Files added: - website/data/gear/walovoid-the-distroyer.yaml - website/data/gear/walovoid-filth-grinder-ii.yaml
Layout improvements: - Change from vertical list to waterfall/masonry grid layout - 3 columns on desktop, 2 on tablet, 1 on mobile - Move search box to separate row above filters - Add rough border effect to search box New features: - Add "Expand All" / "Collapse All" toggle button - Button placed with filter controls - Matches filter control styling Files modified: - website/static/css/main.css - add grid layout, search wrapper, toggle button styles
Convert filter dropdowns to searchable inputs: - Replace select elements with input + datalist - Users can type to search/filter options - Validates selection against datalist options - Only adds filter on valid selection (change event) - Prevents adding filter on every keystroke Features: - Category, Manufacturer, and Type filters now searchable - Native HTML5 datalist for browser compatibility - Maintains rough border styling - Toggle all button functionality integrated Files modified: - website/layouts/gear/list.html - convert selects to datalist inputs, add toggle button logic
Add the following pedals: - Meris Ottobit Jr. (Bitcrusher/Sequencer, Hybrid) - Meris Hydra (Modulation/Chorus/Flanger/Phaser, Hybrid) - BOSS HM-2 Heavy Metal (Distortion/Fuzz, Analog) Files added: - website/data/gear/meris-ottobit-jr.yaml - website/data/gear/meris-hydra.yaml - website/data/gear/boss-hm-2-heavy-metal.yaml
Replace "Expand All" / "Collapse All" text with visual icons: - Show both ▲ (collapse) and ▼ (expand) icons - Highlight active icon (opacity 1.0) - Dim inactive icon (opacity 0.3) - Icons indicate current action (what will happen on click) Files modified: - website/layouts/gear/list.html - add icon spans, update toggle logic
Style toggle button icons with active/inactive states: - Flexbox layout for centered icon display - Active icon: full opacity (1.0) - Inactive icon: dimmed (0.3 opacity) - Smooth opacity transitions - Fix duplicate border-color declaration Files modified: - website/static/css/main.css - add icon styles and flexbox layout
Improve gear addition workflow to prevent incorrect controls: - Require web search for specifications - Examine product images to identify physical controls - Read control labels directly from photos - Never guess controls from similar products - Ask user if images aren't clear - Fix field name from 'type' to 'technology' in example This prevents adding incorrect control information by requiring visual verification of the actual hardware. Files modified: - .kiro/prompts/add-gear.md - add image examination requirements
Add the following gear: - Metsään Noise Nihil (Analog Delay/Feedback) - Rucci Electronics Bent Time Drive (Analog Delay/Distortion/Circuit Bending) - Sunmachine Effects Colossus (Analog Distortion/Fuzz) - JMT Synth DNVO-1 (Analog Drone Synth) - TH/FX Noisedevices Rita's Cracked Pointe Shoe (Analog Noise Generator/Distortion) - TC Electronic Flashback II X4 (Digital Delay) Files added: - website/data/gear/metsaan-noise-nihil.yaml - website/data/gear/rucci-electronics-bent-time-drive.yaml - website/data/gear/sunmachine-effects-colossus.yaml - website/data/gear/jmt-synth-dnvo-1.yaml - website/data/gear/thfx-noisedevices-ritas-cracked-pointe-shoe.yaml - website/data/gear/tc-electronic-flashback-ii-x4.yaml
Standardize all gear YAML files: - Rename 'settings' field to 'controls' (11 files) - Capitalize category values: 'pedal' → 'Pedal', 'synth' → 'Synth' - Capitalize technology values: 'analog' → 'Analog', 'digital' → 'Digital', 'hybrid' → 'Hybrid' - Remove quotes for consistency This ensures consistent field naming and display across all gear items. Files modified: - website/data/gear/*.yaml (all gear files)
Template improvements: - Change from 'settings' to 'controls' field - Display each type in separate badge (not comma-delimited) - Simplify template logic This allows each gear type (Delay, Distortion, etc.) to be displayed as individual badges instead of combined in one element. Files modified: - website/layouts/gear/list.html
Style improvements for gear badges: - Category (Pedal/Synth): Light gray background - Types (Delay, Distortion, etc.): Warm rust/brown tint - Technology (Analog/Digital/Hybrid): Cool blue tint - Remove duplicate flex-direction on mobile Each badge type now has subtle color variation for better visual distinction while maintaining the dark minimal aesthetic. Files modified: - website/static/css/main.css
Update 'make generate' to automatically compile the Hugo site after generating markdown from YAML data. This ensures gear changes are immediately compiled into the site without requiring a separate build step. Files modified: - mk/generate.mk
Implement Model Context Protocol server for managing gear inventory: Features: - add_gear: Add new gear with type-safe validation - list_gear: List all gear with optional filters - search_gear: Search by name, manufacturer, types, description - update_gear: Update existing gear fields (new capability) - delete_gear: Remove gear from inventory (new capability) Benefits: - Type-safe data validation (required fields, enums) - Consistent YAML formatting - Duplicate prevention - Atomic file operations - Better error handling Configuration: - .kiro/mcp.json: Workspace MCP server configuration - Auto-loads when Kiro CLI starts - Uses uv for automatic dependency management Files added: - .mcp/gear-server/server.py - MCP server implementation - .mcp/gear-server/pyproject.toml - Python dependencies - .mcp/gear-server/README.md - Usage documentation - .mcp/gear-server/SETUP.md - Setup guide - .mcp/gear-server/test_server.py - Test script - .kiro/mcp.json - MCP configuration Files modified: - AGENTS.md - Add MCP servers section - .kiro/prompts/add-gear.md - Update to use MCP tools
Rename .kiro/prompts/add-gear.md to gear-add.md for better naming consistency with gear-related commands. Updated usage examples in documentation to reflect new prompt name.
Remove unused gallery image arrays from Fridlyst Rauhoitettu and World Rat Conspiracy album pages. Gallery functionality not currently implemented in the music page template.
Add the following pedals with specifications and controls: - Death By Audio Rooms: Stereo reverb with 6 algorithms - Death By Audio Evil Filter: Multimode filter with fuzz - EarthQuaker Devices Acapulco Gold: Simple distortion pedal - EarthQuaker Devices Plumes: Tube-like overdrive with 3 clipping modes - Fairfield Circuitry Accountant: JFET feedback compressor All controls formatted in Title Case as per project convention.
- TC Electronic Ditto Looper: Minimalist looper with 5min loop time - TC Electronic Hall of Fame Reverb: Digital reverb with 10 types and TonePrint - Fairfield Circuitry Long Life: Parametric EQ with CV inputs - Death By Audio Fuzz War: Extreme fuzz with multi-curve tone control All pedals include controls, technology type, and manufacturer URLs.
Mark Death By Audio Rooms as Stereo type to enable filtering by stereo capability. This allows users to search for pedals with stereo inputs/outputs.
Make category, type, and technology badges clickable to add them as active filters. This provides a more intuitive way to filter gear by clicking on attributes directly from gear items. Changes: - Add onclick handlers to category, type, and technology badges - Add technology filter dropdown and filtering logic - Add hover effects to indicate clickable elements - Use event.stopPropagation() to prevent gear expansion on click Users can now filter by clicking badges or using the dropdown menus.
Update version partial to read from static/changelog.txt instead of data/changelog.txt after the file was moved. This restores the version number display in the footer (e.g., 'Site v1.4.0').
Remove the technology filter dropdown while keeping technology filtering via clickable badges. Technology can still be filtered by clicking on Analog/Digital/Hybrid badges on gear items.
Pedals: - TC Electronic Ditto Looper X2: Dual-switch looper with mode switch - Proco Rat 2: Classic distortion with 3-knob control Metsään pedals: - Echoblender: Experimental delay/distortion with 6 controls - Total Control: 3-band resonance filter with 7 controls Metsään synths: - Dirty Drone Lowlife: Subbass/drone generator with dual oscillators - Stochastic Asymmetry: Harsh noise generator with 5 oscillators - Landscape Stereo Field: Touch-reactive feedback synth with CV All items include manufacturer, category, types, technology, controls, descriptions, and product URLs.
Pedals: - Death By Audio Absolute Destruction: Extreme fuzz/distortion with power amp IC - Dunlop Cry Baby: Classic wah pedal - Moog Minifooger MF Trem v2: Analog tremolo with shape control - Saturnworks 4 Loop Looper: True bypass loop switcher - Lehle Dual Expression: Dual-output expression pedal Synths: - Olegtron 4060: CMOS chip drone synthesizer with patchboard - Error Instruments DATA Synth: Digital noise/glitch synth with algorithm control Instruments (new category): - Metsään Resin Contact Mic: Piezo contact mic embedded in resin - Dassum Shake Box: Amplified shaker with contact mic - Dassum Dual Clipper Mic: Dual contact mic system with clippers Files modified: - website/data/gear/death-by-audio-absolute-destruction.yaml - new - website/data/gear/olegtron-4060.yaml - new - website/data/gear/moog-minifooger-mf-trem-v2.yaml - new - website/data/gear/saturnworks-4-loop-looper.yaml - new - website/data/gear/lehle-dual-expression.yaml - new - website/data/gear/error-instruments-data-synth.yaml - new - website/data/gear/dunlop-cry-baby.yaml - new - website/data/gear/metsaan-resin-contact-mic.yaml - new (introduces Instrument category) - website/data/gear/dassum-shake-box.yaml - new - website/data/gear/dassum-dual-clipper-mic.yaml - new
Synths: - Korg SQ-1: 2x8 step analog sequencer with CV/Gate - Korg MS-20 FS: Full-size reissue of legendary semi-modular synth - Moog Grandmother: Semi-modular analog synth with spring reverb - Moog Werkstatt-01 & CV Expander: Compact patchable analog synth Instruments: - Allen & Heath ZED-10: 4-channel analog mixer with USB interface - Orange OR15 H: 15-watt tube amp head with 3-band EQ - Orange PPC112: 1x12" speaker cabinet with Celestion speaker - Orange Crush 10: 10-watt practice combo with dual gain channels Files added: - website/data/gear/korg-sq-1.yaml - new - website/data/gear/korg-ms-20-fs.yaml - new - website/data/gear/moog-grandmother.yaml - new - website/data/gear/moog-werkstatt-01-cv-expander.yaml - new - website/data/gear/allen-heath-zed-10.yaml - new - website/data/gear/orange-or15-h.yaml - new - website/data/gear/orange-ppc112.yaml - new - website/data/gear/orange-crush-10.yaml - new
Document decision to use directory-based archiving with URL parameter for showing archived gear. Archived items stored in separate directory and only displayed when ?archived parameter is present. Files modified: - docs/adr/019-archived-gear-visibility-system.md - new ADR
Add directory-based archiving with URL parameter control. Archived gear stored in website/data/gear/archived/ and only displayed when visiting /gear/?archived. Archived items shown with reduced opacity and gray styling. Features: - Archive/unarchive functions in management script - Hidden by default with inline style - JavaScript shows archived items when ?archived parameter present - CSS styling for grayed out archived items Files modified: - scripts/manage_gear.py - add archive_gear() and unarchive_gear() - website/layouts/gear/list.html - render archived items conditionally - website/static/css/main.css - archived item styling - website/data/gear/archived/ - new directory with 13 archived items
Update category for Orange OR15 H, Crush 10, and PPC112 to properly categorize them as amplifiers instead of instruments. Files modified: - website/data/gear/orange-or15-h.yaml - category: Amplifier - website/data/gear/orange-crush-10.yaml - category: Amplifier - website/data/gear/orange-ppc112.yaml - category: Amplifier - website/data/gear/orange-tiny-terror-head.yaml - new amplifier
Add three electric guitars, one amplifier head, and one speaker
cabinet to the active gear inventory.
Instruments:
- Gibson Les Paul Standard 2013
- Jackson ATX Dinky
- Epiphone Gibson Stratocaster
Amplifiers:
- Sound City Mark 4 (MKIV) 120 ('75) - 120W tube head from 1975
- HIWATT SE4123F - 4x12" speaker cabinet
Files added:
- website/data/gear/gibson-les-paul-standard-2013.yaml
- website/data/gear/jackson-atx-dinky.yaml
- website/data/gear/epiphone-gibson-stratocaster.yaml
- website/data/gear/sound-city-mark-4-mkiv-120-75.yaml
- website/data/gear/hiwatt-se4123f-guitar-extension-speaker-cabinet.yaml
- Add centered logo and tagline to README - Add centered documentation links - Add gallery images to World Rat Conspiracy (7 inside images) - Add gallery images to Fridlyst / Rauhoitettu (2 inside images) - Move Bandcamp/Discogs icons next to artist name in album header - Icons align right on desktop, wrap below if needed - Icons stack below artist name on mobile Files modified: - README.md - Vercel-style header with logo and links - logo.png - New project logo - website/content/music/world-rat-conspiracy.md - Gallery images - website/content/music/fridlyst-rauhoitettu.md - Gallery images - website/layouts/music/single.html - Header icons layout
- Add Open Graph and Twitter Card meta tags with logo image - Social shares now display obscvrat-logo-static.png (756x306px) - Add vignette effect to video thumbnails on media page - Vignette uses inset box-shadow for darkened edges Files modified: - website/layouts/partials/og-tags.html - Social media preview tags - website/layouts/media/list.html - Vignette effect on media items
- Add mobile tap feedback for better touch interaction - Remove default iOS tap highlight - Add custom active state (60% opacity, 98% scale) - Fast 0.15s transition for responsive feel - Replace Font Awesome camera icon with custom SVG - Add camera.svg icon (14x14px) - Replace fa-camera with SVG on media page - Force no blur on icon to keep it sharp on hover - Use explicit color (#e5e5e5) for visibility Files modified: - website/static/css/main.css - Mobile tap feedback styles - website/layouts/media/list.html - Camera SVG icon - website/static/icons/camera.svg - New camera icon
Remove Font Awesome library entirely and replace with custom SVG icons from SVG Repo, saving ~70KB of CSS download. Icons replaced: - Instagram: Custom SVG (outline style) - Bandcamp: Custom SVG (parallelogram logo) - YouTube: Custom SVG (play button logo) - Camera: Custom SVG (for photo credits) All icons use #b0b0b0 color to match site's secondary color. Files modified: - website/layouts/_default/baseof.html - Remove Font Awesome CDN - website/layouts/partials/footer.html - SVG icons for social links - website/layouts/license/section.html - Update credits to SVG Repo (MIT) - website/layouts/media/list.html - Update comment - website/static/icons/bandcamp.svg - New icon - website/static/icons/instagram.svg - New icon - website/static/icons/youtube.svg - New icon
Major improvements to site UI and performance: - Vercel-style README with logo - Social media preview images - Mobile tap feedback - Album gallery images - Custom SVG icons replacing Font Awesome (~70KB saved) - Vignette effects on videos - Improved album page layout with header icons
- Update README.md to show v1.5.0 - Update website/static/changelog.txt with v1.5.0 changes - Fix bump_version.py to update all version files: - CHANGELOG.md (already working) - website/static/changelog.txt (was website/data) - README.md (was missing) This ensures version stays in sync across the site.
- Add Agent Limitations section to AGENTS.md - Document that agents may violate role boundaries - Provide best practices for users to catch violations - Note that technical enforcement would be better - Add Fairfield Circuitry Unpleasant Surprise to gear inventory - Fuzz/Gate pedal with analog technology - Controls: Volume, Onset, 3x 2-position switches Files modified: - AGENTS.md - Agent limitations documentation - website/data/gear/fairfield-circuitry-unpleasant-surprise.yaml - New gear
✅ CI Checks: PASSEDAll checks passed - ready to review! Results Summary
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Release v1.5.0 with major UI improvements and performance optimizations.
Changes
Added
Changed
Fixed
Testing
Deployment
After merge, the deploy workflow will automatically: