Learn to build interactive components with ease

Re-frame is the frontend framework I recommend. It gives you just what you want in order to build rich, complex web applications.

But how do you build actual, reusable components using it?

When using Re-frame, have you ever wondered:

How do I decide between component state and application state?

How do I implement simple, interactive components?

Can my components be re-usable?

How do I make a common UI pattern that I see all the time on web pages?

What events and subscriptions do I need?

Introducing Building Re-frame Components

In this course, you will build many different components. They range from simple, like a collapsible panel, to complex, like a complete user registration flow.

This course is for anyone looking to get into Re-frame and frontend development with ClojureScript, or anyone who wants to deepen their skills creating rich, interactive web apps.

When I started planning this course, lots of people were asking for
practice implementing common web UI patterns--accordions, expanding components, live-preview editors, etc. I did some searching for
lists of patterns, and found a bunch of good stuff. I picked ones that
were interesting enough to demonstrate the hard choices you have to
make when working with Re-frame.

So that's what the course is about. It's practice for building those
little to big UI elements you have to get right every day. It's 8
hours of video and each lesson comes with an interactive exercise to
practice the coding yourself. You can access the exercise online on
the page for the lesson. I've also put up a repo set up with Figwheel
with all the exercises to run it locally.

This course is just a series of small projects. You don't need anything but a web browser to get started. Each lesson contains a video and an interactive editor where you can live code the component right there in the browser. I remove all of the friction of setting up ClojureScript compilation and get you started right away. Follow along at your own pace. Do the projects. Work through some of the obstacles, and watch me code it and explain my reasoning. It's all there for you to explore and learn from.

Each lesson contains two code editors embedded in the page. One is for you, the student, and the other is for me, the teacher. In the teacher's editor, you will see the code that I've written to build my version of the component. In the student's editor, you will see the beginnings where you will put your code.

Both editors are live. If you modify the code, it will be compiled and you can witness the changes happening live to the left. I hope you enjoy the experience of fast feedback that we have in ClojureScript for building UI components.

The course also comes with a repository of all code. If you like, you can download that repo and run the code locally in your favorite editor. It will be recompiled automatically with Figwheel.