Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@agile-ts/core

Package Overview
Dependencies
Maintainers
1
Versions
37
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@agile-ts/core

Spacy, Simple, Scalable State Management Framework

  • 0.0.14
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
47
increased by422.22%
Maintainers
1
Weekly downloads
 
Created
Source
AgileTs

Global, simple, spacy State and Logic Framework


GitHub License npm minified size npm total downloads

Build Status Build Status Coverage Badge

Tweet Join Discord


How to create a State?
// -- core.js ------------------------------------------

// 1️⃣ Create Instance of AgileTs
const App = new Agile();

// 2️⃣ Create State with help of before defined Agile Instance
const MY_FIRST_STATE = App.createState("Hello Friend!");


// -- myComponent.whatever ------------------------------------------

// 3️⃣ Bind initialized State to desired UI-Component
// And wolla, it's reactive. Everytime the State mutates the Component rerenders
const myFirstState = useAgile(MY_FIRST_STATE); // Returns value of State ("Hello Friend!")

To learn out more, check out our Quick Start Guides.

⛳️ Sandbox

Test AgileTs yourself in a codesandbox. It's only one click away. Just select your preferred Framework below.

  • React
  • React-Native
  • Vue (coming soon)
  • Angular (coming soon)

More examples can be found in the Example Section.



Why should I use AgileTs?

AgileTs is a global, simple, well-tested State Management Framework implemented in Typescript. It offers a reimagined API that focus on developer experience and allows you to quickly and easily manage your States. Besides States, AgileTs offers some other powerful apis that make your life easier. The philosophy behind AgileTs is simple:

🚅 Straightforward

Write minimalistic, boilerplate-free code that captures your intent.

Some straightforward syntax examples:

  • Mutate and Check States with simple Functions
    MY_STATE.undo(); // Undo latest change
    MY_STATE.is({hello: "jeff"}); // Check if State has the Value '{hello: "jeff"}'
    MY_STATE.watch((value) => {console.log(value);}); // Watch on State changes
    
  • Store State in any Storage, like Local Storage
    MY_STATE.persist("storage-key");
    
  • Create a reactive Array of States
    const MY_COLLECTION = App.createCollection();
    MY_COLLECTION.collect({id: 1, name: "Frank"});
    MY_COLLECTION.collect({id: 2, name: "Dieter"});
    
  • Compute State depending on other States
    const MY_INTRODUCTION = App.createComputed(() => {
       return `Hello I am '${MY_NAME.vale}' and I use ${MY_STATE_MANAGER.value} for State Management.`;
    });
    

🤸‍ Flexible

  • Works in nearly any UI-Layer. Check here if your preferred Framework is supported too.
  • Surly behaves with the workflow which suits you best. No need for reducers, actions, ..
  • Has 0 external dependencies

⛳️ Centralize

AgileTs is designed to take all business logic out of UI-Components and put them in a central place often called core. The benefit of keeping logic separate to UI-Components is to make your code more decoupled, portable and above all easily testable.

🎯 Easy to Use

Learn the powerful tools of AgileTs in a short amount of time. An excellent place to start are our Quick Start Guides, or if you don't like to follow any tutorials, you can jump straight into our Example Section.



Installation

To properly use AgileTs, in a UI-Framework we need to install two packages.

  • The Core Package, which acts as the brain of AgileTs and manages all your States

    npm install @agile-ts/core
    
  • and a fitting Integration for your preferd UI-Framework. In my case the React Integration. Check here if your desired Framework is supported, too.

    npm install @agile-ts/react
    


Documentation

Sounds AgileTs interesting to you? Checkout our documentation, to learn more. And I promise you, you will be able to use AgileTs in no time. In case you have any further questions don't hesitate joining our Community Discord.



Contribute

Get a part of AgileTs and start contributing. We welcome any meaningful contribution 😀 To find out more checkout the CONTRIBUTING.md.

Maintainability

Packages of Agile
NameLatest VersionDescription
@agile-ts/corebadgeState Manager
@agile-ts/reactbadgeReact Integration
@agile-ts/apibadgePromise based API
@agile-ts/multieditorbadgeSimple Form Manager
@agile-ts/eventbadgeHandy class for emitting UI Events


Credits

AgileTs is inspired by MVVM Frameworks like MobX and PulseJs.

Keywords

FAQs

Package last updated on 13 Apr 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc