Skip to content

Latest commit

 

History

51 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Selah

Pause. Prepare. Worship.

An open-source workspace for worship teams to organise songs, chord charts, lyrics, and service plans.

Live site: selah.rohanrichard.com

What it offers

  • searchable song library with keys, tags, and pagination
  • responsive chord charts with transposition and print-friendly viewing
  • song and section editor with validation
  • setlist and service-planning workflows
  • email/password and Google sign-in through Supabase

Stack

  • Next.js App Router + TypeScript
  • Supabase Auth, Postgres, and Row Level Security
  • Tailwind CSS + shadcn/ui
  • Tonal for chord parsing and transposition
  • Vitest for utility coverage

Product walkthroughs

The repository includes implementation and interface walkthroughs:

Run locally

Requires Node.js 20 or later.

npm install
cp .env.example .env.local
npm run dev

Set NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY in .env.local. Configure local redirect URLs in Supabase before testing sign-in flows.

Verification

npm run lint
npm run typecheck
npm run test
npm run build

Deployment

Selah is designed for Vercel with a Supabase backend. Apply the migrations in supabase/migrations/, configure authentication redirect URLs, then add the Supabase public URL and publishable key to the Vercel project.

License

MIT

About

🎵 Selah - A modern web app for Christian worship teams to organize, manage, and share songs with chord charts, lyrics, and setlists. Built with Next.js 14, TypeScript, and Supabase.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages