{"id":19471660,"url":"https://github.com/aaronpowell/graphql-typescript-workshop","last_synced_at":"2025-10-04T17:50:42.534Z","repository":{"id":37993201,"uuid":"337586165","full_name":"aaronpowell/graphql-typescript-workshop","owner":"aaronpowell","description":"This is a series of exercised to learn how to implement a GraphQL server with TypeScript and do end-to-end type-safety","archived":false,"fork":false,"pushed_at":"2022-09-09T04:38:49.000Z","size":2507,"stargazers_count":51,"open_issues_count":0,"forks_count":10,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-12-02T18:12:04.463Z","etag":null,"topics":["graphql","javascript","react","typescript"],"latest_commit_sha":null,"homepage":"https://www.aaron-powell.com/talks/type-safe-graphql-apps-with-typescript-workshop/","language":"Shell","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/aaronpowell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-CODE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-02-10T01:36:25.000Z","updated_at":"2024-11-18T03:18:59.000Z","dependencies_parsed_at":"2023-01-17T17:49:31.219Z","dependency_job_id":null,"html_url":"https://github.com/aaronpowell/graphql-typescript-workshop","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/aaronpowell%2Fgraphql-typescript-workshop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aaronpowell%2Fgraphql-typescript-workshop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aaronpowell%2Fgraphql-typescript-workshop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aaronpowell%2Fgraphql-typescript-workshop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aaronpowell","download_url":"https://codeload.github.com/aaronpowell/graphql-typescript-workshop/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227932101,"owners_count":17843003,"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":["graphql","javascript","react","typescript"],"created_at":"2024-11-10T19:03:11.640Z","updated_at":"2025-10-04T17:50:37.454Z","avatar_url":"https://github.com/aaronpowell.png","language":"Shell","readme":"# GraphQL and TypeScript Workshop\r\n\r\nThis repository contains the exercises for my [Type-safe GraphQL apps with TypeScript](https://www.aaron-powell.com/talks/type-safe-graphql-apps-with-typescript-workshop/) workshop. You can watch the recording of the workshop from TSConf 2021 [on YouTube](https://www.youtube.com/watch?v=s2tUrLLdrT8).\r\n\r\n[![Watch the workshop recording](https://img.youtube.com/vi/s2tUrLLdrT8/0.jpg)](https://www.youtube.com/watch?v=s2tUrLLdrT8)\r\n\r\n## Undertaking the workshop\r\n\r\nThe workshop is designed to be instructor-led, so if you would like to participate in it contact me via the [info on my GitHub profile](https://github.com/aaronpowell). But it can be a self-directed workshop, with the guides being within the [`steps`](steps) folder.\r\n\r\n## Prerequisites\r\n\r\n### VS Code devcontainer\r\n\r\nThe workshop contains [VS Code devcontainer](https://code.visualstudio.com/docs/remote/containers?WT.mc_id=javascript-13112-aapowell) to help setup your environment. You can either open the whole repository in one, each step of the workshop or the completed application. This will setup all the required software and install extensions that will be useful for doing the workshop.\r\n\r\nAlternatively, you can use [GitHub Codespaces](https://github.com/codespaces) which will load the devcontainer from the root.\r\n\r\nLearn more about why to use a devcontainer [here](https://www.aaron-powell.com/posts/2021-03-08-your-open-source-project-needs-a-dev-container-heres-why/).\r\n\r\n### Required Software\r\n\r\nIf you are unable to use the devcontainer the following software is required:\r\n\r\n- [Node.js LTS](https://nodejs.org/en/download/)\r\n- A text editor\r\n- [Azure Function Core Tools](https://docs.microsoft.com/azure/azure-functions/functions-run-local?WT.mc_id=javascript-13112-aapowell#v2)\r\n\r\n## Optional steps\r\n\r\nThe workshop is designed to be run without any database or hosting platform, but if you desire it can be configured to use [CosmosDB](https://docs.microsoft.com/azure/cosmos-db/serverless?WT.mc_id=javascript-13112-aapowell) and deployed to [Azure Static Web Apps](https://docs.microsoft.com/azure/static-web-apps/?WT.mc_id=javascript-13112-aapowell). If you don't have an Azure account, you can sign up for one [for free](https://azure.microsoft.com/free/?WT.mc_id=javascript-13112-aapowell).\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faaronpowell%2Fgraphql-typescript-workshop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faaronpowell%2Fgraphql-typescript-workshop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faaronpowell%2Fgraphql-typescript-workshop/lists"}