synq_manager 1.0.1 copy "synq_manager: ^1.0.1" to clipboard
synq_manager: ^1.0.1 copied to clipboard

A robust offline-first synchronization layer for Flutter apps. Provides seamless sync between local storage and cloud backends with conflict resolution.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:synq_manager/synq_manager.dart';
import 'package:synq_manager_example/screens/login_screen.dart';
import 'package:synq_manager_example/screens/notes_screen.dart';
import 'package:synq_manager_example/services/sync_service.dart';

void main() {
  runApp(const MyApp());
}

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

  @override
  Widget build(BuildContext context) {
    return MultiProvider(
      providers: [
        ChangeNotifierProvider(create: (_) => SyncService()),
      ],
      child: MaterialApp(
        title: 'SynQ Manager Example',
        theme: ThemeData(
          primarySwatch: Colors.blue,
          useMaterial3: true,
        ),
        home: const AppHome(),
      ),
    );
  }
}

class AppHome extends StatefulWidget {
  const AppHome({super.key});

  @override
  State<AppHome> createState() => _AppHomeState();
}

class _AppHomeState extends State<AppHome> {
  @override
  void initState() {
    super.initState();
    WidgetsBinding.instance.addPostFrameCallback((_) {
      context.read<SyncService>().initialize();
    });
  }

  @override
  Widget build(BuildContext context) {
    return Consumer<SyncService>(
      builder: (context, syncService, child) {
        if (!syncService.isInitialized) {
          return const Scaffold(
            body: Center(
              child: CircularProgressIndicator(),
            ),
          );
        }

        return StreamBuilder<AuthState>(
          stream: syncService.authStateChanges,
          builder: (context, snapshot) {
            final authState = snapshot.data;

            if (authState == null ||
                (!authState.isAuthenticated && !authState.isGuest)) {
              return const LoginScreen();
            }

            return const NotesScreen();
          },
        );
      },
    );
  }
}
3
likes
0
points
21
downloads

Publisher

verified publisherahmetaydin.dev

Weekly Downloads

A robust offline-first synchronization layer for Flutter apps. Provides seamless sync between local storage and cloud backends with conflict resolution.

Repository (GitHub)
View/report issues

Topics

#offline #sync #flutter #offline-first #hive

Documentation

Documentation

License

unknown (license)

Dependencies

connectivity_plus, flutter, flutter_secure_storage, hive_plus_secure, isar_plus_flutter_libs, meta, path_provider, uuid, workmanager

More

Packages that depend on synq_manager