cyberframework 0.0.6 copy "cyberframework: ^0.0.6" to clipboard
cyberframework: ^0.0.6 copied to clipboard

unlisted

plugin project do công ty cổ phần phần mềm quản trị doanh nghiệp.

CyberFramework #

Framework Flutter mạnh mẽ cho phát triển ứng dụng di động với kiến trúc MVVM và dependency injection.

📋 Mục lục #

🎯 Giới thiệu #

CyberFramework là một Flutter plugin framework cung cấp các công cụ và components để xây dựng ứng dụng mobile theo mô hình MVVM với dependency injection, giúp code dễ bảo trì và mở rộng.

✨ Tính năng #

  • ✅ Dependency Injection với GetIt và Injectable
  • ✅ MVVM Architecture Pattern
  • ✅ Form Management với CyberForm
  • ✅ Navigation Management
  • ✅ Custom UI Controls (CyberText, CyberCheckbox, CyberComboBox, v.v.)
  • ✅ Two-way Data Binding
  • ✅ Lifecycle Management

📦 Cài đặt #

Thêm dependency vào file pubspec.yaml:

dependencies:
  cyberframework:
    git:
      url: https://github.com/cybersoftvn/cyberframework.git
  get_it: ^7.6.0
  injectable: ^2.3.2

dev_dependencies:
  build_runner: ^2.4.6
  injectable_generator: ^2.4.1

Chạy lệnh:

flutter pub get

🚀 Hướng dẫn sử dụng #

Bước 1: Tạo file cấu hình Dependency Injection #

Tạo file spScreen.dart tại thư mục root của project:

import 'package:cyberframework/cyberframework.dart';
import 'package:get_it/get_it.dart';
import 'package:injectable/injectable.dart';
import 'spScreen.config.dart';

final getIt = GetIt.instance;

@InjectableInit(
  initializerName: 'init',
  preferRelativeImports: true,
  asExtension: true,
)
void configureDependencies() {
  getIt.init();
  buildFactoryMap();
}

Bước 2: Generate code #

Chạy lệnh build_runner để generate code:

flutter pub run build_runner build --delete-conflicting-outputs

Bước 3: Khởi tạo trong main.dart #

import 'package:flutter/material.dart';
import 'package:cyberframework/cyberframework.dart';
import 'package:injectable/injectable.dart';
import 'spScreen.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  configureDependencies();
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return V_MainScreen("MyHomePage");
  }
}

@Singleton(as: CyberForm)
@named
class MyHomePage extends CyberForm {
  @override
  Widget buildBody(BuildContext context) {
    return Center(
      child: Text(
        "Hello World",
        style: TextStyle(fontSize: 24),
      ),
    );
  }
}

📱 Ví dụ #

Tạo một CyberForm cơ bản #

@Singleton(as: CyberForm)
@named
class LoginPage extends CyberForm {
  @override
  Widget buildBody(BuildContext context) {
    return Padding(
      padding: EdgeInsets.all(16.0),
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          CyberText(
            labelText: "Username",
            controller: TextEditingController(),
          ),
          SizedBox(height: 16),
          CyberText(
            labelText: "Password",
            obscureText: true,
            controller: TextEditingController(),
          ),
          SizedBox(height: 24),
          ElevatedButton(
            onPressed: () => handleLogin(),
            child: Text("Login"),
          ),
        ],
      ),
    );
  }

  void handleLogin() {
    // Xử lý đăng nhập
  }
}
// Mở màn hình mới
Navigator.push(
  context,
  MaterialPageRoute(
    builder: (context) => V_MainScreen("LoginPage"),
  ),
);

🛠️ Công nghệ sử dụng #

  • Flutter
  • GetIt - Service Locator
  • Injectable - Code Generation for Dependency Injection
  • MVVM Pattern

🤝 Đóng góp #

Mọi đóng góp đều được chào đón! Vui lòng:

  1. Fork repository
  2. Tạo branch mới (git checkout -b feature/amazing-feature)
  3. Commit changes (git commit -m 'Add some amazing feature')
  4. Push to branch (git push origin feature/amazing-feature)
  5. Tạo Pull Request

📞 Liên kết #

📄 License #

Dự án này được phân phối dưới giấy phép MIT. Xem file LICENSE để biết thêm chi tiết.


Phát triển bởi CyberSoft Vietnam 🇻🇳

2
likes
0
points
132
downloads

Publisher

unverified uploader

Weekly Downloads

plugin project do công ty cổ phần phần mềm quản trị doanh nghiệp.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

crypto, flutter, flutter_secure_storage, flutter_slidable, get_it, http, injectable, intl, plugin_platform_interface

More

Packages that depend on cyberframework

Packages that implement cyberframework