{"id":24302843,"url":"https://github.com/bryanfks-dev/courtly","last_synced_at":"2026-05-06T09:34:29.205Z","repository":{"id":271846892,"uuid":"860708433","full_name":"bryanfks-dev/Courtly","owner":"bryanfks-dev","description":"Easily order a court or sport field with a Mobile App","archived":false,"fork":false,"pushed_at":"2025-01-10T08:48:00.000Z","size":6038,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-10T09:37:21.514Z","etag":null,"topics":["dart","flutter"],"latest_commit_sha":null,"homepage":"","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/bryanfks-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2024-09-21T01:29:42.000Z","updated_at":"2025-01-10T08:48:04.000Z","dependencies_parsed_at":"2025-01-10T09:52:42.489Z","dependency_job_id":null,"html_url":"https://github.com/bryanfks-dev/Courtly","commit_stats":null,"previous_names":["bryanfks-dev/courtly"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bryanfks-dev%2FCourtly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bryanfks-dev%2FCourtly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bryanfks-dev%2FCourtly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bryanfks-dev%2FCourtly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bryanfks-dev","download_url":"https://codeload.github.com/bryanfks-dev/Courtly/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242225885,"owners_count":20092668,"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":["dart","flutter"],"created_at":"2025-01-17T00:19:50.696Z","updated_at":"2025-12-06T09:03:00.572Z","avatar_url":"https://github.com/bryanfks-dev.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\u003cimg src=\"web/icons/Icon-192.png\" style=\"width:16em\"\u003e\u003c/p\u003e\r\n\r\n# Courtly: Easily order a court or sport field\r\n\r\n**Courtly** is an mobile app for sports field booking with an innovation to overcome traditional booking systems. By utilizing technology, users can make reservations for sports field facilities only through their smartphone gadgets without the need to come to the location or chat via WhatsApp. Courtly can also provide **real-time field availability information**, allowing users to **choose the time they want**, and can make **payments directly with flexible and secure methods**.\r\n\r\n## 🚀 Key of Features\r\n\r\nCourtly app includes several features, such as:\r\n\r\n1. **Find Courts**: Browse sports courts you want by types.\r\n2. **Court Booking**: Book sports courts quickly.\r\n3. **Ratings \u0026 Reviews**: Rate courts and players for a better experience.\r\n4. **Flexible \u0026 Secure Payment**: Order a sports courts with a single-tap and various secure payment.\r\n\r\n## 🛠️ Technologies Used\r\n\r\n- **Flutter SDK**: [Install Flutter](https://docs.flutter.dev/get-started/install).\r\n- **Dart**: Comes with Flutter but ensure it's installed.\r\n- **Backend Server**: [Visit backend repo](https://github.com/bryanfks-dev/Courtly-Service).\r\n\r\n## 💻 Local Development\r\n\r\n### Requirement(s):\r\n\r\n- Flutter\r\n- Android Studio (optional) / VSCode\r\n- Mobile phone emulator\r\n\r\n### Steps\r\n\r\nFollow these steps to set up the project locally:\r\n\r\n1. Clone the repository:\r\n\r\n```bash\r\ngit clone https://github.com/bryanfks-dev/Courtly.git\r\ncd Courtly\r\n```\r\n\r\n2. Install depedencies:\r\n\r\n```bash\r\nflutter pub get\r\n```\r\n\r\n3. Configure configs:\r\n\r\n```bash\r\ncd lib/core/config\r\n```\r\n\r\nSet the backend server ip address and api version:\r\n\r\n```dart\r\n/// [baseUrl] is the base URL of the API server.\r\nstatic const String baseUrl = '...';\r\n\r\n/// [version] is the version of the API server.\r\n/// [version] should always start with 'v' followed by the version number.\r\nstatic const String version = 'v...';\r\n```\r\n\r\nSet the midtrans client key:\r\n\r\n```dart\r\n/// [clientKey] is the client key from Midtrans\r\nstatic const String clientKey = \"...\";\r\n```\r\n\r\n4. Start your emulator:\r\n\r\nFor AVD Emulator:\r\n\r\n```bash\r\nemulator -avd \u003cavd_name\u003e\r\n```\r\n\r\n5. Start the app:\r\n\r\n```bash\r\nflutter run\r\n```\r\n\r\n## 📄 License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/bryanfks-dev/Courtly/blob/main/LICENSE).\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbryanfks-dev%2Fcourtly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbryanfks-dev%2Fcourtly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbryanfks-dev%2Fcourtly/lists"}