Skip to content

hms10dev/DuVa-App

Repository files navigation

DuVa (Dua Vault)

A Flutter mobile application for creating, saving, and managing personal duas (prayers/supplications). DuVa transforms from a simple storage tool into a complete spiritual support companion.

Click here to check it out live !

Features

Core Functionality

  • ✅ Create, edit, and delete duas
  • ✅ Search duas by title or content
  • ✅ Filter duas by category
  • ✅ Offline support with local SQLite database
  • ✅ Clean and modern UI with Material Design 3

Enhanced Features

  • Home Screen: Daily greeting, quick actions, time-based suggestions, favorites, and recently used duas
  • Curated Library: Pre-populated duas for discovery (morning, evening, work, health, anxiety, etc.)
  • Favorites/Bookmarks: Mark duas as favorites for quick access
  • Emotional Context: Tag duas with mood (grateful, anxious, hopeful, peaceful, etc.)
  • Time Awareness: Associate duas with morning, evening, or anytime
  • Insights Dashboard: View statistics, category breakdowns, and usage patterns
  • Dark Mode: Toggle between light and dark themes
  • Access Tracking: Track how often duas are viewed/used
  • Bottom Navigation: Easy navigation between Home, Vault, Insights, and Settings

Getting Started

Prerequisites

  • Flutter SDK (>=3.0.0)
  • Dart SDK

Installation

  1. Install dependencies:
flutter pub get
  1. Run the app:
flutter run

Project Structure

lib/
├── main.dart                      # App entry point with theme support
├── models/
│   └── dua.dart                  # Enhanced Dua data model
├── services/
│   ├── storage_service.dart      # Local storage service (SQLite)
│   └── curated_library_service.dart # Curated dua library
├── screens/
│   ├── main_navigation.dart      # Bottom navigation wrapper
│   ├── home_screen.dart          # Home screen with daily context
│   ├── dua_vault_screen.dart     # Vault screen with search/filter
│   ├── discovery_screen.dart     # Curated library discovery
│   ├── insights_screen.dart      # Analytics and insights
│   ├── settings_screen.dart      # Settings and preferences
│   └── dua_add_edit_screen.dart  # Add/Edit dua form
└── widgets/
    └── dua_card.dart             # Enhanced dua card widget

Key Features Explained

Home Screen

  • Daily Greeting: Context-aware greeting based on time of day
  • Quick Actions: Fast access to add duas or view vault
  • Time-Based Suggestions: Duas relevant to morning or evening
  • Favorites: Quick access to favorite duas
  • Recently Used: Shows frequently accessed duas

Curated Library

  • Pre-populated duas covering common scenarios:
    • Morning/Evening duas
    • Work and success duas
    • Health and healing duas
    • Anxiety and peace duas
    • Family duas
    • Travel duas
  • Users can discover, view, and save curated duas to their personal vault

Enhanced Dua Model

  • Favorites: Mark duas for quick access
  • Mood Tags: Emotional context (grateful, anxious, hopeful, etc.)
  • Event Tags: Situational tags (work, health, grief, transition)
  • Time of Day: Morning, evening, or anytime relevance
  • Access Count: Tracks usage frequency

Insights

  • Total duas count
  • Favorite count
  • Category breakdown with percentages
  • Visual progress indicators

Settings

  • Dark mode toggle
  • Data privacy information
  • App information

Technologies Used

  • Flutter: UI framework
  • SQLite (sqflite): Local database for offline storage
  • Material Design 3: Modern UI components
  • State Management: setState() for MVP simplicity

Data Model

The enhanced Dua model includes:

  • Basic fields: id, title, content, category
  • Timestamps: createdAt, updatedAt
  • Enhanced fields: isFavorite, mood, eventTags, timeOfDay, isCurated, accessCount

Database Schema

The app uses SQLite with automatic migration from version 1 to 2, adding:

  • isFavorite (INTEGER)
  • mood (TEXT)
  • eventTags (TEXT)
  • timeOfDay (TEXT)
  • isCurated (INTEGER)
  • accessCount (INTEGER)

Future Enhancements

  • Supabase integration for cloud sync
  • Automatic sync when internet is restored
  • Export/Import functionality
  • Reminders and notifications
  • Advanced analytics and patterns
  • Custom categories and tags
  • Sharing functionality

Feedback?

email me @ hms10dev@gmail.com check me out @ hmsdev.co

About

App to keep track of your duas locally on your device

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors