A full-stack Clojure/ClojureScript demo application illustrating Inertia.js integration for building modern web apps.
Ping CRM on Clojure is a full-stack demo application built with Clojure and ClojureScript to illustrate how Inertia.js works in a Clojure ecosystem. It ports the original Laravel/Vue.js Ping CRM to show how to create server-driven single-page applications without building a separate API. The project serves as a practical reference for integrating Inertia.js with Clojure's functional programming tools.
Clojure and ClojureScript developers interested in building modern web applications with Inertia.js, as well as those looking for full-stack Clojure examples or alternatives to JavaScript-heavy frontends.
It provides a complete, working example of Inertia.js integration with Clojure, demonstrating how to leverage Clojure's strengths for backend logic while maintaining a smooth frontend experience. Developers choose it for its clarity, practicality, and as a bridge between Clojure's ecosystem and modern SPA patterns.
PingCRM on Clojure - A Clojure/Script fullstack demo application to illustrate how Inertia.js works.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Demonstrates how to build server-driven SPAs without a separate API, reducing frontend complexity by leveraging Inertia.js for seamless page transitions, as shown in the hosted demo.
Uses Clojure on the backend and ClojureScript with Reagent on the frontend, providing a unified functional programming experience and consistent development workflow.
Incorporates Integrant for system management, Reitit for routing, and next.jdbc for databases, showcasing best practices in Clojure web development as highlighted in the key features.
Includes frontend JavaScript and CSS hot reloading during development via npm run dev, enabling faster iteration and debugging, as noted in the installation steps.
Relies on the author's inertia-clojure adapter, which has a smaller community and fewer resources compared to established Inertia.js backends like Laravel or Rails, limiting support and extensions.
Requires managing both Node.js and Clojure toolchains separately, with commands for npm installation and clj execution, adding complexity for setup and maintenance.
As a demo application, it focuses on integration concepts rather than covering deployment, scaling, or advanced error handling, leaving production concerns for developers to figure out.