Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/foxdonut/meiosis
meiosis
https://github.com/foxdonut/meiosis
Last synced: 8 days ago
JSON representation
meiosis
- Host: GitHub
- URL: https://github.com/foxdonut/meiosis
- Owner: foxdonut
- License: mit
- Created: 2016-04-09T15:50:19.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-10-19T12:05:29.000Z (about 1 year ago)
- Last Synced: 2024-04-14T12:18:50.023Z (8 months ago)
- Language: TypeScript
- Homepage: https://meiosis.js.org
- Size: 39.8 MB
- Stars: 414
- Watchers: 16
- Forks: 18
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome - meiosis - meiosis (JavaScript)
README
# Meiosis
[![Join the chat at https://gitter.im/foxdonut/meiosis](https://badges.gitter.im/foxdonut/meiosis.svg)](https://app.gitter.im/#/room/#foxdonut_meiosis:gitter.im)
https://meiosis.js.org
> It's not a library. It's a simple pattern to manage state in your web applications.
Think Redux, MobX, Cerebral, React Context, etc. but without having library imports everywhere and
being tied to a framework API. Instead, just plain functions and objects.All you need is a simple stream library such as Flyd or Mithril Stream in one place to implement
the pattern. You do not need anything else, not even Meiosis itself. You could even implement the
stream yourself with a handful of lines of code. Zero dependencies!Easily use the pattern with your favourite view library: React, Preact, Mithril, and so on.
## Ready to have a closer look?
➡ Read the [Meiosis Documentation](https://meiosis.js.org/docs/toc.html) to get started.
➡ Don't want to setup Meiosis yourself?
[meiosis-setup](https://github.com/foxdonut/meiosis/tree/master/helpers/setup#meiosis-setup) is
available for your convenience.## Ready for More?
- Try out more [examples](https://meiosis.js.org/examples.html).
- Check out the [Meiosis-Tracer](https://github.com/foxdonut/meiosis-tracer).
- Need a router? Try [Meiosis-Router](https://meiosis.js.org/router).
- Chat on the [Gitter channel](https://app.gitter.im/#/room/#foxdonut_meiosis:gitter.im).Please post questions and suggestions as Github issues on the
[Meiosis repository](https://github.com/foxdonut/meiosis).## Why the name _Meiosis_?
I picked the name **Meiosis** for three reasons:
1. it's a [biology term](http://en.wikipedia.org/wiki/Meiosis) for a type of cell division; this is
an analogy to the idea of dividing your application into smaller pieces;
2. it's a [figure of speech](https://en.wikipedia.org/wiki/Meiosis_(figure_of_speech) that
_intentionally understates something or implies that it is lesser in significance or size than it
really is_, meaning that this is meant to be small, humble, and not replace what people use,
just improve upon it; and
3. it's a relatively unique name in the JavaScript world, thus making it easy to find information
using search engines.----
## Credits
Meiosis is the result of a whole adventure of exploring other architectures. Credit goes to their authors; I am grateful
for their work and that of their respective communities.- [Mithril](http://mithril.js.org/) and its fantastic community. Special thanks to
[James Forbes](https://james-forbes.com),
[Barney Carroll](https://github.com/barneycarroll),
[Stefan Thon](https://github.com/smuemd),
[Rasmus Porsager](https://github.com/porsager),
[Devin Ivy](https://github.com/devinivy),
[Scotty Simpson](https://github.com/CreaturesInUnitards),
[Daniel Loomer](https://github.com/fuzetsu),
and many others, for all their help, sharing their knowledge, and discussing ideas!- [CycleJS driven by state](https://christianalfoni.herokuapp.com/articles/2016_04_06_CycleJS-driven-by-state)
by [Christian Alfoni](http://www.christianalfoni.com/). This article was very inspirational to me and
I am very grateful to Christian! I also find Christian's other projects very interesting, including
(but not limited to) [Cerebral](http://cerebraljs.com) and
[function-tree](https://github.com/cerebral/cerebral/tree/master/packages/function-tree#readme).- [Simon Friis Vindum](https://twitter.com/paldepind), creator of
[Flyd](https://github.com/paldepind/flyd),
[Snabbdom](https://github.com/snabbdom/snabbdom), and others. I use Flyd as a stream library for Meiosis.- [hyperapp](https://github.com/hyperapp/hyperapp), by
[Jorge Bucaran](https://twitter.com/jbucaran).----
_Meiosis is developed by [foxdonut](https://github.com/foxdonut)
([@foxdonut00](http://twitter.com/foxdonut00)) and is released under the MIT license._