Advanced State Management for ClojureScript Applications
Learn how to build complex, production-ready applications with Re-frame's elegant approach to state management. Perfect for developers who want to take their ClojureScript skills to the next level.

What You'll Build
Everything you need!
Throughout this course, you'll build Cheffy - a complete 'AirBnB for chefs' application with user authentication, CRUD operations, and real-time updates.
- User authentication and profiles with local storage
- Advanced routing with parameterized routes
- Subscriptions and reactive data management
- HTTP effects for API communication
- Form validation and error handling
- Messaging system between users
- Image uploading and management
- Data specification with clojure.spec
All-in-one
This course covers everything from setup to deployment. There is nothing more you will need to build a robust Clojure application.
- Introduction
- Overview of what we'll build
- Understanding the tech stack
- Setup
- Development environment setup
- Application structure with shadow-cljs
- UI components with smooth-ui
- Initializing the database
- Navigation
- Building the navigation system
- Creating navigation events
- Implementing subscriptions
- Setting up page routing
- Handling public vs. authenticated routes
- Authentication
- Building login functionality
- Form components and validation
- Effects and coeffects for authentication
- User signup process
- Profile management
- Local storage integration
- Routing
- Router implementation
- Route dispatching
- Active page management
- Recipes Management
- Recipe listing and display
- Recipe cards and detailed views
- Recipe routing with parameters
- Ingredient management
- Step-by-step instructions editor
- Recipe publishing workflow
- Image uploading and management
- Messaging System
- Inbox implementation
- Message threading
- Conversation management
- Request to cook functionality
- Form Validation
- Real-time form validation
- Error handling strategies
- Validation before dispatch
- HTTP Effects
- Working with re-frame-http-fx
- API integration patterns
- Managing async operations
- Debugging with re-frame-10x
- Subscription optimization
- Time traveling through application state
- Tracing data flow through your app
- Refactoring and Optimization
- Solving input flickering issues
- Event simplification
- Performance optimization
- Data Specification
- Using clojure.spec for data validation
- Integrating spec with Re-frame
- Spec-based development
- Next Steps
- Advanced Re-frame concepts
- Where to go next in your learning journey
Best practice
The code has been reviewed by these fine folks, so that you will learn idiomatic Clojure.

Mike Thompson
Creator of Re-frame
mike-thompson-day8

Daniel Compton
Contributor to Re-frame
danielcompton

Juho Teperi
Maintainer of Reagent
Deraen

Thomas Heller
Creator of shadow-cljs
thheller
Pricing
Pricing that grows with you
Choose an affordable plan that's packed with the best features.
ClojureStream
39CHF
Get started- Access to Pedestal course
- Access to Datomic course
- Access to Reitit course
- Access to Re-Frame course
- Access to Reagent course
Frontend Pack
Most popular259CHF
Buy Now- 94 HD Videos
- Re-Frame Course
- Reagent Course
- Build two ClojureScript apps
- Master ClojureScript Frontend
Frequently Asked Questions
- What will I learn?
- The focus is on ClojureScript and Re-Frame. We'll not touch any CSS; even thought we'll use styled components, nor create any endpoints, everything is taken care of.
- The frontend is re-frame, what is the backend?
- The backed is a separate course - Learn Reitit. You can buy the Full Stack bundle and take advantage of promotional price.
- Are these course right for my skill level?
- You should understand Reagent, list comprehension, destructuring, and threading macros. All of these concepts are explained in detail in Learn Reagent Pro course. There is also a bundle if you would like to get two of them.
- How long do I have access to the course?
- How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
- What if I am unsatisfied with the course?
- Take a look at some free episodes of learn re-frame free. The pro version is a continuation of the free course. That said, if after watching a couple of first videos of pro course you are unsatisfied, get in touch—we are able to provide a full refund.
- Can I buy this as a subscription?
- Sort of ... it's better than a regular subscription. We have an option to spread the payments over multiple months and it will cancel automatically when you pay the whole amount. No more "forgotten" subscriptions on your credit card.
- Does this course support Open Source?
- Absolutely! Just as the Reagent course did. By buying this course you are supporting Open Source Projects. 10% of profits will be transferred to Clojurists Together to fund critical Clojure and ClojureScript open source projects.
- Is it best practice?
- Yes! The content of the course has been reviewed by experts: Juho Teperi (GitHub · Twitter), Thomas Heller (GitHub · Twitter), Daniel Compton (GitHub · Twitter), and creator of re-frame Mike Thompson (GitHub · Twitter)
Master Re-frame Today
Join hundreds of developers who've elevated their ClojureScript skills