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.

Advanced State Management for ClojureScript Applications

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

    Mike Thompson

    Creator of Re-frame

    mike-thompson-day8

  • Daniel Compton

    Daniel Compton

    Contributor to Re-frame

    danielcompton

  • Juho Teperi

    Juho Teperi

    Maintainer of Reagent

    Deraen

  • Thomas Heller

    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 popular

259CHF

Buy Now
  • 94 HD Videos
  • Re-Frame Course
  • Reagent Course
  • Build two ClojureScript apps
  • Master ClojureScript Frontend

Re-Frame

199CHF

Buy
  • Events + Subs + Interceptors
  • Routing + Tooling
  • re-frame-10x + http-fx

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)