{"id":20768258,"url":"https://github.com/gokberkbar/locale_plus","last_synced_at":"2025-08-02T20:07:25.469Z","repository":{"id":65167020,"uuid":"585149455","full_name":"gokberkbar/locale_plus","owner":"gokberkbar","description":"LocalePlus allows easy access to native device locale data in Flutter apps. Includes language, country code, time zone, and number formatting preferences.","archived":false,"fork":false,"pushed_at":"2025-07-24T13:58:56.000Z","size":218,"stargazers_count":27,"open_issues_count":2,"forks_count":16,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-25T12:33:20.343Z","etag":null,"topics":["dart","flutter","flutter-android-ios","flutter-app","flutter-package","locale","pubdev"],"latest_commit_sha":null,"homepage":"https://pub.dev/packages/locale_plus","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/gokberkbar.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-04T12:52:16.000Z","updated_at":"2025-07-24T13:58:19.000Z","dependencies_parsed_at":"2024-11-17T23:48:17.993Z","dependency_job_id":null,"html_url":"https://github.com/gokberkbar/locale_plus","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/gokberkbar/locale_plus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gokberkbar%2Flocale_plus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gokberkbar%2Flocale_plus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gokberkbar%2Flocale_plus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gokberkbar%2Flocale_plus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gokberkbar","download_url":"https://codeload.github.com/gokberkbar/locale_plus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gokberkbar%2Flocale_plus/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267037549,"owners_count":24025605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-25T02:00:09.625Z","response_time":70,"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","flutter","flutter-android-ios","flutter-app","flutter-package","locale","pubdev"],"created_at":"2024-11-17T11:36:53.851Z","updated_at":"2025-08-02T20:07:25.452Z","avatar_url":"https://github.com/gokberkbar.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Locale Plus\n\nLocalePlus allows easy access to native device locale data in Flutter apps. Includes language, country code, time zone, and number formatting preferences.\n\n# Table of Content\n\n- [Overview](#overview)\n- [Requirements](#requirements)\n- [Installation](#installation)\n- [Usage](#usage)\n- [Author](#author)\n- [Contributors](#contributors)\n- [LICENSE](#license)\n\n# Overview\n\nLocalePlus is a Flutter package that allows developers to easily retrieve data from the native device locale settings. With LocalePlus, developers can access information such as the device's language, country code, and time zone, as well as the device's number formatting preferences such as grouping and decimal separator. This makes it easy to build internationalized apps that provide a personalized experience for each user. Whether you're building a financial app that needs to display numbers in the user's local format or a social media app that needs to display timestamps in the user's time zone, LocalePlus has you covered. With a simple and intuitive API, LocalePlus is the perfect tool for any Flutter developer looking to add localization to their app.\n\n# Requirements\n\n- Dart sdk: \"\u003e=3.0.0 \u003c4.0.0\"\n- Flutter: \"\u003e=3.10.0\"\n- Android: minSdkVersion 16\n- iOS 9.0+\n\n# Installation\n\nwith Flutter:\n\n```\n$ flutter pub add locale_plus\n```\n\nThis will add a line like this to your package's pubspec.yaml (and run an implicit `flutter pub get`):\n\n```\ndependencies:\n  locale_plus: ^1.8.0\n```\n\n# Usage\n\n## Patch the locales with the users' group and decimal seperators\n\nThis function patches all locales in flutter, so that you can use the decimal seperator and group seperator from `numberFormatSymbols` after the patch is complete.\nThe patchNumberSeperators function patches the locales on android and ios.\nThe `shouldPatchForSamsungKeyboard` can be enabled, to patch for Samsung keyboards on android phones (they only allow for a `.` as input).\nIt is safe to call on MacOS, Windows, Linux and web, but it does not patch the locales.\n\n```Dart\nimport 'package:locale_plus/locale_plus.dart';\n\nFuture\u003cvoid\u003e main() async {\n  WidgetsFlutterBinding.ensureInitialized();\n  await PatchAllLocales.patchNumberSeperators(\n    shouldPatchForSamsungKeyboard: true,\n  );\n  runApp(const MyApp());\n}\n```\n\n## Get if the user is using a samsung keyboard\n\n```Dart\nfinal decimalSeparator = await LocalePlus().isUsingSamsungKeyboard();\n```\n\n## Get Decimal \u0026 Grouping Separator\n\n```Dart\nfinal decimalSeparator = await LocalePlus().getDecimalSeparator();\nfinal groupingSeparator = await LocalePlus().getGroupingSeparator();\n```\n\n## Get Language \u0026 Region Code\n\n```Dart\nfinal regionCode = await LocalePlus().getRegionCode();\nfinal languageCode = await LocalePlus().getLanguageCode();\n```\n\n## Get Seconds from GMT\n\n```Dart\nfinal secondsFromGMT = await LocalePlus().getSecondsFromGMT();\n```\n\n## Is Device Using 24 hour time and Current Locale AM PM Symbols\n\n```Dart\nfinal is24HourTime = await LocalePlus().is24HourTime();\nfinal amSymbol = await LocalePlus().getAmSymbol();\nfinal pmSymbol = await LocalePlus().getPmSymbol();\n```\n\n## Is Device Using Metric System\n\n```Dart\nfinal usesMetricSystem = await LocalePlus().usesMetricSystem();\n```\n\n## Get TimeZone Identifier\n\n```Dart\nfinal timeZoneIdentifier = await LocalePlus().getTimeZoneIdentifier();\n```\n\n## Get First Day Of Week\n\n```Dart\nfinal firstDayOfWeek = await LocalePlus().getFirstDayOfWeek();\n```\n\n## Get Date format pattern\n\n```Dart\nfinal dateFormatPattern = await LocalePlus().getDateFormatPattern();\n```\n\n# Author\n\n[Gökberk Bardakçı](https://www.github.com/gokberkbar), [Uygar İşiçelik](https://www.github.com/uygar)\n\n# Contributors\n\n[Bent Engbers](https://github.com/BentEngbers), [Renat Shakhmatov](https://github.com/shushper), [Giovanni Lattanzio](https://github.com/giovannilattanziocrispy), [Gökhan Çavuş](https://github.com/gokhancvs)\n\n# License\n\nLocalePlus is available under the MIT license. See the LICENSE file for more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgokberkbar%2Flocale_plus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgokberkbar%2Flocale_plus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgokberkbar%2Flocale_plus/lists"}