clojure-sente

Enable real-time bidirectional Clojure server and ClojureScript client communication via WebSockets with Ajax fallback.

1|Updated Sep 5, 2025
One-click install
npx skills add https://github.com/Ramblurr/nix-devenv --skill clojure-sente
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: clojure-sente
Source: https://github.com/Ramblurr/nix-devenv/tree/main/prompts/skills/clojure-sente
Command: npx skills add https://github.com/Ramblurr/nix-devenv --skill clojure-sente

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill addresses the need for seamless, real-time bidirectional communication between Clojure server and ClojureScript client applications, enabling dynamic and interactive user experiences.

Core Features & Use Cases

  • Real-time Updates: Facilitates instant data synchronization between server and client.
  • Bidirectional Messaging: Allows both server and client to initiate communication.
  • Automatic Fallback: Gracefully handles network changes by falling back from WebSockets to Ajax long-polling.
  • Use Case: Building a collaborative document editing tool where changes made by one user are instantly reflected for all other users viewing the same document.

Quick Start

Use the clojure-sente skill to set up a basic realtime communication channel between your Clojure server and ClojureScript client.

Frequently Asked Questions about clojure-sente

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enable real-time bidirectional communication between Clojure and ClojureScript?

Real-time bidirectional communication between Clojure and ClojureScript is enabled using WebSockets with automatic Ajax fallback, allowing both server and client to push messages and maintain instant data synchronization for interactive web applications.

Does Clojure real-time messaging work when WebSockets are blocked?

Real-time messaging in Clojure handles blocked WebSockets through an automatic Ajax long-polling fallback. This graceful degradation ensures reliable asynchronous messaging continues during network changes or restrictive environments.

What server adapter do I need for ClojureScript WebSockets integration?

ClojureScript WebSockets integration requires a specific server adapter like http-kit within your Clojure project to handle the underlying realtime communication channel and server push capabilities.

Can I use Sente to build a collaborative document editing tool in ClojureScript?

Sente is well-suited for building a collaborative document editing tool in ClojureScript. It provides the instant server push and bidirectional messaging needed to reflect changes made by one user to all other users viewing the document.

What is the best way to handle server push for real-time updates in a Clojure application?

The best way to handle server push for real-time updates in a Clojure application is utilizing a bidirectional communication channel. This allows the server to proactively send data updates to the ClojureScript client without constant polling.