rapidfire 0.0.1-alpha.14.7 copy "rapidfire: ^0.0.1-alpha.14.7" to clipboard
rapidfire: ^0.0.1-alpha.14.7 copied to clipboard

RapidFire Flutter Library is a comprehensive ORM system for mobile application development, used various popular Dart packages in one place. Validation, CRUD and API operations are automatic requires no code.

RapidFire

Rapid Fire #

pub package

A comprehensive ORM system for mobile application development. This framework used various popular Dart packages in one place to provide necessary tools support to the developer to build any application at a quick time. To quickly manage initial setup like onboarding, theme, color, style for controls and app background globally, an interface can be implemented under configuration section. It has model annotations for automatic data validation, CRUD and API operations are required no coding and fully automatic. This is a RND initiative in progress, be connected to get the new stable release.

Supported platforms #

  • Android 6.0 +
  • ios 8 + (64bit only)

Features #

  • Comprehensive ORM system for mobile application development
  • Less Development Time & Developers Friendly
  • Organized Boiler plating
  • Modular Architecture
  • Beautiful & Fast UI Performance
  • Minimize Quality Control Overhead Assuring best UX Experiences
  • Runs Anywhere (Android, iOS)
  • Authentication Ready (App Login, Facebook, Twitter, Google, 2FA and OPT)
  • Zero API and CRUD Code
  • Auto Model Mapping
  • Model Validations
  • Scalable Architecture

Getting started #

In the pubspec.yaml of your flutter project, add the following dependency:

dependencies:
  ...
  rapidfire: "^0.0.1-alpha.1.1"
  flutter_localizations:
    sdk: flutter
dev_dependencies:
  ...
 build_runner: "^1.0.0"

In your library add the following import:

import 'package:rapidfire/RapidFire.dart';

For help getting started with Flutter, view the online documentation.

Example #

In the main function, implement the RapidFire class providing a AppConfig and initializeReflectable method. initializeReflectable will show error initially, run **flutter packages pub run build_runner build ** in Terminal to eliminate this. This will generate model reflection objects for your application.

void main() {
  RapidFire(
    AppConfig(),
    initializeReflectable,
  );
}

To quick start, download StartupMini.zip/ StartupFat.zip from HERE. Copy assets folder and build.yaml file in project root folder. Copy config, models, pages and validator folder in lib folder to your project lib directory. Press Alt + Enter for necessary library import. Include asset and fonts in your pubspec.yaml. In Terminal, run "flutter packages pub run build_runner build" to generate existing model reflection. Finally, start work on Home.dart page and extend your application as per clients and business requirements.

  assets:
    - assets/language/lang_en.json
    - assets/language/lang_es.json
    - assets/images/
    - assets/images/intro/
    - assets/design_course/
    - assets/fitness_app/
    - assets/hotel/
	
  fonts:
    - family: Berlin Sans FB Demi Bold
      fonts:
          - asset: assets/fonts/Berlin-Sans-FB-Demi-Bold.ttf

    - family: Raleway
      fonts:
        - asset: assets/fonts/raleway.thin.ttf
        - asset: assets/fonts/Raleway-Bold.ttf
          weight: 300

    - family: icomoon
      fonts:
        - asset: assets/fonts/IcoMoon.ttf

Take a Stateful Widget class (ex. Home.dart) and return the PageRF in build section, will display a complete page (flutter scaffold). You can adjust named parameters to control the page behavior like AppBar, Drawer, Actions, colors, theme etc. A basic page looks like:

return PageRF(
      title: 'My App 1.0',
      body: Container(
        child: Center(child: Text('Welcome to Rapid Fire!')),
        color: Colors.red,
      ),
);

Rapid Fire has 44 Widgets to provide best quality UI/UX. Complete documentation for widgets are in progress and will be uploaded gradually in this section. A typical PageRF widgets looks like:

PageRF({
    this.title,
    this.outline,
    this.model,
    this.flex,
    this.stickyHeader,
    this.body,
    this.fab,
    this.fabEx,
    this.filter,
    this.onBack,
    this.backgroundColor,
    this.disabledPageScroll = false,
    this.osBarColors,
    this.template,
  });

Preview #

Concept Documents #

  • Context, Project Structure & Implementation Diagram: documentation

Author #

Rokybul Imrose - Initial work and overall architecture

Feel free to contract #

rbimrose@gmail.com

License #

License: GPL v3