Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/aaronpowell/graphql-typescript-workshop

This is a series of exercised to learn how to implement a GraphQL server with TypeScript and do end-to-end type-safety
https://github.com/aaronpowell/graphql-typescript-workshop

graphql javascript react typescript

Last synced: 3 days ago
JSON representation

This is a series of exercised to learn how to implement a GraphQL server with TypeScript and do end-to-end type-safety

Awesome Lists containing this project

README

        

# GraphQL and TypeScript Workshop

This 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).

[![Watch the workshop recording](https://img.youtube.com/vi/s2tUrLLdrT8/0.jpg)](https://www.youtube.com/watch?v=s2tUrLLdrT8)

## Undertaking the workshop

The 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.

## Prerequisites

### VS Code devcontainer

The 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.

Alternatively, you can use [GitHub Codespaces](https://github.com/codespaces) which will load the devcontainer from the root.

Learn 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/).

### Required Software

If you are unable to use the devcontainer the following software is required:

- [Node.js LTS](https://nodejs.org/en/download/)
- A text editor
- [Azure Function Core Tools](https://docs.microsoft.com/azure/azure-functions/functions-run-local?WT.mc_id=javascript-13112-aapowell#v2)

## Optional steps

The 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).