{"id":23444877,"url":"https://github.com/tutortoise/tutortoise-app","last_synced_at":"2026-06-20T04:31:05.565Z","repository":{"id":264376717,"uuid":"887673466","full_name":"Tutortoise/tutortoise-app","owner":"Tutortoise","description":"Source of Tutortoise Mobile App","archived":false,"fork":false,"pushed_at":"2024-12-13T06:04:40.000Z","size":4853,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-09-04T00:42:30.312Z","etag":null,"topics":["android","kotlin","mobile-app"],"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/Tutortoise.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-11-13T04:47:55.000Z","updated_at":"2024-12-13T06:04:43.000Z","dependencies_parsed_at":"2024-12-08T03:18:34.840Z","dependency_job_id":"05294f9e-ad97-4532-9766-f932be9668cf","html_url":"https://github.com/Tutortoise/tutortoise-app","commit_stats":null,"previous_names":["tutortoise/tutortoise-app"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Tutortoise/tutortoise-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tutortoise%2Ftutortoise-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tutortoise%2Ftutortoise-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tutortoise%2Ftutortoise-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tutortoise%2Ftutortoise-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Tutortoise","download_url":"https://codeload.github.com/Tutortoise/tutortoise-app/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tutortoise%2Ftutortoise-app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34557551,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-20T02:00:06.407Z","response_time":98,"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":["android","kotlin","mobile-app"],"created_at":"2024-12-23T19:19:46.612Z","updated_at":"2026-06-20T04:31:05.541Z","avatar_url":"https://github.com/Tutortoise.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tutortoise (Android App)\n\nThe Tutortoise Android Application is developed using Kotlin Programming Language and Android Studio IDE.\n\n## User Interface Overview\n\nTutortoise App is design to look simple, easy to use and understand, fitting with most modern apps.\n\n\u003cp float=\"left\"\u003e\n   \u003cimg src=\".github/splash.png\" width=\"200\" height=\"400\" /\u003e\n   \u003cimg src=\".github/login.png\" width=\"200\" height=\"400\" /\u003e\n   \u003cimg src=\".github/tutor.png\" width=\"200\" height=\"400\" /\u003e\n   \u003cimg src=\".github/learner.png\" width=\"200\" height=\"400\" /\u003e\n\u003c/p\u003e\n\n## Features\n\nIn Tutortoise, we focus on delivering tools and functionalities designed to enhance learning and teaching experiences. This section outlines the core aspects that make the app effective and user-friendly.\n\n### 1. Explore and Find the Perfect Tutors\n\nEasily search for tutors based on various criteria such as category, location, hourly rate, rating, and lesson type (online/offline). This feature allows learners to quickly narrow down the options and find a tutor that fits their specific needs.\n\n### 2. Perfect Tutor Recommendation\n\nReceive tailored tutor recommendations based on your location and preferred learning style (visual, auditory, or kinesthetic). This personalized feature helps connect learners with tutors who match their learning preferences, ensuring a better educational experience.\n\n### 3. Chat with your Tutor\n\nStay connected with your tutor through an in-app chat feature. You can discuss lessons, clarify doubts, and ask questions at any time. Instant chat notifications ensure you never miss an important message from your tutor or learner, making communication more seamless and effective.\n\n### 4. Register with your Google Account\n\nSign up or log in quickly and securely using your Google account through OAuth. This streamlined registration process saves time and eliminates the need for remembering additional credentials.\n\n### 5. Book your Tutor\n\nEasily schedule and reserve lessons with your preferred tutor. This feature allows learners to book sessions directly through the app, ensuring flexibility and convenience in managing learning schedules.\n\n### 6. Become a Tutor\n\nTurn your expertise into an opportunity by becoming a tutor on the platform. You can create, update, and manage your tutoring profile and offer lessons to students seeking your skills, all while setting your own rates and availability.\n\n### 7. Mark Your Calendar\n\nTutors can manage their schedules effectively. Tutors who accept a learner's reservation will automatically added on their calendar, ensuring no sessions are missed and everything is well-organized.\n\n## Dependencies\n\n- [Android Material](https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md)\n- [CircleImageView](https://github.com/hdodenhof/CircleImageView)\n- [Firebase](https://firebase.google.com/docs/android/android-play-services)\n- [Flexbox](https://github.com/google/flexbox-layout)\n- [Glide](https://github.com/bumptech/glide)\n- [Gson](https://github.com/google/gson)\n- [Kotlin Coroutines](https://github.com/Kotlin/kotlinx.coroutines)\n- [Lifecycle \u0026 LiveData](https://developer.android.com/jetpack/androidx/releases/lifecycle)\n- [Logging Interceptor](https://square.github.io/okhttp/)\n- [Play Services](https://developers.google.com/android/guides/setup)\n- [Retrofit](https://github.com/square/retrofit)\n- [Shimmer](https://github.com/facebookarchive/shimmer-android)\n- [Ucrop](https://github.com/Yalantis/uCrop)\n\n# Tutortoise (Local Setup)\n\nTo set up the on your local environment, follow these steps:\n\n## 1. Keystore Configuration\n\nBefore building the app, you need to generate and configure a Keystore:\n\n- **Keystore File**:  \n  Name the file `keystore.jks` and store it securely.\n\n- **Keystore Properties**:  \n  Create or edit a `keystore.properties` file and include the following details:\n\n  ```properties\n  store.file=path/to/keystore.jks\n  store.password=your_keystore_password\n  key.alias=your_key_alias\n  key.password=your_key_password\n  ```\n\n- **Google Services**:  \n  Place the `google-services.json` file in the `app/` directory.\n\n## 2. Setting Up Base URL for API\n\nTo configure the app to connect to the API:\n\n1. **Create or Edit the `local.properties` File**:  \n   In the root directory of the project, either create or update the `local.properties` file.\n\n2. **Add the API Base URL**:  \n   Include the following entry in the `local.properties` file to set the base URL for the API:\n   ```properties\n   base.url=https://tutortoise-api.app/api/v1/\n   ```\n\n## 3. Setting Up OAuth Client\n\nTo configure OAuth authentication:\n\n1. **Edit `local.properties`**:  \n   Add the following entry to your `local.properties` file to include your OAuth client ID:\n\n   ```properties\n   google.oauth.client.id=your_oauth_client_id\n   ```\n\n   Replace `your_oauth_client_id` with the actual OAuth client ID provided for your app.\n\nAfter completing these steps, the app will be configured and ready for local development.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftutortoise%2Ftutortoise-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftutortoise%2Ftutortoise-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftutortoise%2Ftutortoise-app/lists"}