Paul Bailey ef6a0bf5af feat: Set up PWA infrastructure with service worker, offline support, and manifest
- Created service worker (public/sw.js) with caching strategies
  - Cache-first strategy for static assets
  - Stale-while-revalidate for API responses and pages
  - Network-first fallback strategy
- Implemented offline fallback page (/offline)
- Updated manifest.json with complete PWA metadata
- Added service worker registration in app layout
- Created ServiceWorkerRegistration component for client-side registration
- Generated SVG icons for PWA (192x192 and 512x512)
- Added PWA meta tags for iOS Safari support

Validates Requirements: 4.1, 4.3, 4.4
2025-12-01 20:30:07 +00:00

Ultimate Lists App

A powerful, self-hosted todo list application built with Next.js that works as a Progressive Web App (PWA).

Features

  • 📱 Works as a Safari web app (no App Store needed)
  • 🗄️ Self-hosted with SQLite database
  • ✅ Multiple lists with custom colors
  • 📋 Rich todo items with descriptions, priorities, and due dates
  • 🎨 Clean, responsive design
  • ⚡ Fast server-side rendering

Getting Started

  1. Install dependencies:
npm install
  1. Set up the database:
npm run db:push
  1. Run the development server:
npm run dev
  1. Open http://localhost:3000 in Safari

Adding to Home Screen (Safari)

  1. Open the app in Safari
  2. Tap the Share button
  3. Select "Add to Home Screen"
  4. The app will now work like a native app!

Deployment

Build for production:

npm run build
npm start

The app uses SQLite, so no external database setup is required.

Tech Stack

  • Next.js 14 - React framework with App Router
  • Prisma - Database ORM
  • SQLite - File-based database
  • Tailwind CSS - Styling
  • TypeScript - Type safety
  • Lucide React - Icons
Description
No description provided
Readme 1.3 MiB
Languages
TypeScript 93.4%
JavaScript 4.4%
HTML 1.5%
CSS 0.6%