Are you happy with your logging solution? Would you help us out by taking a 30-second survey? Click here


A functional and reactive JavaScript framework for predictable code

Subscribe to updates I use cyclejs

Statistics on cyclejs

Number of watchers on Github 8179
Number of open issues 97
Average time to close an issue 7 days
Main language JavaScript
Average time to merge a PR 3 days
Open pull requests 35+
Closed pull requests 45+
Last commit over 1 year ago
Repo Created almost 5 years ago
Repo Last Updated over 1 year ago
Size 11.7 MB
Organization / Authorcyclejs
Latest Releaseunified-tag
Page Updated
Do you use cyclejs? Leave a review!
View open issues (97)
View cyclejs activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating cyclejs for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)


A functional and reactive JavaScript framework for predictable code


Question Answer
I want to learn Cycle.js Read the official documentation
I have a question Create a StackOverflow question
Join the chat
Open an issue
Please note all discussion-like issues are labeled discussion and immediately closed. This doesn't mean we unconsidered your discussion. We only leave actual issues open.
I found a bug Open an issue
I want to help build Cycle.js Read the Contributing guides
Choose an issue marked help wanted


Cycle.js is comprised of many specialized packages. This repository contains all these packages, e.g., the npm package @cycle/run lives in the directory run. Below you will find a summary of each package.

Package Version Dependencies DevDependencies
@cycle/dom npm (scoped) Dependency Status devDependency Status
@cycle/history npm (scoped) Dependency Status devDependency Status
@cycle/html npm (scoped) Dependency Status devDependency Status
@cycle/http npm (scoped) Dependency Status devDependency Status
@cycle/isolate npm (scoped) Dependency Status devDependency Status
@cycle/most-run npm (scoped) Dependency Status devDependency Status
@cycle/run npm (scoped) Dependency Status devDependency Status
@cycle/rxjs-run npm (scoped) Dependency Status devDependency Status

Globally: Build Status devDependency Status

Stream libraries

The following packages are not under Cycle.js, but are important dependencies, so we display their latest versions for convenience.

Package Version
most npm version
rxjs npm version
xstream npm version

Support OpenCollective OpenCollective


Support us with a monthly donation and help us continue our activities. [Become a backer]


Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]


The MIT License


cyclejs open issues Ask a question     (View All Issues)
  • almost 3 years Host the examples
  • almost 3 years DOM is not rendered directly inside shadow root
  • almost 3 years Use KLay with the DevTool
  • almost 3 years devtool support for custom drivers
  • about 3 years (DOM) Svg pattern fill not displayed
  • about 3 years Tests: Write tests in TypeScript
  • about 3 years Refactor cycle/dom
  • about 3 years history: update typings to be compatible with mjackson/history
  • about 3 years isolate only subtree
  • about 3 years DevTool doesn't recognize app as being Cyclejs
  • about 3 years Update cycle/history to use history v4
  • about 3 years Update snabbdom to v0.5.3
  • about 3 years Simplify drivers by making it a hodgepodge?
  • about 3 years Cycle Unified
  • about 3 years Improve `customElementify`
  • about 3 years Port Cycle HTTP tests from JS to TypeScript
  • about 3 years All errors in vdom hooks silently fail
  • about 3 years DOM driver doesn't receive events from inside the shadow dom
  • about 3 years Using elements() function on DOM calls querySelector too often
  • about 3 years Cycle DOM elementify() helper
  • about 3 years Type check main function and drivers in run()
  • about 3 years DevTool to support higher-order streams
  • about 3 years DevTool collapse/expand nodes based on function stack
  • about 3 years Snabbdom Dataset Module to Defaults for DOM Driver
  • about 3 years Each official driver should have docs about its isolation semantics
  • about 3 years Expand documentation for creating drivers
  • about 3 years Default HTTP params
  • about 3 years Extract `HTMLDriver`
  • about 3 years Testing and Time
  • about 3 years Prepare codebase for TypeScript 2.0
cyclejs open pull requests (View All Pulls)
  • Add link to website in
  • Some small breaking changes to Cycle HTTP
  • feat(http): support SSL certificate authentication
  • Renamed vdom$ to vtree$
  • Frikki/refactor/dom
  • WIP PR for typing main function and drivers in run()
  • feat(dom): add Snabbdom dataset module to the defaults
  • feat(history): update to history v4 WIP
  • feat(http): added request object to http err response
  • Examples sorted, packages updated, annotated/formatted (heavily), reworked (slightly)
  • chore(META): add test-wait to dom package.json scripts
  • fix(history): fix typo in type-check error message
  • Exploratory PR for adding pullable's as suggested in issue #581
  • DOM element helpers typings
  • Added Streams selection to API docs
  • feat(http): adding a skeleton for a new mock http source helper
  • ResponseStream to extend Stream<response>
  • Docs: add required modules for babel/jsx to npm install.
  • fix(time): fix throttle immediately completing with sync producer
  • Update
  • Fix sibling isolation implementation in DOM driver
  • feat(http): new mockHTTPDriver test utility
  • import run/adapt from lib/cjs instead of lib
  • inlineSourceMap and inlineSources (fixes #744)
  • time: lib/cjs and lib/es6 specifically in package files field
  • gitignore lib/cjs and lib/es6 instead of lib
  • refactor(history): tests cleanup, remove tests skip
  • feat(time): Add function to access current time as a Date
  • fix(time): fix importing most and rxjs with import '@cycle/time/rxjs'.
  • Devtool: Improvement of styling and bugfixes
  • chore(META): split @cycle/time into multiple packages
  • refactor(time): enhanced type definitions for MockTimeSource#diagram
  • [WIP] feat(http): adding a skeleton for a new mock http source helper
  • docs(time): migrate README to api docs
  • docs(examples): fix import path in animation example
cyclejs questions on Stackoverflow (View All Questions)
  • How get file from POST request in CycleJS
  • switch/mergeAll/flatten is not a function - while using http driver in cyclejs
  • How insert html into iframe with CycleJS
  • "React is undefined" error in CycleJs app
  • CycleJs - Subscribing events of the same element which has different classes
  • Loading json data into CycleJS app
  • CycleJS HTTP request$ not firing requests
  • CycleJS - subscribing click events of a child component
  • CycleJs - Unit Testing a Component with Mocha
  • Make an http request on document load using cyclejs
  • How to subscribe to events without DOM modifications in cyclejs (motorcyclejs)?
  • How to use Cyclejs with external template
  • How to convert a Observable stream into individual updatable divs in Cyclejs with RxJS
cyclejs list of languages used
cyclejs latest release notes
unified-tag Cycle Unified

Read more here

v7.0.0 Cycle Diversity

Read more here

v6.0.0 v6.0.0 - Cycle Nested

Read more here

Other projects in JavaScript