{"id":20814127,"url":"https://github.com/branflake2267/debugging-flutter-web-dartwebserver-appengine","last_synced_at":"2025-05-07T11:22:23.383Z","repository":{"id":49813222,"uuid":"271928717","full_name":"branflake2267/debugging-flutter-web-dartwebserver-appengine","owner":"branflake2267","description":"Debugging a flutter web app with a Dart web server hosted on App Engine. ","archived":false,"fork":false,"pushed_at":"2020-06-21T10:22:40.000Z","size":90,"stargazers_count":9,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-31T09:37:49.493Z","etag":null,"topics":["appengine-flex","dart","debugging-with-brandondonnelson","flutter"],"latest_commit_sha":null,"homepage":null,"language":"Dart","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/branflake2267.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}},"created_at":"2020-06-13T02:48:59.000Z","updated_at":"2024-10-22T01:08:31.000Z","dependencies_parsed_at":"2022-09-13T20:51:12.256Z","dependency_job_id":null,"html_url":"https://github.com/branflake2267/debugging-flutter-web-dartwebserver-appengine","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/branflake2267%2Fdebugging-flutter-web-dartwebserver-appengine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/branflake2267%2Fdebugging-flutter-web-dartwebserver-appengine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/branflake2267%2Fdebugging-flutter-web-dartwebserver-appengine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/branflake2267%2Fdebugging-flutter-web-dartwebserver-appengine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/branflake2267","download_url":"https://codeload.github.com/branflake2267/debugging-flutter-web-dartwebserver-appengine/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252866128,"owners_count":21816397,"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":["appengine-flex","dart","debugging-with-brandondonnelson","flutter"],"created_at":"2024-11-17T21:10:14.988Z","updated_at":"2025-05-07T11:22:23.353Z","avatar_url":"https://github.com/branflake2267.png","language":"Dart","readme":"# Debugging and Deploying a Flutter Web App To App Engine Flex\nDebugging and deploying a Flutter web app with Dart HTTP web server to App Engine Flex\n\n[![Build Status](https://travis-ci.org/branflake2267/debugging-flutter-web-dartwebserver-appengine.svg?branch=master)](https://travis-ci.org/branflake2267/debugging-flutter-web-dartwebserver-appengine)\n\n[![Debugging Video Tutorial](https://img.youtube.com/vi/lrUrE8F2lNw/0.jpg)](https://www.youtube.com/watch?v=lrUrE8F2lNw)\n \n\n## Project Configuration \n| Setting | Value |\n| --- | --- |\n| Purpose | Debugging Flutter web app with dart web server hosted on App Engine |\n| Client | Flutter web app |\n| Server | Dart http web server |\n| Client Language | Dart |\n| Server Language | Dart |\n| Architecture | Flutter/Dart |\n| IDE | Visual Studio Code |\n| CI | Travis CI |\n| Hosting | App Engine Flex |\n| License | GPL v3 |\n| Tutorial | [Youtube Tutorial](https://youtu.be/lrUrE8F2lNw) |\n\n\n## Debugging\n\n### Debugging Client CLI\n\n* Run `cd ./client` to change into the server directory.\n* Run `pub get` to initialize the project.\n* Run `flutter run -d chrome`\n\n### Debugging Server CLI\n\n* Run `cd ./server` to change into the server directory.\n* Run `pub get` to initialize the project.\n* Run `dart ./lib/server/server.dart`\n\n\n### Debugging with VS Code\n\n* Use the VS Code Launcher `1. Launch Server`\n* Use the VS Code Launcher `2. Launch Flutter Web App`\n\n#### VS Code Endpoints\n\n* http://localhost:54432/#/ - client \n* http://localhost:8080 - server\n* http://localhost:8080/api - server\n* http://localhost:8080/api/getMessage - server\n\n\n### Debugging Docker\nUsed for debugging deployment config. \n\n#### Debugging Docker Container\n\n* Run `sh ./debug-docker-container-config.sh`\n* Open http://localhost:8080\n\n| Docker cmd | Details |\n| --- | --- |\n| docker ps | list the docker containers and [container id]s |\n| docker exec -it [container id] bash| /bin/bash into the container. (The container name could be used as well.) |\n\n\n\n## Init Reference\n\n### Install Dart\nThe [dart tools](https://dart.dev/get-dart) are required to use this project. \n\n### Install VS Code Dart Plugin\nInstall the Dart VS Code plugin. \n\nAdd the program launcher, to launch the web server.\n```\n{\n  \"version\": \"0.2.0\",\n  \"configurations\": [\n    {\n      \"name\": \"Launch Web Server\",\n      \"program\": \"lib/server.dart\",\n      \"request\": \"launch\",\n      \"type\": \"dart\"\n    }\n  ]\n}\n```\n\n## Generate Flutter Web App\n\n* [Generate a Flutter Web App Instructions](https://flutter.dev/docs/get-started/web)\n* I ran `flutter create client` to create an app named client.\n\n\n### Cloud Tools CLI Installation\n\n1. Sign up for [Google Cloud Compute](https://console.cloud.google.com/).\n2. Create a GCP project.\n3. Create an App Engine Application https://console.cloud.google.com/appengine/start.\n    - This app is Node.js \u0026 a Standard App Engine deployment.\n    - Download Cloud SDK CLI tools\n    - Run `gcloud init`\n    - Run `gcloud app create` - create a flex project\n4. Create a service account for App Engine Admin for deployments. \n    - And be sure you add the `Cloud Build API` permissions to the services account. \n    - And turn on the [Cloud API Dash](https://console.developers.google.com/apis/api/cloudbuild.googleapis.com/overview) for the project.\n5. Create an App Engine project in the console https://console.cloud.google.com/appengine.\n    - After you create an app engine project, follow the App Engine getting strted instructions on how to install Cloud CLI.\n\n### app.yaml\n[app.yaml](./server/app.yaml) configures the App Engine web hosting service options. [app.yaml reference](https://cloud.google.com/appengine/docs/standard/nodejs/config/appref)\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbranflake2267%2Fdebugging-flutter-web-dartwebserver-appengine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbranflake2267%2Fdebugging-flutter-web-dartwebserver-appengine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbranflake2267%2Fdebugging-flutter-web-dartwebserver-appengine/lists"}