Skip to content

killua-repo/taqweem

Repository files navigation

Taqweem (تقويمي)

Flutter Dart Platform License Version

Taqweem is an open-source Islamic calendar application built with Flutter. It provides Hijri and Gregorian calendars with real-time data, featuring a modern dark-mode interface for a premium user experience.

العربية  |  English


📸 Screenshots

Today's Date Hijri Calendar Gregorian Calendar
Today's Date Hijri Calendar Gregorian Calendar

✨ Key Features

Feature Description
🔄 Dual Calendars View full Hijri and Gregorian calendars with corresponding dates
⏰ Live Clock Dedicated screen showing real-time (HH:MM:SS) with location
📅 Today Highlighting Current day is highlighted in cyan for easy identification
🚀 Auto-Scroll Automatically scrolls to today's date on calendar screens
🌙 Dark Mode UI Sleek, modern dark theme with beautiful Arabic typography
🖥️ Custom Window Frame Minimal, elegant title bar for Windows desktop
📱 Cross-Platform Optimized for both Android and Windows
📶 Offline Handling Graceful error dialog with retry option when offline

📁 Project Structure

taqweem/
├── lib/
│   ├── main.dart                      # App entry point & main screen
│   ├── screens/
│   │   ├── today_date_screen.dart    # Live time & date display
│   │   ├── hijri_calendar_screen.dart   # Hijri calendar view
│   │   └── gregorian_calendar_screen.dart # Gregorian calendar view
│   └── utils/
│       ├── data_row_card.dart        # Reusable calendar row widget
│       ├── network_dialog.dart       # Offline error dialog
│       └── loading_animation.dart    # Custom loading indicator
├── .github/
│   └── workflows/
│       └── flutter.yml               # CI/CD workflow
├── pubspec.yaml                      # Dependencies & project config
└── README.md                         # This file

🛠️ Tech Stack

Category Technology
Framework Flutter 3.41.6
Language Dart
HTTP Client http ^1.2.1
HTML Parser html ^0.15.4
Fonts google_fonts ^6.2.1 (Cairo & Tajawal)
Connectivity connectivity_plus ^6.0.3
Scrollable List scrollable_positioned_list ^0.3.8
Window Manager bitsdojo_window ^0.1.6, window_manager ^0.3.9
Localization flutter_localizations

📡 Data Sources

This app fetches real-time data from public websites:

Data Source
Hijri Calendar https://hijri-calendar.com/
Gregorian Calendar https://gregorian-calendars.com/
Current Time & Location https://time-now.me/

⚠️ Note: An active internet connection is required for the app to function.


🚀 Getting Started

Prerequisites

  • Flutter SDK 3.41.6 or higher
  • Git
  • Android SDK (for Android builds)
  • Windows (for Windows builds)

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/taqweem.git
    cd taqweem
  2. Install dependencies:

    flutter pub get
  3. Run the app:

    flutter run

Windows-Specific Setup

To enable the custom window frame on Windows, modify windows/runner/main.cpp:

#include <bitsdojo_window_windows/bitsdojo_window_plugin.h>

int main() {
  auto bdw = bitsdojo_window_configure(BDW_CUSTOM_FRAME);
  // ... rest of your code
}

📦 Building for Production

Android (APK)

flutter build apk --release

Output: build/app/outputs/flutter-apk/app-release.apk

Windows (EXE)

flutter build windows --release

Output: build/windows/runner/Release/


🎨 UI/UX Details

Element Value
Background Color #0A0E21
Card Color #1D1E33
Accent Color Colors.cyanAccent
Secondary Color #00897B
Primary Fonts Cairo, Tajawal (Google Fonts)
App Direction RTL (Arabic)

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


🙏 Acknowledgments

  • Flutter - UI framework
  • Google Fonts - Beautiful Arabic typography
  • All open-source package maintainers

Made with ❤️ using Flutter


وصف المشروع

تقويمي هو تطبيق تقويم إسلامي مفتوح المصدر، تم تطويره باستخدام إطار العمل Flutter. يوفر التطبيق التقويمين الهجري والميلادي مع بيانات في الوقت الفعلي، مع واجهة أنيقة ووضع ليلي عصري لتجربة مستخدم مميزة.

المميزات الرئيسية:

  • ✅ التقويم الهجري والميلادي
  • ✅ عرض الوقت والتاريخ الحالي
  • ✅ تمييز اليوم الحالي
  • ✅ التمرير التلقائي لليوم
  • ✅ واجهة داكنة عصرية
  • ✅ خطوط عربية جميلة (Cairo & Tajawal)
  • ✅ يعمل على Android و Windows