Skip to content

SongLib gives you access to your church songbook seamlessly that you don't have to worry about even being online once you have set up the app on your iPhone

Notifications You must be signed in to change notification settings

SiroDevs/SongLib-iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

116 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎵 SongLib

SongLib is a modern, cross-platform church hymn library and songbook manager. With 10+ songbooks, 10000+ songs and powerful search, it lets you keep all your favorite hymns right at your fingertips — even offline.

Built with SwiftUI, Core Data, and backed by MongoDb, the app offers an intuitive and fast experience even without an internet connection.

🔗 Android Version Repo: @SiroDaves/SongLib-Android

Get it on AppStore

✨ Features

  • 📖 14 Songbooks Included – Choose from a wide selection of hymnals.
  • 📚 Custom Collections – Create your own set of favorite church hymns.
  • 🔍 Real-Time Search – Search by song title, number, or lyrics instantly.
  • 📜 Verse Navigation – Swipe up/down to slide through song verses seamlessly.
  • 🌐 Cross-Platform – Runs on Android, iOS, Windows, Linux, and macOS.
  • 📶 Offline Mode – Once set up, the app works without internet access.
  • Cloud-Backed – Uses a MongoDB database with backend services for sync and updates.

Backend API: https://songlive.vercel.app/api

📸 Screenshots

1. iPhone

1. iPad

🛠 Tech Stack

Frontend

  • Swift UI Declarative iOS UI framework
  • Lottie + Animation rendering
  • Swinject Dependency Injection
  • Core Data Local persistence for offline use

Backend

  • Node.js + MongoDB
  • REST API hosted on Vercel

🚀 Getting Started

1. Clone the Repository

git clone https://github.com/SiroDaves/SongLib-iOS.git
cd SongLib-iOS

2. Open in Xcode

open SongLib.xcodeproj

Or open SongLib.xcworkspace if you're using CocoaPods or other workspace-based dependency managers.

4. Install Dependencies

Ensure you have CocoaPods or use Swift Package Manager. If using CocoaPods:

pod install

Or if using Swift Package Manager, just build the project in Xcode and it will fetch the packages.

5. Build and Run

Select the correct simulator or your iOS device in Xcode, then hit:

Cmd + R

💡 Notes

  • The app uses Core Data to cache and persist content for offline usage.
  • Supabase is used for syncing and querying the latest content.
  • For development and testing, you can mock network calls or pre-load your Core Data store.

📄 License

This project is licensed under the MIT License.

About

SongLib gives you access to your church songbook seamlessly that you don't have to worry about even being online once you have set up the app on your iPhone

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages