Go can work great on the backend for a React project. We just released a course on the freeCodeCamp.org channel that will leach you how to build a full stack web app with React and Go. This comprehensive course is designed to teach you the fundamentals of Go while guiding you through the creation of a full stack web application. Throughout the course, you'll work with a variety of modern technologies, including React, TypeScript, MongoDB, TanStack Query, and ChakraUI.

In this project-based course, you'll build a fully functional web app with Create, Read, Update, and Delete (CRUD) functionality for todos. The app will feature a stylish user interface with light and dark modes, ensuring a responsive design that looks great on any screen size. By the end of this course, you'll have a solid understanding of Go and React, along with hands-on experience in integrating various modern tools and libraries.

Go, also known as Golang, is a statically typed, compiled programming language designed for simplicity and performance. You'll learn how to set up a Go project, build APIs, and handle server-side logic. On the frontend, you'll use React, a popular JavaScript library for building user interfaces, to create the components of your application. The use of TypeScript, a typed superset of JavaScript, will help catch errors early and make the code more robust and maintainable.

For data storage, the course will guide you through integrating MongoDB, a NoSQL database known for its flexibility and scalability, with your Go APIs. You'll also use TanStack Query, a powerful tool for handling data fetching, caching, and updates in your React applications. This will help you manage server state and ensure your app performs efficiently. To create a stylish and responsive user interface, you'll utilize ChakraUI, a modern React component library that provides a set of accessible, reusable, and composable UI components.

Course Contents

Here are the sections in this course:

Intro & Demo: Get an overview of the course and see a demo of the final project.

Comparing to Node.js: Understand the differences between Go and Node.js and why you might choose Go for your projects.

Project Setup: Set up your development environment and initialize your project.

API without DB: Build the initial API endpoints without connecting to a database.

API with DB: Integrate MongoDB to add persistent data storage to your API.

UI Design: Design the frontend of your app using React and ChakraUI.

Consume API from React: Learn how to make API calls from your React frontend.

Configuration for Deployment: Prepare your app for deployment, ensuring it is production-ready.

Deployment for Free: Deploy your app using free hosting services, making it accessible to the world.


Whether you're a beginner looking to learn Go or an experienced developer wanting to expand your skill set, this course has something for everyone. Watch the course on the freeCodeCamp.org YouTube channel (2-hour watch).