jokio
TypeScript icon, indicating that this package has built-in type declarations

0.4.2 • Public • Published

jokio 🃏

simple functions for creating complex apps

Build Status npm version

Quick Start:

just run:

yarn create jokio-app myapp

for detailed information and all options please visit create-jokio-app repository.

Idea:

In every process we need three different objects:

  • Props
  • State
  • Context

jokio provides following structure to describe processes and make it composable

type Process = (props: Props) => (state: State, context: Context) => Promise<State>
 
const process1: Process
const process2: Process
 
const run = compose(
  process1,
  process2,
)
 
run(initialState, initialContext)

Functions:

  • compose
  • run
  • runWith
  • log
  • timer
  • pubsub
  • uniqueId

Example:

import { compose, log } from 'jokio'
 
const process1 = (props) => (state, context) => {
  return { ...state, info: state.info + ' hello' }
}
 
const process2 = (props) => (state, context) => {
  return Promise.resolve({ ...state, info: state.info + ' world' })
}
 
const initialState = {
  info: '[Cool App]'
}
 
const run = compose(
  process1({}),
  process2({}),
  log(),
)
 
run(initialState)
 

Related Projects:

Yeoman

You can also use yo generator

install once:

npm i -g yo generator-jokio

create app:

yo jokio

Note: this command will not create a new folder, it will generate files in current folder

Badge:

[![engine: jokio](https://img.shields.io/badge/engine-%F0%9F%83%8F%20jokio-44cc11.svg)](https://github.com/jokio/jokio)

engine: jokio

Readme

Keywords

Package Sidebar

Install

npm i jokio

Weekly Downloads

3

Version

0.4.2

License

MIT

Unpacked Size

19 kB

Total Files

22

Last publish

Collaborators

  • ezeki