# Build modern single-page apps using classic Clojure server-side routing, authentication, etc

**URL:** https://clojureverse.org/t/build-modern-single-page-apps-using-classic-clojure-server-side-routing-authentication-etc/7624
**Category:** Your Projects and Libraries
**Tags:** clojure, reagent, clojurescript
**Created:** [April 30, 2021, 2:35pm UTC](https://clojureverse.org/t/build-modern-single-page-apps-using-classic-clojure-server-side-routing-authentication-etc/7624 "2021-04-30T14:35:37Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![PrestanceDesign](https://clojureverse.org/user_avatar/clojureverse.org/prestancedesign/32/3733_2.png) [@PrestanceDesign](https://clojureverse.org/u/PrestanceDesign)
#### Post date: [April 30, 2021, 2:35pm UTC](https://clojureverse.org/t/build-modern-single-page-apps-using-classic-clojure-server-side-routing-authentication-etc/7624/1 "2021-04-30T14:35:37Z")

</div>

Hi everybody!

I recently discovered Inertia.js, a solution that offers to develop SPAs without having to write APIs.  
I want to share it with the community.

From their website:

> Inertia.js lets you quickly build modern single-page React, Vue and Svelte apps using classic server-side routing and controllers.

Inertia works within two parts, server-side and client-side adapters.:

1. Client-side: Since we have ClojureScript, we can rely on Inertia-React package and run it with all React wrappers (Reagent, Rum, Helix, etc).

2. Server-side, I wrote this following Clojure adapter (Ring middleware):

> **[GitHub - prestancedesign/inertia-clojure: A Clojure adapter for Inertia.js](https://github.com/prestancedesign/inertia-clojure)**
>
> A Clojure adapter for Inertia.js . Contribute to prestancedesign/inertia-clojure development by creating an account on GitHub.

I added today two new demos - thx to @seancorfield 's usermanager 😉 - for those want to play with it:

1. Integrant / Reitit stack: [GitHub - prestancedesign/usermanager-inertia-example: Single Page App demo in Clojure, Ring, Reitit and Reagent / Inertia.js](https://github.com/prestancedesign/reagent-inertia-reitit-integrant-fullstack)
2. Component / Compojure stack: [GitHub - prestancedesign/usermanager-reagent-inertia-example: Single Page App demo in Clojure, Ring, Compojure and Reagent / Inertia.js](https://github.com/prestancedesign/usermanager-reagent-inertia-example)

Do not hesitate if you have any questions or remarks.  
Feebacks are welcome!

Cheers!

---

<div class="post-metadata">

### Author: ![system](https://clojureverse.org/uploads/default/original/2X/5/51079bf9e4b7d9466242c06cf1e43b9f8bd6da14.png) [@system](https://clojureverse.org/u/system)
#### Post date: [October 30, 2021, 2:35am UTC](https://clojureverse.org/t/build-modern-single-page-apps-using-classic-clojure-server-side-routing-authentication-etc/7624/2 "2021-10-30T02:35:44Z")

</div>

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.
