A little housekeeping for jedmund.com
Find a file
Justin Edmund 274f1447a2 refactor(server): improve utilities and admin endpoints
- Enhance Apple Music client error handling
- Improve Cloudinary audit functionality
- Update Cloudinary utilities for better performance
- Enhance logger with better formatting
- Add media statistics endpoint
- Improve thumbnail regeneration process
- Update Last.fm stream with better error handling
- Add better TypeScript types throughout

Improves server-side reliability and performance.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-24 01:14:57 +01:00
.storybook
docs feat: add Cloudinary audit functionality 2025-06-16 16:56:05 +01:00
prd Apple Music API 2025-06-13 21:22:39 -04:00
prisma feat(database): redesign album system with content support and geolocation 2025-06-24 01:10:54 +01:00
scripts feat(colors): improve color analysis with better algorithms and scripts 2025-06-24 01:13:12 +01:00
src refactor(server): improve utilities and admin endpoints 2025-06-24 01:14:57 +01:00
static
.env.example Apple Music API 2025-06-13 21:22:39 -04:00
.gitignore feat: add database backup and restore functionality 2025-06-19 01:58:37 +01:00
.node-version
.npmrc
.prettierignore
.prettierrc
CLAUDE.md
eslint.config.js
LOCAL_SETUP.md
package-lock.json Add better masonry and infinite scrolling 2025-06-16 09:58:07 +01:00
package.json feat: add database backup and restore functionality 2025-06-19 01:58:37 +01:00
README.md Fix Cloudinary media audit 2025-06-17 08:13:43 +01:00
svelte.config.js
test-db.ts
test-form-loading.js
tsconfig.json
vite.config.ts Fix unused CSS selector warnings 2025-06-13 15:05:18 -04:00

jedmund.com

Personal portfolio website built with SvelteKit featuring a content management system for showcasing creative work, writing, and personal interests.

Features

  • Content management system for organizing and displaying various types of media
  • Photo galleries with masonry layout and infinite scrolling
  • Blog/journal section for long-form writing
  • Music listening history integration via Last.fm API
  • Gaming activity tracking from Steam and PlayStation
  • Project showcase pages with detailed case studies
  • Responsive design with customizable themes

Tech Stack

  • SvelteKit with Svelte 5 (Runes mode)
  • Redis for caching external API responses
  • SCSS for styling
  • Integration with Last.fm, Steam, PSN, iTunes, and Giant Bomb APIs

Development

Install dependencies:

npm install

Start development server:

npm run dev

Build for production:

npm run build

Environment Variables

Required environment variables:

  • LASTFM_API_KEY - Last.fm API key for music data
  • REDIS_URL - Redis connection URL for caching

Optional environment variables:

  • DEBUG - Enable debug logging for specific categories (e.g., DEBUG=music for music-related logs)

Commands

  • npm run dev - Start development server
  • npm run build - Build for production
  • npm run preview - Preview production build
  • npm run check - Type check with svelte-check
  • npm run lint - Check formatting and linting
  • npm run format - Auto-format code with prettier