Coder Social home page Coder Social logo

stevenlangbroek / essential-react Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pheuter/essential-react

0.0 2.0 0.0 350 KB

A minimal skeleton for building testable React apps using ES6

Home Page: http://pheuter.github.io/essential-react/

License: MIT License

HTML 1.21% JavaScript 98.79%

essential-react's Introduction

Travis branch Coveralls npm David

Sauce Test Status


Deploy

A minimal skeleton for building testable React apps using ES6.

Design Goals

  • As few tools as possible (no yeoman, gulp, bower, etc...)
  • ES6 with polyfills for current browsers
  • Testability: ease of writing unit tests and generating code coverage
  • Minimize templates, compose DOM alongside components via JSX
  • Session-driven routing using react-router with async data fetching

Getting Started

$ npm install

Start the local dev server:

$ npm run server

Navigate to http://localhost:8080/ to view the app.

Dependencies

Dev

Check out package.json for the complete list.

Project structure

Components are grouped into 2 main categories:

  • common - contains various classes and components that are shared between pages and views
  • pages - contains components grouped by the page / view / feature they belong to.

A case can be made to move routers into common, but I felt it made sense to keep them in their own section.

Commands

A core philosophy of this skeleton app is to keep the tooling to a minimum. For this reason, you can find all the commands in the scripts section of package.json.

server

$ npm run server

Input: src/main.jsx

This leverages React Hot Loader to automatically start a local dev server and refresh file changes on the fly without reloading the page.

It also automatically includes source maps, allowing you to browse code and set breakpoints on the original ES6 code:

build

$ npm run build

Input: src/main.jsx

Output: build/app.js

Build minified app for production using the production shortcut.

test

$ npm test

Input: test/main.js

Output: coverage/

Leverages Karma to run through the test suite using PhantomJS and generate code coverage reports.

test-cross-browser

$ npm run test-cross-browser

Input: test/main.js

Runs the unit test suite against various browsers using the Sauce Labs automated cross-browser testing tool.

coveralls

$ npm run coveralls

Input: coverage/lcov.info

Sends the code coverage report generated by Istanbul to Coveralls.

clean

$ npm run clean

Input: build/app.js

Removes the compiled app file from build.

essential-react's People

Contributors

paulyoung avatar pheuter 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.