ShipClojure
  • Getting Started

    • Getting started
    • REPL Workflow
    • Code structure
    • Managing Secrets
    • Getting Updates
    • ShipClojure Stack
    • Troubleshooting
  • Tutorials

    • Observability guide
    • Privacy policy with GPT
  • Backend

    • Ring API
    • Logging
    • Command Query Responsability Segregation (CQRS)
    • Oauth2 Auth (Google Login)
    • Payments
    • Role-Based Access Control (RBAC)
    • Organisations
    • Using integrant components in handlers
  • Frontend

    • Content Management (SEO Pages)
    • Frontend Navigation with Custom Actons
    • Toast Notifications
    • Authentication
    • Frontend Release
    • Writing UI Pages
    • Static pages with Pizzazz
    • Icons
  • Deployment

    • Docker Build Guide
    • Creating a docker private registry
    • Continuous Deployment from Github Actions
    • Going to Production
  • Documentation
  • Datom
  • ShipClojure Stack

ShipClojure Stack

Here are the main libraries used by shipclojure:

Frontend

The frontend uses:

  • ClojureScript - Duuh
  • replicant - Frontend Rendering
  • nexus - data driven action dispatch
  • datascript - Datalog on the frontend
  • tailwindcss - utility CSS classes for scale
  • daisyUI - component system for tailwind

Backend

On the backend we use:

  • Clojure - Ofcourse
  • Datomic - Immutable Storage
  • Ring - Web handling & middleware
  • Reitit - Request Routing
  • Integrant - Lifecycle & Dependency Management for Components

Common

These libraries are used for both frontend & backend:

  • Malli - Data-driven schema management
  • Telemere - Logging provider
Previous
Getting Updates
Next
Troubleshooting
On this page
  • Frontend
  • Backend
  • Common