# Electric Clojure

Clojure dialect and library for full-stack reactive web interfaces, whose compiler infers the frontend and backend boundary.


Source: https://findsoftware.frbit.cloud/electric/
Last reviewed: 2026-10-26
Listed since: 2026-10-26

## Record

### Links

- home: https://electric.hyperfiddle.net/
- repository: https://github.com/hyperfiddle/electric
- docs: https://docs.google.com/document/d/1frkb5URGFZUdWyCDl9moGFcPcLuDtW-M-HnCJOHkuDA/
- x: https://x.com/dustingetz

### Identity

- status: active
- maintainer: Hyperfiddle
- maintainerType: unknown
- parent: unknown
- firstRelease: 2022
- hqCountry: unknown

### Kind

- category: framework
- hosting: java
- language: clojure
- runtime: jvm
- runtimeMin: unknown
- basedOn: unknown

### Content

- contentStore: unknown
- databases: unknown
- adminUi: unknown
- headlessApi: unknown
- templating: unknown
- i18n: unknown

### Rendering and deploy

- runsAs: always-on
- renderingModes: unknown
- installMethod: add com.hyperfiddle/electric as a deps.edn dependency, or clone the starter app

### License

- licenseModel: source-available
- license: Hyperfiddle Business Source License, free for bootstrappers and non-commercial use, otherwise commercial

### Releases

- currentMajor: unknown
- latestReleaseDate: unknown

### Adoption

- githubStargazers: 2142
- packagistDownloads: not applicable
- npmWeeklyDownloads: not applicable
- contributors: 15
- pluginCount: unknown
- packagistMonthlyDownloads: unknown
- ecosystemsMonthlyDownloads: unknown
- httpArchiveSites: unknown
- wordpressActiveInstalls: unknown
- dependentRepos: unknown
- dependentPackages: unknown

### Sources

- urls: https://github.com/hyperfiddle/electric3-starter-app/blob/master/README.md (read 2026-10-26)
- urls: https://api.github.com/repos/hyperfiddle/electric (read 2026-10-26)
- urls: https://github.com/hyperfiddle/electric/blob/master/Readme.md (read 2026-10-26)
- maintainer: https://tana.pub/lQwRvGRaQ7hM/electric-v3-license-change (read 2026-10-26)
- language: https://api.github.com/repos/hyperfiddle/electric (read 2026-10-26)
- runtime: https://github.com/hyperfiddle/electric3-starter-app/blob/master/README.md (read 2026-10-26)
- category: https://clojars.org/api/artifacts/com.hyperfiddle/electric (read 2026-10-26)
- installMethod: https://github.com/hyperfiddle/electric/blob/master/Readme.md (read 2026-10-26)
- runsAs: https://docs.google.com/document/d/1TgExchcIyWd4BH9qwb4vjp7uaBjWyBtPWEkGqSfvlTk/export?format=txt (read 2026-10-26)
- license: https://clojars.org/api/artifacts/com.hyperfiddle/electric (read 2026-10-26)
- license: https://github.com/hyperfiddle/electric/blob/master/Readme.md (read 2026-10-26)
- licenseModel: https://tana.pub/lQwRvGRaQ7hM/electric-v3-license-change (read 2026-10-26)
- firstRelease: https://api.github.com/repos/hyperfiddle/electric/commits/v20220722 (read 2026-10-26)
- githubStargazers: https://api.github.com/repos/hyperfiddle/electric (read 2026-10-26)
- contributors: https://api.github.com/repos/hyperfiddle/electric/contributors (read 2026-10-26)

## Notes

Electric Clojure is a Clojure dialect for building full-stack web interfaces. Client and server expressions sit in the same function, and the Electric compiler infers where the frontend and backend split, then generates separate client and server programs from the one source. The README calls the approach full-stack differential dataflow for UI.

A project can take the library as a Clojure dependency, or start from the starter app, which runs in development with `clj -A:dev -X dev/-main`. The starter app's README gives production builds as an uberjar, a Docker image and a Fly deployment.

## Worth knowing

The project's own documents say it assumes a persistent server connection and is not built for server-side rendering.

The README says the software is free for bootstrappers and non-commercial use. Commercial use is licensed separately under a source-available business license, as the maintainer's license announcement describes.

---

Data licensed CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Attributes are recorded, never scored; absent means unknown.
Credit, in full: FindSoftware, CC BY 4.0
