All Projects → prestancedesign → usermanager-reitit-example

prestancedesign / usermanager-reitit-example

Licence: other
A little demo web app in Clojure, using Integrant, Ring, Reitit, Selmer (and a database)

Programming Languages

clojure
4091 projects
HTML
75241 projects
emacs lisp
2029 projects

Projects that are alternatives of or similar to usermanager-reitit-example

closeable-map
Application state management made simple: a Clojure map that implements java.io.Closeable.
Stars: ✭ 42 (-39.13%)
Mutual labels:  integrant
roll
Roll — backend for Clojure
Stars: ✭ 73 (+5.8%)
Mutual labels:  integrant
kit
Lightweight, modular framework for scalable web development in Clojure
Stars: ✭ 177 (+156.52%)
Mutual labels:  integrant
scheduler.simple
A simple scheduler for Integrant
Stars: ✭ 19 (-72.46%)
Mutual labels:  integrant
integrant-repl
Reloaded workflow functions for Integrant
Stars: ✭ 115 (+66.67%)
Mutual labels:  integrant
redelay
Clojure library for first class lifecycle-managed state.
Stars: ✭ 44 (-36.23%)
Mutual labels:  integrant

Example Web Application in Clojure

This repo is a simple web application using Integrant, Ring, Reitit, and Selmer connected to a local SQLite database.

For learning purpose, I redid from scratch the very useful Sean Corfield’s usermanager repo and decided to move some libraries to learn them too in the process.

A Single Page App version that use Inertia-clojure library can be found here.

Requirements

This example assumes that you have the Clojure CLI installed, and provides a deps.edn file.

Clojure 1.10 (or later) is required. The “model” of this example app uses namespace-qualified keys in hash maps. It uses next.jdbc – the “next generation” JDBC library for Clojure – which produces namespace-qualified hash maps from result sets.

Usage

Run the Application

Clone the repo, cd into it, then follow below to Run the Application or Run the application in REPL. You can launch the application by directly calling the namespace which contains the -main function in an terminal

$ clj -m usermanager.system

or more conveniently, using an alias configured in deps.edn file.

$ clj -A:server

Now acces the app at: http://localhost:3000/.

Run the Application in REPL

$ clj -A:dev

Once REPL starts, run the system:

user=> (go)

Now acces the app at: http://localhost:3000/.

License & Copyright

Copyright (c) 2015-2020 Sean Corfield / Michaël SALIHI.

Distributed under the Apache Source License 2.0.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].