# Haver — Prayer App A minimalist PWA for journaling prayers and tracking answered prayers. Built with Next.js, Firebase, and Tailwind. Current Version: 0.2.0 ## What's New (0.2.0) - Redesign: unified dark theme and gradients - Icons: lucide-react across headings and nav - Cleanup: removed legacy email routes and pages - UX: Pray For suggestions in compose tab ## Features - Firebase auth (login) - Compose daily prayer with date and optional "Pray For" - Suggested "Pray For" names via dropdown (type to add new) - Mark prayers as answered with details - Calendar view of entries - Reflections list with search and filters - Answered prayers gallery - Reminder banner + notification time settings - PWA installable; dark theme by default ## Versioning Policy - Uses semantic versioning: major.minor - Minor: UI/UX tweaks, non-breaking features - Major: structural changes or breaking updates ## Setup 1. Create a Firebase project (Authentication + Firestore) 2. Add your Firebase config to [src/lib/firebase.ts](src/lib/firebase.ts) 3. Start the dev server ## Notes - Email sending routes have been removed in the redesign. - Email verification remains available via Firebase. ## Firestore Rules Deploy [firestore.rules](firestore.rules) to secure user data. ## Development - `npm run dev` — start dev server - `npm run build` — production build - `npm run lint` — lint code - `npm test` — run tests ## Troubleshooting ### Common Issues 1. **Firebase Configuration**: Ensure all Firebase config values are correctly set in `src/lib/firebase.ts`. 2. **SMTP Settings**: Verify SMTP credentials in the Admin panel. Use app passwords for Gmail. 3. **PWA Installation**: Clear browser cache if PWA doesn't install properly. 4. **Email Reminders**: Check Firestore security rules and ensure SMTP is configured. ### Development - Run `npm run dev` for development server - Run `npm run build` for production build - Run `npm run lint` for code linting - Run `npm test` for running tests ## Usage - Compose: write your prayer, pick a date, and optionally select or type a "Pray For" name. - Praying: mark prayers as prayed today. - Calendar: click a day to view/edit its entry. - Reflections: search and filter past prayers. - Answered: review answered prayers with details. - About: set reminder time, test notifications, and read "What's New". ## Getting Started ## Build & Deploy ```bash npm run build ``` Deploy to Vercel or your preferred platform. ## Getting Started First, install dependencies: ```bash npm install ``` Then, run the development server: ```bash npm run dev # or yarn dev # or pnpm dev # or bun dev ``` Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. ## Configuration For email reminders, configure SMTP settings in `src/app/api/send-email/route.ts`. ## Build ```bash npm run build ``` ## Deploy Deploy to Vercel or any platform supporting Next.js PWAs. ## Docker (optional) Basic containerization is available. Remove or adapt scripts as needed. ## Learn More - [Next.js Documentation](https://nextjs.org/docs) - [Tailwind CSS](https://tailwindcss.com/docs) ```