{"id":19238116,"url":"https://github.com/cloud-design-patterns-journey/template-graphql-typescript","last_synced_at":"2025-10-26T12:50:08.864Z","repository":{"id":237133749,"uuid":"789445111","full_name":"cloud-design-patterns-journey/template-graphql-typescript","owner":"cloud-design-patterns-journey","description":"Template repository for a Typescript-based Graphql micro-service.","archived":false,"fork":false,"pushed_at":"2024-07-17T03:49:39.000Z","size":427,"stargazers_count":1,"open_issues_count":5,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-01-05T02:09:59.150Z","etag":null,"topics":["cloud","cloud-native","graphql","hybrid-cloud","kubernetes","node","nodejs","openshift","pipeline-as-code","starter-kit","tekton","template"],"latest_commit_sha":null,"homepage":"https://cloud-design-patterns-journey.github.io/docs","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloud-design-patterns-journey.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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-04-20T15:12:44.000Z","updated_at":"2024-04-20T22:03:20.000Z","dependencies_parsed_at":"2024-05-02T04:56:24.069Z","dependency_job_id":"1a9d0ebf-9c87-4b9d-b8fc-bd67c088fe44","html_url":"https://github.com/cloud-design-patterns-journey/template-graphql-typescript","commit_stats":null,"previous_names":["cloud-design-patterns-journey/template-graphql-typescript"],"tags_count":0,"template":true,"template_full_name":"IBM/template-graphql-typescript","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-design-patterns-journey%2Ftemplate-graphql-typescript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-design-patterns-journey%2Ftemplate-graphql-typescript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-design-patterns-journey%2Ftemplate-graphql-typescript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloud-design-patterns-journey%2Ftemplate-graphql-typescript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloud-design-patterns-journey","download_url":"https://codeload.github.com/cloud-design-patterns-journey/template-graphql-typescript/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240324061,"owners_count":19783453,"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":["cloud","cloud-native","graphql","hybrid-cloud","kubernetes","node","nodejs","openshift","pipeline-as-code","starter-kit","tekton","template"],"created_at":"2024-11-09T16:29:26.928Z","updated_at":"2025-10-26T12:50:03.829Z","avatar_url":"https://github.com/cloud-design-patterns-journey.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Graphql/Typescript Code Pattern\n\nThis is a template repository for a Typescript-based Graphql micro-service.\n\nThis app contains an opinionated set of components for modern web development, including:\n\n\n## Getting started\n\n1. Click the 'Use this template' button above or [this link](./generate) to generate a new repository\n   from this template.\n2. Clone the newly created template to your computer\n3. Update the project name in the `project.json` file and update the README with the following steps,\n   run from the root of your project directory:\n```bash\nmv README.md STARTER-KIT.md\necho \"# {project name}\" \u003e README.md\n```\n4. Add and commit the changes to your repo.\n\n## Features\n\nThe starter kit provides the following features:\n\n* Graphql server from [apollo-server-express](https://github.com/apollographql/apollo-server/tree/main/packages/apollo-server-express)\n* Graphql decorators from [type-graphql](https://www.npmjs.com/package/type-graphql)\n* Dependency injection using [typescript-ioc](https://www.npmjs.com/package/typescript-ioc) decorators\n- Logging using [pino](hhttps://getpino.io/)\n- TDD environment with [jest](https://jestjs.io/)\n- Pact testing [Pact.io](https://docs.pact.io/)\n- DevOps pipeline\n\n### Deploying\n\nAfter you have created a new git repo from this git template, remember to rename the project.\nEdit `package.json` and change the default name to the name you used to create the template.\n\nMake sure you are logged into the IBM Cloud using the IBM Cloud CLI and have access\nto you development cluster. If you are using OpenShift make sure you have logged into OpenShift CLI on the command line.\n\n```$bash\nnpm i -g @ibmgaragecloud/cloud-native-toolkit-cli\n```\n\nUse the IBM Garage for Cloud CLI to register the GIT Repo with Jenkins\n```$bash\nigc pipeline\n```\n\n### Building Locally\n\nTo get started building this application locally, you can either run the application natively or use the [IBM Cloud Developer Tools](https://cloud.ibm.com/docs/cli?topic=cloud-cli-getting-started) for containerization and easy deployment to IBM Cloud.\n\n#### Native Application Development\n\nInstall the latest [Node.js](https://nodejs.org/en/download/) 6+ LTS version.\n\nOnce the Node toolchain has been installed, you can download the project dependencies with:\n\n```bash\nnpm install\ncd client; npm install; cd ..\nnpm run build\nnpm run start\n```\n\nTo run your application locally:\n```bash\nnpm run start\n```\n\nYour application will be running at `http://localhost:3000`.  You can access the `/health` and `/appmetrics-dash` endpoints at the host.\n\n## Next Steps\n\n* Learn more about augmenting your Node.js applications on IBM Cloud with the [Node Programming Guide](https://cloud.ibm.com/docs/node?topic=nodejs-getting-started).\n* Explore other [sample applications](https://cloud.ibm.com/developer/appservice/starter-kits) on IBM Cloud.\n\n## License\n\nThis sample application is licensed under the Apache License, Version 2. Separate third-party code objects invoked within this code pattern are licensed by their respective providers pursuant to their own separate licenses. Contributions are subject to the [Developer Certificate of Origin, Version 1.1](https://developercertificate.org/) and the [Apache License, Version 2](https://www.apache.org/licenses/LICENSE-2.0.txt).\n\n[Apache License FAQ](https://www.apache.org/foundation/license-faq.html#WhatDoesItMEAN)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloud-design-patterns-journey%2Ftemplate-graphql-typescript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloud-design-patterns-journey%2Ftemplate-graphql-typescript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloud-design-patterns-journey%2Ftemplate-graphql-typescript/lists"}