Skip to content
Anslem27Public

About

An Efficient Flutter Template Crafted for Rapid Development

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation


Template

Starter Pack for my flutter projects

Android Flutter Dart Material

Getting Started

This project is a starting point for a Flutter application buixlt with best practices and useful integrations to accelerate your Flutter development.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Features

  • Provider State Management: Efficient and scalable state management using the Provider package.
  • Inbuilt Logger Tracking System: Integrated logging system to help track app events and debug easily.
  • Shared Preferences Setup: Persistent local storage for simple key-value data.
  • Hive CE Database: Local NoSQL database integration using Hive CE for structured data storage.
  • Changelog Script: Optimized script to generate a changelog based off your git commits

App Structure (Modular/Layered Architecture)

lib/
├── app/
│   ├── helpers/
│   │   └── (Utility functions and helper classes)
│   ├── screens/
│   │   └── (UI screens and pages)
│   ├── theme/
│   │   └── (Theme data and styling configurations)
│   ├── widgets/
│   │   └── (Custom reusable widgets)
├── hive/
│   └── (Hive database configurations and models)
├── main.dart
├── firebase_options.dart

packages/
└── cupertino_native/
    └── (Local Git submodule for Cupertino Native UI components)

Description

  • lib/: The main directory containing all the Dart source code for the Flutter app.
    • app/: Contains the core application code, organized into subdirectories.
      • helpers/: Utility functions and helper classes used across the app.
      • screens/: UI screens and pages that represent different views of the app.
      • theme/: Theme data and styling configurations for consistent app appearance.
      • widgets/: Custom reusable widgets used throughout the app.
    • hive/: Configurations and models for Hive, a lightweight NoSQL database.
    • main.dart: The entry point of the Flutter application.
    • firebase_options.dart: Configuration file for Firebase integration.
  • packages/: Directory for local dependencies managed as Git submodules.
    • cupertino_native/: A local Git submodule providing Cupertino-style native UI components. This is referenced in pubspec.yaml via a path dependency.

Getting Started with the Project

To get started with this project, clone the repository and follow these steps:

  1. Clone the Repository:

    git clone https://github.com/tek-juice/kampala_nights_mobile.git
    cd kampala_nights
    
  2. Initialize Git Submodules: Since this project uses Git submodules (e.g., for local packages like cupertino_native), initialize and update them:

    git submodule update --init --recursive
  • Pull and update submodule

    cd packages/[package]
    git fetch
    

    This ensures all submodules are cloned and checked out to the correct commit.

  1. Install Dependencies:

    flutter pub get
  2. Run the App:

    flutter run

Additional Notes for Contributors

  • Building hive models: Run ( dart run build_runner build):

About

An Efficient Flutter Template Crafted for Rapid Development

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages