Hello World: Building Anointed Worship
Welcome to Anointed Worship.
A worship service starts long before the first song. There are setlists to prepare, keys to confirm, rehearsals to schedule, and updates to share with the team.
I built Anointed Worship to bring that preparation into one place. It gives worship teams a shared space for service plans, chord charts, lyrics, schedules, and communication. Here is the stack behind it.
Tech stack
Next.js 16 with the App Router for pages, layouts, and server-side application logic
React 19 and TypeScript for interactive components and typed code
Tailwind CSS v4 for responsive layouts and a consistent dark interface
Supabase with PostgreSQL, Auth, Storage, and Realtime for team data, sign-in, ministry files, and live updates
dnd-kit for arranging songs and setlists with drag-and-drop controls
Lucide React for interface icons
Zod for validating application data
Vitest, Testing Library, and Playwright for unit, component, and browser testing
Vercel for hosting the website
Why this stack?
Next.js gives the app a clear structure as it grows, while React and TypeScript help me build and maintain the interactive parts. Tailwind keeps the styling close to the components, making it easier to carry the same visual language across the dashboard, song library, and service plans.
Supabase brings authentication, database storage, and file management together. Team membership checks and database access policies help control access to private ministry content, including messages, schedules, and practice materials.
The smaller tools support everyday tasks. Drag-and-drop controls make changing a song order straightforward. Input validation helps catch invalid data, and automated tests help me check that changes still support the team’s workflows.
Built around worship preparation
The goal is simple: help the team arrive prepared. A musician can check a chord chart, a leader can organize the service, and team members can find their schedules and updates in the same app.
Anointed Worship is where I am bringing those tools together, one workflow at a time.
Thanks for stopping by, and welcome to the project.