{"id":20688576,"url":"https://github.com/edumigueis/flutter_session_manager","last_synced_at":"2026-04-17T04:32:39.601Z","repository":{"id":61973486,"uuid":"426771677","full_name":"edumigueis/flutter_session_manager","owner":"edumigueis","description":"Easy to use session wrapper that adds support to session storage and management in flutter.","archived":false,"fork":false,"pushed_at":"2021-11-12T19:13:27.000Z","size":19,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-30T04:05:48.811Z","etag":null,"topics":["dart","dart-package","flutter","flutter-sessions","session","session-management","shared-preferences"],"latest_commit_sha":null,"homepage":"https://pub.dev/packages/flutter_session_manager","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/edumigueis.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-11-10T20:46:04.000Z","updated_at":"2024-03-22T12:23:57.000Z","dependencies_parsed_at":"2022-10-24T13:30:41.397Z","dependency_job_id":null,"html_url":"https://github.com/edumigueis/flutter_session_manager","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/edumigueis/flutter_session_manager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edumigueis%2Fflutter_session_manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edumigueis%2Fflutter_session_manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edumigueis%2Fflutter_session_manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edumigueis%2Fflutter_session_manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/edumigueis","download_url":"https://codeload.github.com/edumigueis/flutter_session_manager/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edumigueis%2Fflutter_session_manager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31915155,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T18:22:33.417Z","status":"online","status_checked_at":"2026-04-17T02:00:06.879Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dart","dart-package","flutter","flutter-sessions","session","session-management","shared-preferences"],"created_at":"2024-11-16T23:06:09.171Z","updated_at":"2026-04-17T04:32:39.583Z","avatar_url":"https://github.com/edumigueis.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# flutter_session_manager\n\n\u003e 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.\n\n### Store values in the session:\n```sh\nawait SessionManager().set(\"key\", value);\n```\nor\n```sh\nvar sessionManager = SessionManager();\nawait sessionManager.set(\"name\", \"cool user\");\nawait sessionManager.set(\"id\", 3);\nawait sessionManager.set(\"measure\", 23.2);\nawait sessionManager.set(\"isLoggedIn\", true);\nawait sessionManager.set(\"user\", new User(id: 1, name: \"John\", isCool: true, postCount: 4));\n```\n\n### Read values from the session:\n```sh\ndynamic id = await SessionManager().get(\"id\");\n```\n### Saving objects:\nTo 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.\n\n```sh\nclass User {\n  final int id;\n  final String name;\n  final bool isCool;\n  final int postCount;\n\n  User({this.id, this.name, this.isCool, this.postCount});\n\n  Map\u003cString, dynamic\u003e toJson() {\n    final Map\u003cString, dynamic\u003e user = Map\u003cString, dynamic\u003e();\n    user[\"id\"] = id;\n    user[\"name\"] = this.name;\n    user[\"isCool\"] = this.isCool;\n    user[\"postCount\"] = this.postCount;\n    return user;\n  }\n}\n\nUser user = User(id: 1, name: \"John\", isCool: true, postCount: 4);\nawait SessionManager().set('user', user);\nUser u = User.fromJson(await SessionManager().get(\"user\"));\n```\n\n### Session Management:\nThis package contains all operations that may be necessary to manage a session.\n\n- Update session\n```sh\nawait SessionManager().update();\n```\n\n- Delete session and all data in it\n```sh\nawait SessionManager().destroy();\n```\n\n- Remove a specific item\n```sh\nawait SessionManager().remove(\"id\");\n```\n\n- Verify wether or not a key exists\n```sh\nawait SessionManager().containsKey(\"id\"); // true or false\n```\n\n## Getting Started\n\nWith Flutter, run:\n```sh\n $ flutter pub add flutter_session_manager\n```\n\nThis will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):\n```sh\n dependencies:\n  flutter_session_manager: ^1.0.1\n```\n\nTo import it in your Dart code, you can use:\n\nimport 'package:flutter_session_manager/flutter_session_manager.dart';\n\n\n\u003c!-- CONTRIBUTING --\u003e\n\n## Contributing\n\n  \n\nContributions are what make the open source community such an amazing place to be learn, inspire, and create.\n\n  \n\n1. Fork the Project\n\n2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n\n3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)\n\n4. Push to the Branch (`git push origin feature/AmazingFeature`)\n\n5. Open a Pull Request\n\n  \n  \n  \n\n\u003c!-- LICENSE --\u003e\n\n## License\n\n\nDistributed under the MIT License. See `LICENSE` for more information.\n\nCopyright (c) Eduardo Migueis 2021.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedumigueis%2Fflutter_session_manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedumigueis%2Fflutter_session_manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedumigueis%2Fflutter_session_manager/lists"}