squint-runtime
Squint ClojureScript runtime for minimal JS output compilation
Best use case
squint-runtime is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Squint ClojureScript runtime for minimal JS output compilation
Teams using squint-runtime should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/squint-runtime/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How squint-runtime Compares
| Feature / Agent | squint-runtime | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Squint ClojureScript runtime for minimal JS output compilation
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Squint Runtime Skill
**Status**: ✅ Production Ready
**Author**: Michiel Borkent (borkdude)
**Trit**: 0 (ERGODIC - neutral transport)
**Stars**: 1.2k+
---
## Overview
Squint is a **light-weight ClojureScript dialect** that compiles to JavaScript with minimal runtime overhead. It's the "minimal" alternative in borkdude's browser runtime spectrum.
## When to Use Squint vs Cherry
| Aspect | Squint | Cherry 🍒 |
|--------|--------|-----------|
| **Runtime size** | Minimal (~10KB) | Full cljs.core (~100KB) |
| **Semantics** | JS-like | Full CLJS |
| **Data structures** | JS objects/arrays | Persistent immutable |
| **Keywords** | Strings | CLJS keywords |
| **Interop** | Seamless | Requires macros |
| **JSX** | ❌ | ✅ |
| **Use case** | Small scripts, interop | Full applications |
## Installation
```bash
npm install squint-cljs@latest
```
## Usage
```clojure
;; example.cljs
(ns example)
;; Functions compile to regular JS functions
(defn greet [name]
(str "Hello, " name "!"))
;; JS interop is seamless
(js/console.log (greet "World"))
;; Object destructuring works naturally
(defn process [{:keys [a b c]}]
(+ a b c))
(process #js {:a 1 :b 2 :c 3}) ; => 6
```
### Compile and Run
```bash
# Compile to JS
npx squint compile example.cljs
# Run directly
npx squint run example.cljs
```
## Key Differences from CLJS
1. **Data structures are JS native**:
```clojure
{:a 1} ; => {a: 1} in JS (plain object)
[1 2 3] ; => [1, 2, 3] in JS (array)
```
2. **Keywords become strings**:
```clojure
:foo ; => "foo" in JS
```
3. **No persistent data structures** (use JS mutation)
4. **Faster interop** (no conversion needed)
## Integration with Gay.jl Colors
```clojure
(ns squint.gay-colors)
;; SplitMix64 constants
(def GOLDEN 0x9E3779B97F4A7C15)
(def MASK64 0xFFFFFFFFFFFFFFFF)
(defn splitmix64 [state]
(let [s (bit-and (+ state GOLDEN) MASK64)
z (-> s
(bit-xor (unsigned-bit-shift-right s 30))
(* 0xBF58476D1CE4E5B9)
(bit-and MASK64))
z (-> z
(bit-xor (unsigned-bit-shift-right z 27))
(* 0x94D049BB133111EB)
(bit-and MASK64))]
(bit-xor z (unsigned-bit-shift-right z 31))))
(defn color-at [seed idx]
(loop [state seed i idx]
(if (zero? i)
(let [v (splitmix64 state)
l (+ 10 (* 85 (/ (bit-and v 0xFF) 255)))
c (* 100 (/ (bit-and (unsigned-bit-shift-right v 8) 0xFF) 255))
h (* 360 (/ (bit-and (unsigned-bit-shift-right v 16) 0xFFFF) 65535))]
{:L l :C c :H h})
(recur (splitmix64 state) (dec i)))))
```
## Commands
```bash
just squint-compile file.cljs # Compile CLJS to JS
just squint-run file.cljs # Run CLJS file
just squint-watch # Watch mode compilation
```
---
**Skill Name**: squint-runtime
**Type**: ClojureScript Compiler
**Trit**: 0 (ERGODIC)
**Invariant**: ✅ Deterministic compilationRelated Skills
world-runtime
Firecracker microVM + Morph Infinibranch WorldRuntime for parallel verse execution. Entities branch/snapshot in <250ms.
kinfer-runtime
K-Scale kinfer model inference engine for deploying trained RL policies to real robots via ONNX Runtime in Rust
implementing-runtime-security-with-tetragon
Implement eBPF-based runtime security observability and enforcement in Kubernetes clusters using Cilium Tetragon for kernel-level threat detection and policy enforcement.
implementing-runtime-application-self-protection
Deploy Runtime Application Self-Protection (RASP) agents to detect and block attacks from within application runtime, covering OpenRASP integration, attack pattern detection, and security policy configuration for Java and Python web applications.
hvm-runtime
HVM Runtime Skill
detecting-container-drift-at-runtime
Detect unauthorized modifications to running containers by monitoring for binary execution drift, file system changes, and configuration deviations from the original container image.
zx-calculus
Coecke's ZX-calculus for quantum circuit reasoning via string diagrams with Z-spiders (green) and X-spiders (red)
zulip-cogen
Zulip Cogen Skill 🐸⚡
zls-integration
zls-integration skill
zig
zig skill
zig-syrup-bci
Multimodal BCI pipeline in Zig: DSI-24 EEG, fNIRS mBLL, eye tracking IVT, LSL sync, EDF read/write, GF(3) conservation
zig-programming
zig-programming skill