{"id":20146470,"url":"https://github.com/kmturley/appengine-datastore-nest-angular","last_synced_at":"2025-06-21T22:07:10.858Z","repository":{"id":52328529,"uuid":"170427642","full_name":"kmturley/appengine-datastore-nest-angular","owner":"kmturley","description":"Example full-stack Typescript project using Google AppEngine and Datastore","archived":false,"fork":false,"pushed_at":"2021-04-30T18:29:42.000Z","size":490,"stargazers_count":11,"open_issues_count":3,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-09T19:44:24.199Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://angular-nest-datastore.appspot.com","language":"TypeScript","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/kmturley.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":"2019-02-13T02:40:36.000Z","updated_at":"2023-11-13T17:32:08.000Z","dependencies_parsed_at":"2022-08-30T18:21:58.689Z","dependency_job_id":null,"html_url":"https://github.com/kmturley/appengine-datastore-nest-angular","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kmturley/appengine-datastore-nest-angular","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmturley%2Fappengine-datastore-nest-angular","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmturley%2Fappengine-datastore-nest-angular/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmturley%2Fappengine-datastore-nest-angular/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmturley%2Fappengine-datastore-nest-angular/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kmturley","download_url":"https://codeload.github.com/kmturley/appengine-datastore-nest-angular/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmturley%2Fappengine-datastore-nest-angular/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261200408,"owners_count":23123953,"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":[],"created_at":"2024-11-13T22:23:28.914Z","updated_at":"2025-06-21T22:07:05.838Z","avatar_url":"https://github.com/kmturley.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# appengine-datastore-nest-angular\n\nExample full-stack Typescript project using:\n\n* AppEngine Standard\n* Google Datastore 3.1.x\n* NodeJS 10.x\n* NestJS 5.6.x\n* Angular Universal 7.1.x\n* Docker 18.x\n* Googe OAuth2\n\n\n## Auth Setup\n\nCreate a Google Cloud project, and enable the Google+ API at:\n\n    https://console.cloud.google.com/apis/library/plus.googleapis.com\n\nThen create some credentials and save to a file at /backend/credentials.json:\n\n    APIs \u0026 Services \u003e Create credentials \u003e OAuth client ID \u003e Other \u003e Enter name \u003e Download JSON\n\nThen generate a JWT token using:\n\n    cd backend\n    npm run generate-token\n\nSave in the following format at /backend/jwt.json\n\n    {\n      \"secret_key\": \"X\"\n    }\n\n## Installation\n\nInstall dependencies and build images using:\n\n    docker-compose build\n\n\n## Usage\n\nRun the backend and frontend together using:\n\n    docker-compose up\n\nView the Nest backend at:\n\n    http://localhost:8080/\n\nView the Angular frontend at:\n\n    http://localhost:4200/\n\n\n## Automatic Deployment\n\nGo to Google Cloud Build:\n\n    https://console.cloud.google.com/cloud-build/triggers\n\nClick 'Add Trigger' and name it 'Backend'. Then set Cloud Build configuration file location:\n\n    /backend/cloudbuild.yaml\n\nClick 'Add Trigger' and name it 'Frontend'. Then set Cloud Build configuration file location:\n\n    /frontend/cloudbuild.yaml\n\n\n## Manual Deployment\n\nDeploy backend service:\n\n    cd backend\n    gcloud init\n    npm install\n    npm run build\n    npm run deploy\n\nDeploy frontend service:\n\n    cd frontend\n    gcloud init\n    npm install\n    npm run build:prerender\n    npm run deploy\n\n\n## Directory structure\n\n    /backend                               --\u003e Backend source files\n    /frontend                              --\u003e Frontend sources files\n\n\n## Contact\n\nFor more information please contact kmturley\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkmturley%2Fappengine-datastore-nest-angular","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkmturley%2Fappengine-datastore-nest-angular","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkmturley%2Fappengine-datastore-nest-angular/lists"}