
Overview
Sermon Tracker is a full-stack sermon management and Bible study platform designed to help preachers turn ideas into organized, developed sermons. From capturing inspiration and building structured outlines to studying Scripture and maintaining preaching history, the application brings the entire sermon-development workflow into one cohesive workspace. Built with Next.js, React, TypeScript, and PostgreSQL, Sermon Tracker combines powerful ministry-focused functionality with secure data management, modern application architecture, and a polished, responsive experience across desktop and mobile devices.
Great sermons often begin with a simple thought, a Scripture passage, or an idea worth developing. Sermon Tracker provides a centralized workspace for preserving those ideas and developing them into organized, Scripture-centered messages. Designed around the practical needs of preachers, the application supports the entire process from initial inspiration and preparation to sermon delivery and historical recordkeeping.
The platform features a comprehensive sermon management system with independently managed sermon ideas and reusable point ideas, customizable classifications, development statuses, searchable libraries, and structured sermon outlines. Its flexible outline editor supports nested sections, customizable numbering, reusable content, and automatic saving, allowing preachers to develop messages naturally while maintaining an organized record of their work.
An integrated Bible study experience provides access to the King James Version (KJV) and Reina-Valera Gómez (RVG), including Scripture navigation, search, parallel reading, highlighting, saved passages, and direct integration with sermon ideas. Additional features include preaching history, personalized dashboards, user onboarding, configurable preferences, and intuitive workflows that connect sermon preparation with long-term organization.
Developed as a production-oriented, full-stack application, Sermon Tracker combines a modern React-based interface with a relational PostgreSQL database, secure authentication, server-side authorization, and modular application architecture. The project emphasizes reliability, accessibility, responsive design, maintainability, and automated testing. Built for real-world use rather than simply demonstrating technical concepts, Sermon Tracker represents the development of a complete software product from initial requirements through production release.
Engineering a Modern Sermon Management Platform
Sermon preparation involves much more than writing an outline. Preachers must capture ideas as they arise, organize Scripture references, develop individual points, structure complete messages, and maintain records of previously delivered sermons. These responsibilities are often spread across note-taking applications, Bible software, word processors, spreadsheets, and handwritten notes. The result is a fragmented workflow where valuable ideas can be forgotten, duplicated, or difficult to retrieve. I developed Sermon Tracker to address this problem through a unified, purpose-built platform supporting the complete sermon-development lifecycle.
I designed and developed Sermon Tracker as a full-stack web application that combines sermon organization, Bible study, outlining, and preaching history within a cohesive workspace. The application allows users to capture ideas quickly, develop them over time, connect related content, organize sermons by meaningful classifications, and maintain searchable records of their work. Rather than imposing a rigid preparation process, the platform accommodates different preaching styles and workflows while providing the organizational structure needed to manage a growing sermon library.
One of the most important architectural decisions was separating sermon ideas, individual point ideas, and structured outlines into related but independently manageable entities. Sermon points can exist without an assigned sermon, be associated with multiple ideas, and be reused throughout the development process. This required relational data modeling that preserves the independence of each resource while maintaining meaningful connections between them. The resulting architecture supports flexible sermon preparation, minimizes unnecessary duplication, and provides a foundation for continued feature development.
Sermon Tracker is built with Next.js 16 using the App Router, React 19, and strict TypeScript. The frontend uses Tailwind CSS and shadcn/ui to deliver a cohesive, accessible, and responsive interface. The backend uses Neon PostgreSQL with Drizzle ORM for relational persistence, schema management, and database migrations. Clerk provides authentication, while server-side authorization and record-ownership validation protect user-specific resources. Zod schemas support data validation, and the application is deployed through Vercel. The architecture emphasizes type safety, separation of concerns, and maintainable feature development.
As the application expanded beyond basic idea tracking, maintaining a scalable architecture became increasingly important. I organized the codebase around distinct feature domains, separating interface components, business logic, persistence, validation, and authorization responsibilities. Shared design patterns and reusable components provide consistency across the application, while clearly defined boundaries reduce coupling between features. This approach makes the system easier to test, maintain, troubleshoot, and extend without requiring substantial architectural changes whenever new capabilities are introduced.
A significant engineering challenge was implementing a flexible, interactive sermon outline system. The editor needed to support hierarchical sections, deeply nested content, customizable numbering conventions, reusable sermon points, and Scripture references without compromising usability. Its data model separates outline structure from independently stored sermon ideas, preserving flexibility while allowing content to be organized into complete messages. Automatic saving reduces the risk of losing work, and the interface is designed to make editing complex outlines feel straightforward rather than cumbersome.
Another major challenge was integrating Bible study directly into the sermon-development workflow. Sermon Tracker supports both the King James Version (KJV) and Reina-Valera Gómez (RVG), with passage navigation, Scripture search, side-by-side comparison, highlights, saved verses and passages, and integration with sermon ideas. The goal was to create a connected experience in which Scripture study and sermon preparation complement one another, reducing unnecessary navigation between separate tools while preserving an intuitive Bible-reading interface.
Because Sermon Tracker stores personal sermon ideas, notes, outlines, preferences, and preaching records, protecting user data is an essential architectural responsibility. The application combines authenticated access with server-side authorization, resource-ownership checks, input validation, and relational data integrity. Database migrations and carefully managed data relationships help maintain consistency as the application evolves. These decisions reflect a deliberate effort to build dependable, multi-user software rather than relying exclusively on client-side protections or interface-level validation.
I managed development through a structured, incremental process, dividing the project into implementation phases with defined objectives, architectural considerations, and verification requirements. Features were progressively introduced and refined while maintaining consistency with existing functionality and design conventions. Feedback from beta testers helped identify usability improvements, particularly in onboarding and communicating the application's purpose. This iterative approach allowed the platform to grow significantly in scope while keeping attention on maintainability, product quality, and the needs of actual users.
Quality assurance is an integral part of the development workflow. The project incorporates automated unit and component testing with Vitest, end-to-end testing with Playwright, TypeScript static analysis, linting, and production build verification. These practices help identify regressions, validate critical workflows, and reduce the risk associated with changes to interconnected features. The application has also undergone real-user beta testing, with findings incorporated into subsequent improvements and final production-readiness verification.
Sermon Tracker has grown from a focused idea-tracking concept into a substantial, integrated software platform encompassing sermon management, structured outlining, bilingual Bible study, preaching history, personalized onboarding, and responsive application design. Developing the project strengthened my practical experience with full-stack TypeScript development, relational database architecture, complex React interfaces, secure application workflows, automated testing, and iterative product delivery. Beyond its technical scope, the project demonstrates my ability to translate a real-world problem into a cohesive, maintainable application designed for continued use and growth.
Future development will focus on refining the production experience, incorporating user feedback, improving performance and reliability, and expanding functionality where it provides meaningful value. Potential enhancements include deeper offline capabilities, improved synchronization workflows, and additional productivity tools for sermon preparation. The long-term objective is to continue developing Sermon Tracker as a dependable, extensible platform that helps preachers spend less time managing information and more time preparing effective, Scripture-centered messages.
Development activity
Live data from the project’s public GitHub repositories, kept apart from the curated timeline.