To make developing end to end web applications easy and scalable.
We focus on real use cases too, and this is why we have a demo gallery where you can see how to solve some of the most common requirements using ConanJs.
At the core, we focus on:
Conan Data: With Conan data you can manage you application state, by letting you divide your state into capsules of reusable state which are ultimately plain JS objects
To read more about how we compare to traditional state management in react, have a look at this article:
ConanJs - React state management for every use case.
Medium
Conan Runtime: A major part of our runtime is the dependency injection, with ConanJs, in the same framework you can not only manage your state, but also have dependency injection.
Let's look in detail at this two, Conan Data and Conan Runtime.
The foundation - Conan Data and Conan Runtime
There are two pillars that build ConanJs
Conan Data
ConanJs separates the UI and the state into Conan Data.
If you have developed web applications before, you have dealt with state.
We consider state all the changing data and metadata that you need to manage to fulfil your business requirements.
We provide you with Conan Data (state and flows), which gives you a unified approach to manage the state
State in ConanJs is built so that you don't have to decide what pattern to use when dealing with state.
Some of the patterns that you might be familiar and that ConanJs unifies are:
Local state via setState / hooks / callbacks
Context state via hooks
Global state via Redux / Redux tool kit / selectors..
ConanJs provides you with necessary tools to deliver enterprise grade applications
Ultimately we want to have the state completely decoupled from the views, our end goal would be to enable developers to write their views as if they were stateless.
To help with this, and to help developers decoupling their code, we provide with dependency injection.
We also provide with a Logging system that you can reuse on your app and that is used internally by everything else in ConanJs.
At last, we also provide with ASAPs, our own implementation of Promises which is fully compatible with your currently existing promises.
What's next?
Still, confused? Don't blame you!
What is ConanJs?
It might help to look at understanding why you should use ConanJs depending on your background.