GithubHelp home page GithubHelp logo

hhy5277 / rekit Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rekit/rekit

0.0 2.0 0.0 22.5 MB

IDE and toolkit for building scalable web applications with React, Redux and React-router

Home Page: http://rekit.js.org

JavaScript 100.00%

rekit's Introduction

๐ŸŽ‰ Rekit Now Creates Apps By Create-react-app

๐Ÿ”ฅ Introducing Rekit Studio: a real IDE for React and Redux development

๐ŸŽ‰ Using Rekit Studio in an Existing React Project

Rekit is a toolkit for building scalable web applications with React, Redux and React-router. It's an all-in-one solution for creating modern React apps.

It helps you focus on business logic rather than dealing with massive libraries, patterns, configurations etc.

Build Status Coverage Status Gitter Demo MIT licensed Code Quality: Javascript Total Alerts

Rekit creates apps bootstrapped by create-react-app and uses an opinionated way to organize folder and code. It's designed to be scalable, testable and maintainable by using feature oriented architecture, one action per file pattern. This ensures application logic is well grouped and decoupled.

Besides creating apps, Rekit provides powerful tools for managing the project:

  1. Rekit Studio: the real IDE for React, Redux development.
  2. Command line tools: besides Rekit Studio, you can use command line tools to create/rename/move/delete project elements like components, actions etc. It has better support for Rekit plugin system.

Below is a quick demo video of how Rekit works:

Rekit Demo

The demo contains two parts, which are examples in Redux's official website:

  1. Create a simple counter in 1 minute!
  2. Show the latest reactjs topics on Reddit using async actions.

Live Demo

You can also see the live demo at: http://demo.rekit.org

Installation

npm install -g rekit

This will install a global command rekit to the system. Rekit is developed and tested on npm 3+ and node 6+, so this is the prerequisite for using Rekit.

Usage

Create a new application

rekit create <app-name> [--sass]

This will create a new app named app-name in the current directory. The --sass flag allows to use sass instead of default less as the CSS transpiler. After creating the app, you need to install dependencies and start the dev server:

cd app-name
npm install
npm start

It then starts two express servers by default:

  1. Webpack dev server: http://localhost:6075. Just what create-react-app starts.
  2. Rekit Studio: http://localhost:6076. The IDE for Rekit projects.

To change the ports dev-servers running on, edit the rekit section in package.json:

{
  ...
  "rekit": {
    "devPort": 6075,
    "studioPort": 6076,
    ...
  }
  ...
}

Packages

This repo contains multiple packages managed by yarn workspaces.

Packages Description
rekit-core Version Provide core APIs such as create components, rename actions, etc...
rekit Version CLI wrapper of rekit-core, create apps by cloning repo from rekit-boilerplate-cra
rekit-studio Version Dedicated IDE for Rekit development, uses rekit-core to manage project too.
rekit-plugin-redux-saga Version Use redux-saga instead of redux-thunk for async actions.
rekit-plugin-selector Version Support selectors by Rekit cli.
rekit-plugin-apollo Version Support graphql by Apollo.

Key Features

  • It's production-ready but not a starter kit.
  • Zero additional configuration needed after creating an app.
  • Dedicated IDE for Rekit development.
  • Command line tools to manage actions, reducers, components and pages.
  • Bootstrapped by create-react-app, all your knowledge about it still works.
  • Use Webpack 3 for bundling.
  • Use Babel for ES2015(ES6)+ support.
  • Use React hot loader for hot module replacement.
  • Use Redux for application state management.
  • Use React-router for routing and it's configured with Redux reducer.
  • Use Webpack dll plugin to improve dev-time build performance.
  • Use Less or Sass as CSS transpilers.
  • Use jest, enzyme for testing.
  • Support Redux dev tools.

Documentation

http://rekit.js.org

License

MIT

rekit's People

Contributors

barrygilbert avatar chesshacker avatar gautamnaik1994 avatar ian25 avatar jhsu avatar jlleblanc avatar jsnelgro avatar koolsplay avatar meeoh avatar mike706574 avatar moklick avatar mwcbrent avatar nelreina avatar radarhere avatar sdaves avatar seigel avatar sseletskyy avatar supnate avatar vherrin avatar xcorail avatar ziraga avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.