fractal-framework
v0.0.6
Published
A minimalist and powerful framework for building applications and interactive content
Downloads
2
Readme
Build your ideas as simple as possible. Fractal is an intuitive framework for building applications and interactive content.
Why?
- It is minimal, core logic are less than 400 lines of code and you can see how it works
- Easy integrable and emmbedable by design
- A clear and flexible architecture that scales
- Its clear and concise, all you application code are pure functions. Your app code has NO side effects
- Gives you powerful patterns and composing tools that helps to build small and large apps
- Your code are flexible, composable and reausable. Modularization as a foundation
- The state is isolated, this mean is serializable and you can hot-swap code updating the UI without reload the navigator
- You can serialize the whole side effects, this means you can run fractal in a webworker, in a server via websockets or even in a remote browser via WebRTC :')
- High code quality, we love that!! and help you to achive it in your proyect <3
- Lazy loading of components
See the design document. In order to be scalable, Fractal is implemented using Typescript
Getting started
The recomended way is using webpack, please download the Fractal-quickstart repo (Comming soon...).
Or in nodejs, browserify, webpack like environments:
npm i --save fractal-framework
Run the examples
There are many useful examples at examples folder. Be sure that you have installed Node.js, please download Fractal source and extract them.
The examples you can run are:
- simple
- compose
- mori: Fractal using mori.js for persistent data structures (PDS)
- worker
- testForm
Open a command window into Fractal
folder and run:
npm i
npm run dev ./examples/NAME_OF_EXAMPLE
for example:
npm run dev ./examples/compose
Run tests
Our rule is to have 100% of coverage, right now all core features are covered
// once
npm test
// dev server
npm run test:watch
Design
Curious about how it works? see Design Documentation before reading source code :)
Development
See our Development Documentation