{"id":21898503,"url":"https://github.com/canopas/group-track-android","last_synced_at":"2025-05-08T00:27:35.958Z","repository":{"id":218030828,"uuid":"739382039","full_name":"canopas/group-track-android","owner":"canopas","description":"An open-source Android app employing MVVM architecture and Jetpack Compose. Enhance family safety with real-time location sharing.","archived":false,"fork":false,"pushed_at":"2024-10-29T10:02:04.000Z","size":38231,"stargazers_count":59,"open_issues_count":2,"forks_count":4,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-10-29T12:05:49.465Z","etag":null,"topics":["android","android-app","android-application","datastore","firestore","firestore-database","jetpack-android","jetpack-compose","jetpack-navigation","kotlin","location-tracker","location-tracking","mvvm"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/canopas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-01-05T12:35:02.000Z","updated_at":"2024-10-29T11:35:19.000Z","dependencies_parsed_at":"2024-11-06T06:29:47.969Z","dependency_job_id":null,"html_url":"https://github.com/canopas/group-track-android","commit_stats":null,"previous_names":["canopas/catch-me","canopas/your-space","canopas/your-space-android","canopas/group-track-android"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canopas%2Fgroup-track-android","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canopas%2Fgroup-track-android/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canopas%2Fgroup-track-android/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canopas%2Fgroup-track-android/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canopas","download_url":"https://codeload.github.com/canopas/group-track-android/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231468021,"owners_count":18381174,"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","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":["android","android-app","android-application","datastore","firestore","firestore-database","jetpack-android","jetpack-compose","jetpack-navigation","kotlin","location-tracker","location-tracking","mvvm"],"created_at":"2024-11-28T14:32:55.484Z","updated_at":"2025-05-08T00:27:35.947Z","avatar_url":"https://github.com/canopas.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e \u003ca href=\"https://canopas.com/contact\"\u003e\u003cimg src=\"./screenshots/cta_banner2.png\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\n# Grouptrack - Stay connected, Anywhere!\nEnhancing family safety and communication with real-time location sharing and modern UIs.\n\n\u003cimg src=\"./screenshots/cover_image.png\"  alt=\"cover\"  width=\"100%\"/\u003e\n\n## Overview\nWelcome to Grouptrack, an open-source Android application designed to enhance family safety through real-time location sharing and communication features. Grouptrack aims to provide peace of mind by ensuring the safety of your loved ones and facilitating seamless communication regardless of their location.\n\nGrouptrack adopts the MVVM architecture pattern and leverages Jetpack Compose for building modern UIs declaratively. This architecture ensures a clear separation of concerns, making the codebase more maintainable and testable. Jetpack Compose simplifies UI development by allowing developers to define UI elements and their behavior in a more intuitive way, resulting in a seamless user experience.\n\n## Download App\n\u003ca href=\"https://play.google.com/store/apps/details?id=com.canopas.yourspace\"\u003e\u003cimg src=\"https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png\" width=\"200\"\u003e\u003c/img\u003e\u003c/a\u003e\n\n## Features\nGrouptrack is currently in active development 🚧, with plans to incorporate additional features shortly.\n\nGrouptrack ensures your loved ones' well-being with:\n\n- [X] Real-time Location Sharing\n- [X] Secure Communication\n- [X] Location History with Routes\n- [X] Geo-fencing\n- [X] End-to-End Encryption\n- [ ] SOS Help Alert\n\n## Security Features\n\n### End-to-End Encryption\nGrouptrack ensures the privacy and security of your data by implementing end-to-end encryption. This encryption method ensures that only the group members can access the location data, preventing unauthorized access by third parties.\n\n- 🔐 **Signal Protocol Integration**\n    - Leverages the industry-leading Signal Protocol for end-to-end encryption\n    - Provides advanced cryptographic protection for all shared location data\n\n- 🔒 **Comprehensive Data Protection**\n    - All location data are encrypted before transmission\n    - Encryption keys are uniquely generated for each user and space\n    - No third-party, including Grouptrack servers, can access unencrypted data\n\n- 🔑 **Advanced Encryption Mechanisms**\n    - Utilizes industry-standard encryption algorithms (e.g., AES-256)\n    - Implements secure key exchange protocols\n    - Ensures data integrity and confidentiality\n\n- 🛡️ **Privacy Guarantees**\n    - Encryption happens client-side before data leaves the device\n    - Encrypted data is stored securely with no server-side decryption\n\n*Note: End-to-end encryption ensures that only intended group member can decrypt and view shared information.*\n\n## Screenshots\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003cth width=\"33%\" \u003eCreate/Join Group\u003c/th\u003e\n    \u003cth  width=\"33%\" \u003eShare Location\u003c/th\u003e\n    \u003cth  width=\"33%\" \u003eLocation History\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=\"screenshots/grouptrack_ss_1.jpg\"  alt=\"Family Safety At Your Fingertips\"/\u003e\u003c/td\u003e\n    \u003ctd\u003e \u003cimg src=\"screenshots/grouptrack_ss_2.jpg\"   alt=\"Say Goodbye to 'Where are You?' Texts \"/\u003e \u003c/td\u003e\n    \u003ctd\u003e \u003cimg src=\"screenshots/grouptrack_ss_3.jpg\"  alt=\"Always Track Your Loved Ones\"/\u003e \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003cth width=\"33%\" \u003eGeofencing\u003c/th\u003e\n    \u003cth  width=\"33%\" \u003eCommunication\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr align=\"center\"\u003e\n    \u003ctd\u003e\u003cimg src=\"screenshots/grouptrack_ss_4.jpg\"  alt=\"Customize Your Places According to Your Needs\" width=\"70%\" /\u003e\u003c/td\u003e\n    \u003ctd\u003e \u003cimg src=\"screenshots/grouptrack_ss_5.jpg\"   alt=\"Chat with Your Loved Ones Anytime, Anywhere\" width=\"70%\" /\u003e \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## Requirements\nMake sure you have the latest stable version of Android Studio installed.\nYou can then proceed by either cloning this repository or importing the project directly into Android Studio, following the steps provided in the [documentation](https://developer.android.com/jetpack/compose/setup#sample).\n\u003cdetails\u003e\n     \u003csummary\u003e Click to expand \u003c/summary\u003e\n\n### Google Maps SDK\nTo enable the MapView functionality, obtaining an API key as instructed in the [documentation](https://developers.google.com/maps/documentation/android-sdk/get-api-key) is required. This key should then be included in the local.properties file as follows:\n\n```\nMAPS_API_KEY=your_map_api_key\n```\n\n### Firebase Setup\nTo enable Firebase services, you will need to create a new project in the [Firebase Console](https://console.firebase.google.com/).\nUse the `applicationId` value specified in the `app/build.gradle` file of the app as the Android package name.\nOnce the project is created, you will need to add the `google-services.json` file to the app module.\nFor more information, refer to the [Firebase documentation](https://firebase.google.com/docs/android/setup).\n\nGrouptrack uses the following Firebase services, Make sure you enable them in your Firebase project:\n- Authentication (Phone, Google)\n- Firestore (To store user data)\n\u003c/details\u003e\n\n## Tech stack\n\nGrouptrack utilizes the latest Android technologies and adheres to industry best practices. Below is the current tech stack used in the development process:\n\n- MVVM Architecture\n- Jetpack Compose\n- Kotlin\n- Coroutines + Flow\n- Jetpack Navigation\n- Retrofit\n- Fusion Location Provider\n- Google Maps SDK\n- DataStore\n- Room Database\n- Firebase Authentication\n- Firebase Firestore\n- Cloud Functions\n- Google Maps SDK\n- Hilt\n\n## Contribution\n\nThe Canopas team enthusiastically welcomes contributions and project participation! There are a bunch of things you can do if you want to contribute! The [Contributor Guide](CONTRIBUTING.md) has all the information you need for everything from reporting bugs to contributing entire new features. Please don't hesitate to jump in if you'd like to, or even ask us questions if something isn't clear.\n\n## Credits\nGrouptrack is owned and maintained by the [Canopas team](https://canopas.com/). You can follow them on X at [@canopassoftware](https://x.com/canopassoftware) for project updates and releases. If you are interested in building apps or designing products, please let us know. We'd love to hear from you!\n\n\u003ca href=\"https://canopas.com/contact\"\u003e\u003cimg src=\"./screenshots/cta_btn.png\" width=300\u003e\u003c/a\u003e\n\n## License\n\nGrouptrack is licensed under the Apache License, Version 2.0.\n\n```\nCopyright 2024 Canopas Software LLP\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nYou won't be using this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n   http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcanopas%2Fgroup-track-android","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcanopas%2Fgroup-track-android","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcanopas%2Fgroup-track-android/lists"}