Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

417 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jumpsuit Banner

npm version Build Status npm Jumpsuit on Slack

Jumpsuit is a React framework for efficiently building powerful web applications.

Join us on Slack!

Quick Start

Install to an existing project

$ yarn add jumpsuit
# or
$ npm install --save jumpsuit

Using Create-React-App

# Create a new project with create-react-app
$ create-react-app myProjectName
$ cd myProjectName

# Install Jumpsuit
$ yarn add jumpsuit

# Start the create-react-app dev server
$ yarn start

index.js

// Import Jumpsuit
import React from 'react'
import { Render, State, Actions, Component, Effect } from 'jumpsuit'

// Create a state with some actions
const CounterState = State({
  // Initial State
  initial: { count: 0 },
  // Actions
  increment: ({ count }) => ({ count: count + 1 }),
  decrement: ({ count }) => ({ count: count - 1 })
})

// Create an async action
Effect('incrementAsync', () => {
  setTimeout(() => Actions.increment(), 1000)
})

// Create a subscribed component
const Counter = Component({
  render() {
    return (
      <div>
        <h1>{ this.props.count }</h1>
        <button onClick={ Actions.increment }>Increment</button>
        <button onClick={ Actions.decrement }>Decrement</button>
        <br />
        <button onClick={ Actions.incrementAsync }>Increment Async</button>
      </div>
    )
  }
}, (state) => ({
  // Subscribe to the counter state (will be available via this.props.counter)
  count: state.counter.count
}))

// Compose the global state
const globalState = { counter: CounterState }

// Render your app!
Render(globalState, <Counter/>, 'app')

Live Example on WebpackBin

FAQ

  • What does the Jumpsuit core include?
    • State Management powered by Jumpstate & Redux
    • Routing (React-Router)
    • Rendering/Bootstrapping
    • Hot State Reloading
  • Can I use it with Create React App?
    • You bet! We have an example you can view or drop right into your src directory!
  • But I've already built an app! Can I still use Jumpsuit?
    • Of course! Jumpsuit is not an all or nothing framework and has many levels of buy-in for usefulness. You can easily migrate small parts of your app to use Jumpsuit using only the pieces you need.
  • I love the state management in Jumpsuit, so can I just use that?
    • Of course! Head over to Jumpstate to get started!

Badge

Using Jumpsuit in your project? Show it off!

built with jumpsuit

[![built with jumpsuit](https://img.shields.io/badge/built%20with-jumpsuit-3A54AD.svg)](https://github.com/jumpsuit/jumpsuit)

Examples

Team

Tanner Linsley Jason Maurer
Tanner Linsley Jason Maurer

Used By

Nozzle Logo

License

MIT © Jumpsuit

About

A React framework for efficiently building powerful web applications -

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages