Releases: RiadhAdrani/recursive
v0.8.0
v0.8.0
This release is testable and could be used in production for small and non-complex project.
This release marks the end of development of recursive using JavaScript, it will undergo a complete rewrite with TypeScript, for better code maintainability and expandability.
Change logs
- moved platform specific code to a new package called
recursive-web. - added unit testing with
jest. - added multiple Readme files.
- changed how dynamic routes work.
- add
setEffect(). - changed how route declaration works.
- changed the structure of the framework to be instance based.
- added
onPrepared()andbeforePrepared()hooks. - added
getAnchor(). - added
isWithinRoute(). - added typing with *.d.ts files.
- fixed various bugs...
If you find this project interesting or have any suggestion, feel free to leave a comment/Issue.
v0.7.0
v0.7.0
This release is testable and could be used in production for small and non-complex project
Recursive is now a front end Framework
Changelog:
- Changed how styling work.
inlineandstyleSheetare now merged intostyle. - Added
checksmaking sure that the DOM and VDOM are identical at least in structure. - Fixed many bugs with the
Router.
If you find this project interesting or have any suggestion, feel free to leave a comment/Issue.
v0.6.0
v0.6.0
This release is testable, but still not 100% production ready.
Changelog:
- The library now uses
RecursiveOrchestratoras the engine of the library. - The App lifecycle is now divided into
stepsmanaged by theorchestratorand no longer usesevent-basedupdates:- Computed
changesare now bundled together and executed in a single time. Hooksare now bundled.Component-Stylesare now recursively collected.
- Computed
- Irresponsive updates are now detected and has their impact buffered on the App state.
- Improved how errors are displayed, with the addition of giving possible reasons for
recursive-generatederrors. updateAfteris no longer deprecated : it now bundles the changes made inside itscallbackand send anupdate-requestto theRecursiveOrchestrator.RecursiveEventsis now deprecated.- Introduced more feature to toy with regarding the
setStatemethod : It now return an array of5elements and have4parameters:- Parameters:
uidunique identifier, must be unique generally.valueinitial value.onInitexecutes after the state has been created, allow the user to fetch dataasynchronouslylike fetching data or making an api call.beforeDestroyedexecuted just before the removal of the state. Allow the user to make some cleaning like unsubscribing from services.
- Returns :
valuethe value of the state at the current rendered state.setValueis a function that change the value of the state and update the DOM.preValuethe previous value. initially, it is set toundefined.existsis a function that returns if the state still exists or not.liveis a function that returns the live value of the state, could be used immediately aftersetValueand it will return the updated value.
- Parameters:
- States are now cleaned when they are out of context.
If you find this project interesting or have any suggestion, feel free to leave a comment/Issue.
v0.5.0
Recursive
v0.5.0
This release is testable, but still not 100% production ready.
Changelog:
- We are at
npm👊 - The library now has a
nodetemplate project :create-recursive-app. - State objects are now used like the
reactuseState with the obligation of giving each state auid. - Added
dynamic-routesupport.
If you find this project interesting or have any suggestion, feel free to leave a comment/Issue.
v0.4.0-alpha
Project Recursive
v0.4.0
This release is testable, but still not production ready.
Changelog:
- Removed
multi-threading - Style handling is no longer the task of
RecursiveDOM,RecursiveCSSOMwill take care of computing styles. RecursiveDOMis no longer exposed globally.- Decomposed the entry
Recursive.jsinto multiple files :- Recursive.js contains a
Renderfunction andCreateComponentclass. - Recursive-Components.js export all ready-made components.
- Recursive-Router.js export
createRouter,createRoute,renderRouterandgoTo. - Recursive-State.js export
setState,updateAftermethods. - Recursive-Style.js export
setStylemethod.
- Recursive.js contains a
If you find this project interesting or have any suggestion, feel free to leave a comment/Issue.
v0.3.0-alpha
Project Recursive
v0.3.0
This release is testable, but still not production ready.
New features and Fixes
- Performance improvement : The ability to use
Web Workers - Router now works as intended
If you find this project interesting or have any suggestion, feel free to leave a comment/Issue.
v0.2.0-alpha
Project Recursive
v0.2.0
The second alpha version, another step closer to beta. The library has been refactored to be easier to load and debug.
This release is testable, but still not production ready.
New features
This release added:
- Performance improvement.
- Some CSS attributes and selectors
AbstractedComponent has been removed.
Bugs
Bugs still to be fixed:
- Clicking the forward button will cause the
RecursiveDOMto behave in a weird way.
If you find this project interesting or have any suggestion, feel free to leave a comment/Issue.
v0.1.0-alpha
Project Recursive
v0.1.0
Project Recursive offers a new way of creating web apps using a whooping 99.9% Javascript.
White you can still use other front-end technologies, the library offers many approaches to create beautiful UI.
Features
This release contains:
- A working Virtual DOM called
RecursiveDOM - The RecursiveDOM accepts components made by the
CreateComponentclass. - All
HTML Elementsare premade as components. - Styling can be approached from a multitude of methods : using a
.cssfile, or even better using thestaticStyleparameter in the RecursiveDOM. Each component could be styled using the inlinestyleor the automatedstyleSheet. - Lifecycle methods or
hooksare here too, for now we have:onCreated,onUpdated,beforeDestroyedandonDestroyed. flagsis a list of props that tell the RecursiveDOM how to display components, a very well known one isrenderIfwhich is the equivalent ofv-iforng-ifin Vue.js and Angular respectively.Routingis supported, which make more sense compared to other major frameworks and libraries.
Improvements and Bug fixing
Some ideas I am thinking of:
- Introduce a simple and efficient way of using a
StateManagementsystem. - Multi-threading to help improve performance even more.
- Create premade Components like
ListView,Row,ColumnorImageSlide.
If you find this project interesting or have any suggestion, feel free to leave a comment/Issue.