Build Professional REST APIs with Pedestal

Learn how to build robust REST APIs using Pedestal's data-driven interceptor pattern, while structuring applications with Component, using Transit for data transport, and Datomic for persistence.

Build Professional REST APIs with Pedestal

What You'll Build

Everything you need!

Throughout this course, you'll build a complete REST API with authentication, database integration, and cloud deployment.

Data-driven interceptor pattern implementation
System structuring with Component
EDN transport with Transit
Database integration with Datomic
Authentication with AWS Cognito
Cloud deployment with AWS and Datomic Ions

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
Course overview
Understanding Pedestal's architecture
Project goals and structure
Setup
Development environment configuration
Editor setup
GitHub repository setup
Project structure
Managing dependencies
Pedestal Basics
Starting and stopping services
Defining routes
Understanding routers
Code refactoring for maintainability
Component
Component setup and configuration
Creating API server component
Database component implementation
Component usage patterns
REPL integration with Component
Interceptors
System interceptor implementation
Application-specific interceptors
Development-specific interceptors
Interceptor patterns and best practices
Database
Loading initial dataset
Database interceptor implementation
Data access patterns
Recipes
Response formatting
Listing all recipes
Response refactoring
Creating new recipes
Transit integration
Retrieving, updating, and deleting recipes
Specialized interceptors
Transaction handling
Query interceptors
Testing CRUD operations
Logging implementation
Route refreshing mechanism
Steps and Ingredients
Creating recipe steps
Testing step creation
Updating and deleting steps
Managing recipe ingredients
Testing ingredients functionality
Conversations
Listing conversations
Testing conversation listing
Creating and listing messages
Testing message operations
Notification system
Testing notification clearing
AWS Integration
AWS overview and architecture
AWS account and service setup
AWS configuration for deployment
AWS Cognito
Creating Cognito user pools
Cognito API integration
Secret hash calculation
Authentication component
Account creation and confirmation
Login implementation
JWT verification
Key provider implementation
Signature validation
Testing authentication flows
Datomic + Ions
Datomic configuration
Ion setup and configuration
Pedestal Ion chain provider
Code refactoring for Ions
AWS SSM parameter management
Production deployment

Idiomatic Clojure

The code base for the course has been reviewed by these people. You can be sure you are learning idiomatic Clojure and using the tools as intended.

  • Paul deGrandis

    Paul deGrandis

    Pedestal contributor, Kevel

    ohpauleez

  • Daniel De Aiagur

    Daniel De Aiagur

    Pedestal contributor, Cognitect/Nubank

    ddeaguiar

  • Wilker Lúcio

    Wilker Lúcio

    Pedestal user, creator of Pathom

    wilkerlucio

  • Thomas Heller

    Thomas Heller

    Writes better docs with one eye shut.

    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

Pro

Most popular

179CHF

Get started
  • Build REST API with Pedestal
  • Setup system with Component
  • Communicate data with Transit
  • Persist data with Datomic
  • Deploy to AWS

Bundle

799CHF

Get the bundle
  • Access to Reagent
  • Access to Re-frame
  • Access to Reitit
  • Access to Datomic
  • Access to Pedestal

Frequently asked questions

What will I learn?
The focus is on building a REST API with Pedestal, using data-driven interceptors, structuring your application with Component, using Transit for data transport, and Datomic for persistence.
Is this course right for my skill level?
This course assumes some familiarity with Clojure basics, but does not require previous experience with Pedestal, Component, or Datomic. We build everything step by step.
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?
If after watching a couple of first videos you are unsatisfied, get in touch—we will provide a full refund.
Does this course support Open Source?
Yes! 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 and approved by experts including Paul deGrandis (Pedestal contributor), Daniel De Aguiar (Pedestal contributor), Wilker Lúcio (creator of Pathom), and Thomas Heller.
Can I buy this as a subscription?
Yes! You can subscribe to ClojureStream and get this course as part of the subscription.

Save time

Save hours of searching and looking at sample repos, this course goes over all the things you need.