willow.camp Release Notes Week Ending July 26, 2025

Here’s everything I did on willow.camp this week. It blows my mind how much I can get done when I’m having fun! I work on this app for about an hour every morning and evening.

Major Features Added

  • Featured posts functionality with toggle UI
  • Tap/click to edit a tag on the tags index page
  • Terms of Service page
  • Rack-attack integration for rate limiting and security (blocking PHP requests, credential probes)
  • Added no-index option to settings page for search engine control

UI/UX Improvements

  • Replaced inline SVG icons with heroicons gem
  • Enhanced mobile navigation by moving dashboard tabs to the hamburger menu
  • Updated tag UI with circular icon buttons
  • Replaced default Rails error pages with custom DaisyUI designs
  • Improved post actions UI with a dropdown menu and a modal delete confirmation
  • Added “Save Draft” and “Publish” buttons instead of a “Published” checkbox

Performance & Testing

  • Optimized Dashboard::TokensControllerTest (1.97s → 0.31s)
  • Optimized slow mermaid test by reducing markdown content in tests
  • Added Bullet gem for N+1 query detection
  • Fixed N+1 query in API posts controller
  • Re-enabled parallel test runs

Code Quality

  • Removed RuboCop entirely and only use StandardRB for code style
  • Added standard-rails gem for enhanced Rails linting
  • Updated Brakeman from 7.0.2 to 7.1.0
  • Merged willow_camp_cli history into cli/ subdirectory

Security & SEO

  • Enhanced request logging with user agent and subdomain info
  • Added CC license to GitHub repo

Bug Fixes

  • Fixed favicon controller error
  • Fixed mobile tag editing card UI updates
  • Fixed OG published_time tag for draft posts
  • Prevented mobile auto-capitalization for domain inputs