Read in another language: ะฃะบัะฐัะฝััะบะฐ, English.
This is the React/GraphQL/Apollo client from the Job Board client repo, but migrated and converted to TypeScript
The client-side application was slightly refactored using TypeScript, which added type safety to the code
It uses the GraphQL TypeScript code generator, which allows us to generate TypeScript types and gql-graphql functions from our GraphQL schema, queries, and mutations
This client app is only part of the application, the second part (the server) is located at this repo: Job Board typescript server
The app in this repo works with the server hosted at https://render.com, hosting public URL: https://job-board-server-ts.onrender.com/graphql
- TypeScript - Language that builds on JavaScript by adding static types, helping developers catch errors early and write more reliable code
- GraphQL Code Generator - Tool that automatically generates TypeScript types (or other language types) and boilerplate code based on your GraphQL schema and operations
- Vite - A fast and modern build tool that provides lightning-fast hot module replacement (HMR) for development, optimized for frameworks
- React - Library used for building user interfaces, particularly for single-page applications where you need a fast, interactive experience
- GraphQL - Core GraphQL library
- JWT (JSON Web Token) - A compact, URL-safe token format used for securely transmitting information between parties. Commonly used for authentication and authorization in web applications
- Apollo-client - State management library specifically designed for working with GraphQL APIs. It helps your app fetch, cache, and manage data from a GraphQL server efficiently
- Concurrently - Node.js tool that lets you run multiple commands (scripts) at the same time in a single terminal
The full list of dependencies can be found in the package.json file
- Clone the repository:
git clone https://github.com/labattaria/job-board-client-ts.git- Install project dependencies:
cd job-board-client-ts
npm installStart the server using the following command:
npm startThis will start the server and also watch for changes in watch mode, generating outputs into the folder at the path src/generated/ Server will be located at http://localhost:3000/job-board-client-ts/