We may earn an affiliate commission when you visit our partners.
Course image
Trevor Sawler

React and Go are something of a match made in heaven. React is the world's most popular JavaScript library for building Single Page Applications, and Go is uniquely well-suited for building REST back ends. That is what this course is all about.

This course has been completely re-done, for React version 18 and React Router version 6. The old version of this course is still available at the end of the new one, with each section marked as "Legacy." I'll remove it in a month or so, just to give people who have already started a chance to finish that version, if they so desire.

Read more

React and Go are something of a match made in heaven. React is the world's most popular JavaScript library for building Single Page Applications, and Go is uniquely well-suited for building REST back ends. That is what this course is all about.

This course has been completely re-done, for React version 18 and React Router version 6. The old version of this course is still available at the end of the new one, with each section marked as "Legacy." I'll remove it in a month or so, just to give people who have already started a chance to finish that version, if they so desire.

Learn how to develop and deploy a fast, secure web application built using the most popular and in-demand JavaScript front end (React), with one of the most popular and powerful programming languages for the back end (Go).

React is an open-source, front end JavaScript library for building user interfaces or UI components. React is maintained by Facebook and a community of developers and companies. React can be used as a base in the development of single-page or mobile applications. React is the most popular front-end JavaScript library in the field of web development, and is used by many well-known organizations, including Netflix, Instagram, and the New York Times. With React, we build fast, interactive user interfaces.

Go is a modern, type safe, compiled, and extremely fast programming language. It it is ideally suited for building safe, scalable, incredibly fast REST APIs and web applications, and is also used by large corporations around the wold, including Netflix, Instagram, American Express, and the New York Times.

If you were paying attention, you might have noticed some overlap there the same large companies using React are also using Go. There is a reason for that, and we will be exploring that reason in this course.

In this course we will go over the core fundamentals of React, including the React life cycle, components, functional components, props, state, and more. We will also cover calling a remote API (both one we build, and a 3rd party API), and much more.

In the first part of the course, we'll build a simple application using both React class component and Functional Components with hooks. Although hooks and functions appear to the the future for React, there are literally millions of lines of code out there built using classes, so it's important to know how to work with React using both classes and functions & hooks.

In the second project for this course, we'll build a Single Page Web Application (SPA) with a React front end and a Go back end API, where we will  cover receiving requests on the back end, both as JSON and as GraphQL, and returning that response as JSON.

In order to secure access to authenticated users for certain parts  of our site, we will also explore how to generate and use JSON Web Tokens (JWT), including refresh tokens.

This course is not intended for absolute beginners. I expect that you have some experience in JavaScript and Go, and a good knowledge of HTML.

Enroll now

What's inside

Learning objectives

  • Build amazing single page applications with react js
  • Build reusable, composable components in react
  • Build a rest api in go that handles json requests, and serves json responses
  • Build an api in go that handles graphql requests

Syllabus

Introduction
Welcome
Notice for existing students
A bit about me
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Develops React front ends and Go back ends, which are essential tools for modern web and mobile app development
Teaches both React class components and React functional components, providing a comprehensive understanding of React
Builds a full-stack web application using React and Go, providing hands-on experience with both technologies
Covers advanced topics such as JWT authentication and GraphQL, which are essential for building secure and scalable web applications
Taught by Trevor Sawler, an experienced software engineer with a strong reputation in the React and Go community
Assumes some prior knowledge of JavaScript and Go, making it suitable for intermediate developers

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

React and go full-stack web development

According to learners, this course offers a comprehensive and practical approach to building full-stack web applications using React and Go. Students particularly praise the instructor's clear explanations and engaging teaching style, which makes complex topics accessible. The course is noted for its hands-on projects, especially the "Go Watch a Movie" application, providing a solid understanding of API integration, JWT authentication, and database interaction with Postgres. While generally highly positive, some early reviews indicated a need for updates, which the instructor addressed by completely re-doing the course for React 18 and React Router 6, ensuring the content remains up-to-date and highly relevant.
Strong coverage of JWT, refresh tokens, and API concepts.
"The section on JWT authentication and refresh tokens was incredibly thorough and useful for building secure applications."
"I gained a deep understanding of building robust REST APIs with Go and handling different request types like JSON and GraphQL."
"The detailed explanation of backend API development, including CORS and database integration, was a standout feature."
Recently updated to React 18 and React Router 6.
"The fact that the course was completely re-done for React 18 and React Router 6 is a huge plus, showing commitment to current tech."
"I was pleased to find the content is very up-to-date, reflecting the latest versions of React and its ecosystem."
"It’s great that the instructor keeps the course current. I appreciated the prompt update to React 18 and React Router 6."
Course features a practical, hands-on project for real-world skills.
"The movie project is fantastic. It ties everything together from React components to Go backend APIs and database management."
"I found the hands-on coding and projects to be the strongest part of the course. It's truly practical and immediately applicable."
"Building the full-stack application from scratch really helped solidify my understanding of how React and Go work together in a real scenario."
Instructor provides clear explanations and engaging content.
"The instructor is truly amazing. His explanations are always clear, concise, and he has a knack for making complex topics easy to digest."
"I appreciate how the instructor walks through each step and explains the 'why' behind decisions, not just the 'how.'"
"The instructor's pace is just right for me. I never felt rushed and always had enough time to absorb the material and try it myself."
Some wish for more advanced topics or debugging tips.
"While excellent for fundamentals, I would have loved to see a bit more advanced React patterns or Go optimizations."
"I could have used more explicit debugging strategies, especially for common issues when integrating frontend and backend."
"Occasionally, I felt like a deeper dive into certain edge cases or more complex error handling would enhance the learning."
Requires prior JavaScript and Go experience, not for beginners.
"This course is definitely not for absolute beginners. You need a solid grasp of JavaScript and Go fundamentals."
"I found the prerequisites accurate; if you don't have some prior experience with Go and React, you might struggle."
"Make sure you're comfortable with basic Go and JS syntax before diving in. This course moves at a good pace assuming that."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Working with React and Go (Golang) with these activities:
Review HTML and JavaScript
Brush up on the fundamentals of HTML and JavaScript to strengthen your understanding of the basics required for this course.
Browse courses on HTML
Show steps
  • Review HTML tags and syntax
  • Review JavaScript variables, data types, and operators
  • Review JavaScript functions and event handling
Follow a React Tutorial Series
Enhance your React knowledge by following a structured tutorial series that covers essential concepts and best practices.
Browse courses on React
Show steps
  • Find a reputable React tutorial series
  • Watch the videos and complete the accompanying exercises
  • Apply what you've learned to your own React projects
Read 'The Road to React' by Robin Wieruch
Gain a comprehensive understanding of React concepts and best practices by reading this essential book.
Show steps
  • Read the book thoroughly
  • Take notes and highlight important concepts
  • Apply what you've learned to your own React projects
Six other activities
Expand to see all activities and additional details
Show all nine activities
Join a React Study Group
Enhance your understanding of React by collaborating with peers and discussing concepts in a study group setting.
Browse courses on React
Show steps
  • Find or create a study group with other React learners
  • Meet regularly to discuss React topics
  • Share knowledge, solve problems, and provide mutual support
Build a Simple React App
Solidify your understanding of React by building a simple application from scratch.
Browse courses on React
Show steps
  • Create a new React project
  • Create a React component for each page of the application
  • Implement state management to handle user interactions
Create a Repository of React Resources
Deepen your understanding of React by creating a comprehensive repository of useful resources, including tutorials, articles, and code snippets.
Browse courses on React
Show steps
  • Gather a variety of React resources from different sources
  • Organize and categorize the resources based on topic
  • Include a brief description and link for each resource
Mentor Junior React Developers
Strengthen your understanding of React and help others learn by becoming a mentor to junior React developers.
Browse courses on Mentoring
Show steps
  • Identify and connect with junior React developers who need guidance
  • Share your knowledge and experience through code reviews, discussions, and Q&A sessions
  • Provide constructive feedback and support
Develop a React-based Website
Put your React skills to the test by creating a fully functional React-based website.
Browse courses on Full-stack Development
Show steps
  • Plan and design the website's structure and functionality
  • Build the front-end using React
  • Develop the back-end API using Go
  • Integrate the front-end and back-end components
  • Test and deploy the website
Participate in a React Hackathon
Challenge yourself and showcase your React skills by participating in a hackathon that focuses on React development.
Browse courses on React
Show steps
  • Find a suitable React hackathon
  • Form a team or participate individually
  • Develop a creative and innovative React-based solution
  • Present your project to the judges

Career center

Learners who complete Working with React and Go (Golang) will develop knowledge and skills that may be useful to these careers:
Full-Stack Developer
A Full-Stack Developer is responsible for both the front-end and back-end development of websites and web applications. A course covering both React and Go would be highly valuable to those seeking a career in Full-Stack Development, as it provides a comprehensive understanding of the technologies used in both aspects of development. The course's focus on React, Go, REST APIs, and database connectivity would be particularly relevant to those seeking a role in this field.
Back-End Developer
A Back-End Developer designs, develops, tests, and maintains the server-side logic and infrastructure for websites and web applications. A course covering React and Go would be highly beneficial for Back-End Developers, as it covers the necessary technologies and concepts used in back-end development. The course's focus on Go, REST APIs, and database connectivity would be particularly relevant to those seeking a role in this field.
Front-End Developer
A Front-End Developer is responsible for the design and implementation of user interfaces for websites and web applications. A course that combines React and Go can help build a solid foundation for aspiring Front-End Developers, as it covers the necessary concepts and technologies used in front-end development. The course's focus on React, CSS, and JavaScript would be particularly relevant to those seeking a role in this field.
Web Developer
A Web Developer creates and maintains websites and web applications. Those interested in becoming a Web Developer may find a course covering React and Go especially helpful as it involves learning technologies that are in high demand in the industry. By gaining proficiency in these technologies, learners can increase their marketability as Web Developers.
Database Administrator
A Database Administrator is responsible for the maintenance and administration of databases. A course covering React and Go may be useful to those seeking a career in Database Administration, as it covers topics related to database connectivity and data management. The course's focus on connecting to Postgres and working with JSON data would be particularly relevant to those seeking a role in this field.
DevOps Engineer
A DevOps Engineer is responsible for bridging the gap between development and operations teams. A course covering React and Go may be useful to those seeking a career in DevOps, as it covers topics related to software development and deployment. The course's focus on topics such as Docker, Kubernetes, and continuous integration/continuous deployment (CI/CD) would be particularly relevant to those seeking a role in this field.
Software Engineer
A Software Engineer designs, develops, tests, deploys, maintains, and modifies software systems. A course that covers React and Go may be particularly useful to those seeking a Software Engineer role because it covers technologies commonly used in the development of software products, including web applications. The course's coverage of topics such as React, JavaScript, Go, and REST APIs would help build a foundation for aspiring or practicing Software Engineers.
Software Architect
A Software Architect designs and oversees the architecture of software systems. A course covering React and Go may be useful to those seeking a career in Software Architecture, as it covers topics related to software design and development. The course's focus on topics such as software design patterns, system architecture, and best practices would be particularly relevant to those seeking a role in this field.
Product Manager
A Product Manager is responsible for the planning, development, and launch of software products. A course covering React and Go may be useful to those seeking a career in Product Management, as it covers topics related to software development and product management. The course's focus on topics such as user experience (UX) design, product roadmaps, and market research would be particularly relevant to those seeking a role in this field.
Technical Writer
A Technical Writer creates and maintains technical documentation, such as user manuals, white papers, and training materials. A course covering React and Go may be useful to those seeking a career in Technical Writing, as it covers topics related to software development and documentation. The course's focus on topics such as technical writing best practices, documentation tools, and software development processes would be particularly relevant to those seeking a role in this field.
UX Designer
A UX Designer is responsible for the user experience (UX) of websites and web applications. A course covering React and Go may be useful to those seeking a career in UX Design, as it covers topics related to user interface design and development. The course's focus on topics such as user research, prototyping, and usability testing would be particularly relevant to those seeking a role in this field.
Project Manager
A Project Manager is responsible for the planning, execution, and delivery of software projects. A course covering React and Go may be useful to those seeking a career in Project Management, as it covers topics related to software development and project management. The course's focus on topics such as project planning, risk management, and stakeholder management would be particularly relevant to those seeking a role in this field.
Data Analyst
A Data Analyst collects, analyzes, and interprets data to provide insights and make recommendations. A course covering React and Go may be especially useful to those seeking a career in Data Analytics, as it covers technologies commonly used in data analysis and visualization. The course's coverage of topics such as data cleaning, data transformation, and data visualization would be particularly relevant to a role in this field.
Data Scientist
A Data Scientist uses scientific methods, processes, algorithms, and systems to extract knowledge and insights from data in various forms, both structured and unstructured. A course covering React and Go may be useful to those seeking a career in Data Science, as it covers technologies commonly used in data analysis and visualization. The course's coverage of topics such as data cleaning, data transformation, and data visualization would be particularly relevant to a role in this field.
Machine Learning Engineer
A Machine Learning Engineer applies machine learning algorithms to solve real-world problems. A course covering React and Go may be useful to those seeking a career in Machine Learning Engineering, as it covers technologies commonly used in data analysis and visualization. The course's coverage of topics such as data cleaning, data transformation, and data visualization would be particularly relevant to a role in this field.

Reading list

We've selected six books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Working with React and Go (Golang).
Is the official guide to the Go programming language. It provides a comprehensive overview of the language, from its syntax and semantics to its concurrency and garbage collection mechanisms. It is written by the creators of the Go language and is considered the definitive reference.
Comprehensive guide to building React applications. It provides a thorough overview of the React framework, from its core concepts to advanced techniques. It includes detailed explanations, examples, and exercises to help readers build scalable, performant, and maintainable React applications.
Provides a practical guide to building applications with Go. It covers the fundamentals of Go, including its concurrency and garbage collection mechanisms. It also includes detailed examples and exercises to help readers build their own applications.
Provides a comprehensive guide to building React applications. It covers the fundamentals of React, including its core concepts, such as components, state, and props. It also includes detailed examples and exercises to help readers build their own applications.
Provides a collection of blueprints for building common applications with Go. It covers a wide range of topics, including web development, concurrency, and database access. It valuable resource for both beginners and experienced Go developers.
Provides a quick and easy guide to building React applications. It covers the fundamentals of React, including its core concepts, such as components, state, and props. It good choice for beginners who want to get started with React quickly.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser