English | 日本語
Making daily scripture study more fun and meaningful.
An open-source community web application featuring AI real-time translation & group features to make daily scripture study a joyful habit together with friends.
Web Application: https://scripturehabit.app
Live Demo (No Signup Required): https://scripturehabit.app/en/demo
"Can we make daily scripture study more fun, meaningful, and connected?"
To be completely honest, I was never great at reading scriptures consistently on my own. I kept dropping the habit after just a few days.
I realized I didn't need another strict checklist. What I really wanted was joy and connection, a simple place to share small daily thoughts with friends and family, even if we speak different languages. On a bit of a whim and pure excitement, I started writing code, and Scripture Habit was born.
There is no single "right answer" when it comes to software for building a scripture habit. That’s why I made this project open-source: so we can experiment, build, and shape the best experience together as a community.
Daijiro Sagane
The application is actively deployed and in operation, tracking daily active users studying scriptures. Currently, an average of 10+ users post study notes daily on a continuous basis.
- Level & Streak Display: Experience visible growth as continuous study days (streaks) and levels increase with daily note creation.
- Today's Reading Guide: Automatically displays the recommended reading passage for the day, allowing users to open the target page with a single tap.
- Note Editor: Record and save daily insights and reflection notes.
- Atomic Update Processing: Executes a Firestore transaction upon saving a note to atomically handle streak calculation, chat synchronization, and user data updates.
- Search & Filtering: Instantly search past study notes by tags or keywords.
- AI Weekly Letter: Gemini AI analyzes a week's worth of note entries to deliver personalized reflection feedback.
- Automatic Scripture Link Conversion: Automatically converts scripture references in chat messages into easy-to-read interactive links.
- AI Real-Time Translation: Instantly and automatically translates messages and user names from international group members.
- Personal Habit Rules: Set custom study rules to maintain motivation and prevent routines from becoming monotonous.
- Profile Settings: Flexibly customize avatar, language, notification preferences, and more.
- Security: Firebase AppCheck and Zod input validation (see Security Policy)
- Error Monitoring: Sentry integration for real-time production error logging
- Testing: Vitest (Unit testing) and Playwright (E2E testing) to prevent regressions
| Category | Technologies |
|---|---|
| Frontend | React 19, TypeScript 7.0 (Native), Vite 8.1, Vanilla CSS |
| State Management | React Context (Split Context), useReducer, Zustand |
| Backend API | Node.js 26.0, Express 5.0, Vercel Serverless Functions |
| Database / Auth | Google Cloud Firestore, Firebase Authentication, Firebase AppCheck |
| AI | Google Gemini API (Automatic Translation & Weekly Letter Generation) |
| API Documentation | OpenAPI 3.0, Swagger UI (/api/docs) |
| Testing | Vitest (Unit), Playwright (E2E) |
Public Swagger UI conforming to OpenAPI 3.0 specification is available:
- Swagger UI Screen:
https://scripturehabit.app/api/docs - OpenAPI JSON:
https://scripturehabit.app/api/openapi.json
- Technical Documentation Index
- Development & Setup Guide
- Architecture & Structure
- Chat & Dashboard Sync
- Note Posting Mechanism
Scripture Habit is an open-source project, and contributions are welcome. Whether you write code, design, translate, or just use the app, any help is appreciated.
Please see our Contributing Guide and Code of Conduct for details on development setup, guidelines, and community standards.
Areas where we could use help:
- Translations: Reviewing existing translations for natural phrasing, or adding support for new languages.
- Dashboard & UI: Improving dashboard usability, layouts, and mobile interface design.
- User Experience & Testing: Reporting bugs, testing features, and suggesting workflow improvements.
- Feature Ideas: Suggesting ideas that could make daily study habits more effective.
Feel free to open an issue or submit a pull request on GitHub.
Thanks goes to these wonderful people:
daijir |
Sembatya2020 |
GreiceMoreira |
Bimbolin |
This project follows the all-contributors specification. Contributions of any kind welcome!
This project is licensed under the MIT License - see the LICENSE file for details.










