Search packages, repositories and app categories

GitHub repositoryedumigueis/flutter_session_manager

flutter_session_manager

Easy to use session wrapper that adds support to session storage and management in flutter.

flutter_session_manager project cover
Stars
3
Forks
0
Last push (UTC)
Nov 12, 2021
Project status
Active

Original README

English project snapshot. Visit GitHub for the latest content.

flutter_session_manager

Adds an easy to use wrapper to session management in flutter. Allows for easy session storage and management. The session persists in the app's' lifetime.

Store values in the session:
await SessionManager().set("key", value);

or

var sessionManager = SessionManager();
await sessionManager.set("name", "cool user");
await sessionManager.set("id", 3);
await sessionManager.set("measure", 23.2);
await sessionManager.set("isLoggedIn", true);
await sessionManager.set("user", new User(id: 1, name: "John", isCool: true, postCount: 4));
Read values from the session:
dynamic id = await SessionManager().get("id");
Saving objects:

To save objects, the class must have the toJson() method. When getting a object, it returns as a Json that you can Serialize using fromJson() method.

class User {
  final int id;
  final String name;
  final bool isCool;
  final int postCount;

  User({this.id, this.name, this.isCool, this.postCount});

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> user = Map<String, dynamic>();
    user["id"] = id;
    user["name"] = this.name;
    user["isCool"] = this.isCool;
    user["postCount"] = this.postCount;
    return user;
  }
}

User user = User(id: 1, name: "John", isCool: true, postCount: 4);
await SessionManager().set('user', user);
User u = User.fromJson(await SessionManager().get("user"));
Session Management:

This package contains all operations that may be necessary to manage a session.

  • Update session
await SessionManager().update();
  • Delete session and all data in it
await SessionManager().destroy();
  • Remove a specific item
await SessionManager().remove("id");
  • Verify wether or not a key exists
await SessionManager().containsKey("id"); // true or false

Getting Started

With Flutter, run:

 $ flutter pub add flutter_session_manager

This will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):

 dependencies:
  flutter_session_manager: ^1.0.1

To import it in your Dart code, you can use:

import 'package:flutter_session_manager/flutter_session_manager.dart';

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create.

  1. Fork the Project

  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)

  3. Commit your Changes (git commit -m 'Add some AmazingFeature')

  4. Push to the Branch (git push origin feature/AmazingFeature)

  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Copyright (c) Eduardo Migueis 2021.

Eduardo Migueis GitHub avatar
GitHub author

Eduardo Migueis ↗

Computer science undergraduate at Unicamp | Data Engineer

@ciandtBrazil
LanguagesDart

Categories

Packages published by this repository

Dependencies used

Dependency list 4 items

How do I choose a repository?

Start with your use case, compare repository activity, and check the original project before adopting it.

  1. Search by repository name, owner or description, then narrow the results by topic.
  2. Compare stars, forks and recent pushes. Stars show community interest, not a guarantee of quality.
  3. Read the README, license and issues on GitHub before using a project.

Sources and maintenance

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗