Skip to content

d33msa/abenezer

Repository files navigation

Still Under Development.

Church Choir Lyrics App

A web application for managing and displaying church choir lyrics with embedded videos and user authentication.

Features

  • Lyrics Management

    • Browse and view choir song lyrics
    • Embedded video player for each song
    • Search and filter songs by title or theme
  • User Authentication

    • Optional login for regular users
    • Required authentication for admin features
    • Role-based access control
  • Admin Features

    • Add, edit, and delete lyrics
    • Attach videos to lyrics
    • Manage user roles

Tech Stack

  • Backend
    • Node.js + Express.js
    • Firebase Admin SDK
    • Firebase Authentication
    • Firebase Firestore

Getting Started

Prerequisites

  • Node.js (v14 or higher)
  • Firebase project with necessary configurations

Installation

  1. Clone the repository
  2. Install dependencies:
    npm install
  3. Create a .env file in the root directory with your Firebase configuration:
    PORT=3000
    JWT_SECRET=your_jwt_secret_here
    FIREBASE_PROJECT_ID=your-project-id
    FIREBASE_PRIVATE_KEY=your-private-key
    FIREBASE_CLIENT_EMAIL=your-client-email
    FIREBASE_STORAGE_BUCKET=your-storage-bucket

Development

Start the development server:

npm run dev

The server will start on http://localhost:3000

API Endpoints

Authentication

  • POST /api/auth/register - Register new user
  • POST /api/auth/login - User login
  • POST /api/auth/set-admin - Set admin role (super admin only)

Lyrics

  • GET /api/lyrics - Get all lyrics
  • GET /api/lyrics/:id - Get single lyrics
  • POST /api/lyrics - Create new lyrics (admin only)
  • PUT /api/lyrics/:id - Update lyrics (admin only)
  • DELETE /api/lyrics/:id - Delete lyrics (admin only)

Security

  • JWT-based authentication
  • Role-based access control
  • Firebase security rules
  • Environment variables for sensitive data

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors