Skip to content

kallaspriit/rapp

Repository files navigation

RAPP - React APP

RAPP (React APP) is a happy marriage of react, react-router and redux, providing reasonable directory structure and workflow tooling for authoring powerful modern web applications.

It provides dev server with hot reload, production version generator, test framework and linting. You can write your code in ES6 and simple production app weighs in at around 284KB without gzip.

Getting started

  • > npm install - installs all the libraries dependencies
  • > gulp dev - starts the dev server on port 3000 and production server on 3001
  • open http://localhost:3000

Gulp tasks

  • > gulp dev - starts the dev server on port 3000 and production server on 3001
  • > gulp production - starts production server on port 3001, application is rebuilt on source changes
  • > gulp lint - checks the codebase for errors and style guide
  • > gulp test - runs the test suite
  • > gulp build - builds the production bundle in "build/production" directory

Application libraries

  • react - facebook's user interface library
  • react-router - complete routing solution designed specifically for React.js
  • redux - predictable state container for JavaScript apps

Development tools

  • react-hot-loader - lets you tweak React components in real time
  • redux-devtools - enables stores time travel
  • gulp - task automation
  • webpack - module bundler that takes modules with dependencies and generates static assets representing those modules
  • babel - JavaScript transformer enabling ES2015 and more
  • postcss - tool for transforming CSS with JS plugins
  • karma - spectacular test runner
  • jasmine - behavior-driven development framework for testing JavaScript code
  • eslint - provides pluggable linting utility for JavaScript
  • node-notifier - shows native desktop events on build/linting errors etc

Features

  • write your code in ES2015
  • full source maps support
  • task automation with gulp
  • built-in dev server
  • localization support
  • loggings support
  • application and developer configurations
  • development issues such as linter errors are shown as desktop notifications
  • redux dev tools including time-machine
  • hot reload for views, flux reducers (redux flux stores) and CSS
  • production version generation
  • code linting including react components
  • travis integration
  • helper for writing map-based reducers

TODO

  • testing views and components
  • dev server should survive errors
  • show broken component in red
  • reducers, views, decorators index file generator
  • resource generators

About

Minimalistic ES6 React application framework

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published