SwahiLib is an iOS app that allows users to search and explore Swahili words, idioms, sayings, and proverbs — with offline support and synonyms included where available.
Built with SwiftUI, Core Data, and backed by Supabase, the app offers an intuitive and fast experience even without an internet connection.
🔗 Android Version Repo: @SiroDaves/SwahiLib-Android
![]() |
![]() |
![]() |
-
🔍 Search for Swahili words, idioms, sayings, and proverbs
-
📌 Tap an item to view full details
- For words and proverbs, view related synonyms
-
📥 Offline-first experience powered by Core Data
-
💫 Smooth animations with Lottie
-
⚙️ Dependency injection using Swinject
- Supabase — Backend, Auth, and Database
- Lottie — Animation rendering
- Swinject — Dependency Injection
- Core Data — Local persistence for offline use
- SwiftUI — Declarative UI framework
git clone https://github.com/SiroDaves/SongLib-iOS.git
cd SongLib-iOS
Create your environment file by copying the example:
cp .env.example .env
Then, fill in the .env
file with your Supabase credentials (API URL, anon/public key, etc.)
open SwahiLib.xcodeproj
Or open SwahiLib.xcworkspace
if you're using CocoaPods or other workspace-based dependency managers.
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.
Select the correct simulator or your iOS device in Xcode, then hit:
Cmd + R
- 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.
This project is licensed under the MIT License.