Modern Front-end Development for Rails
Gain insights into building applications using Rails Webpacker, Webpack, and TypeScript. Explore Stimulus, React, state management, and communication with servers for richer interactions.
Andy Hunt and Dave Thomas founded The Pragmatic Programmers, LLC., with a simple goal: to improve the lives of professional developers. We create timely, practical books and other learning resources on classic and cutting-edge topics to help you learn and practice your craft and accelerate your career. We are not a giant, faceless, greed-soaked corporation. We’re a small group of experienced professionals committed to helping make corporate software development—and your life—easier.
Join 3.1 million developers at
What You'll Learn
- Implement Webpacker in Rails to compile and serve JavaScript, TypeScript, and CSS assets
- Build interactive Rails UI features using TypeScript classes, events, state, and Turbolinks
- Create Stimulus controllers using actions, targets, values, and class toggling for DOM interactivity
- Develop React components in Rails with JSX, props, hooks, and shared state across components
- Integrate client-server communication via Gon, Ajax fetch, and Action Cable for real-time updates
- Apply scalable state management with Stimulus stores/reducers, React context/reducers, and Redux Thunk
- Write and troubleshoot end-to-end tests with Cypress using actions, assertions, fixtures, and debugging tools
Learning Roadmap
1.
Getting Started
Getting Started
2.
Client-side Rails
Client-side Rails
3.
Stimulus
Stimulus
9 Lessons
9 Lessons
4.
React
React
8 Lessons
8 Lessons
5.
Cascading Style Sheets
Cascading Style Sheets
6 Lessons
6 Lessons
6.
TypeScript
TypeScript
7 Lessons
7 Lessons
7.
Webpack
Webpack
4 Lessons
4 Lessons
8.
Webpacker
Webpacker
4 Lessons
4 Lessons
9.
Talking to the Server
Talking to the Server
9 Lessons
9 Lessons
10.
Managing State in Stimulus Code
Managing State in Stimulus Code
6 Lessons
6 Lessons
11.
Managing State in React
Managing State in React
6 Lessons
6 Lessons
12.
Using Redux to Manage State
Using Redux to Manage State
4 Lessons
4 Lessons
13.
Validating Code with Advanced TypeScript
Validating Code with Advanced TypeScript
7 Lessons
7 Lessons
14.
Testing with Cypress
Testing with Cypress
7 Lessons
7 Lessons
15.
More Testing and Troubleshooting Basics
More Testing and Troubleshooting Basics
3 Lessons
3 Lessons
16.
Appendix
Appendix
8 Lessons
8 Lessons
The Pragmatic Programmers
We create timely, practical books and learning resources on classic and cutting-edge topics to help you practice your craft and accelerate your career.
Trusted by 3.1 million developers working at companies
Anthony Walker
@_webarchitect_
Evan Dunbar
ML Engineer
Software Developer
Carlos Matias La Borde
Souvik Kundu
Front-end Developer
Vinay Krishnaiah
Software Developer
Built for 10x Developers












Free Resources