JavaScript Other
Latest commit a72e554 Jul 7, 2017 @steida steida committed on GitHub Update README.md
Permalink
Failed to load latest commit information.
android Update RN 0.42 and Flow 0.38 (#1332) Mar 3, 2017
firebase redux-observable ftw Oct 25, 2016
flow-typed/npm Prettify source code, update eslintrc, flow-types, deps. Close #1337 Mar 11, 2017
gulp Prettify source code, update eslintrc, flow-types, deps. Close #1337 Mar 11, 2017
ios Update RN 0.42 and Flow 0.38 (#1332) Mar 3, 2017
messages Universal styles (#1306) Jan 28, 2017
src Fix build Mar 11, 2017
webpack Prettify source code, update eslintrc, flow-types, deps. Close #1337 Mar 11, 2017
.babelrc removed 'transform-react-inline-elements' Jul 26, 2016
.buckconfig Upgrade to React and React Native May 25, 2016
.editorconfig New universal Este initial commit Oct 13, 2015
.eslintignore Remove unused dir from .eslintignore Sep 5, 2016
.eslintrc Prettify source code, update eslintrc, flow-types, deps. Close #1337 Mar 11, 2017
.flowconfig Update RN 0.42 and Flow 0.38 (#1332) Mar 3, 2017
.gitattributes React Native 0.41, Close #1287 Feb 4, 2017
.gitignore Update RN 0.42 and Flow 0.38 (#1332) Mar 3, 2017
.node-version gulp deploy-now for Zeit Now Close #1308 Mar 1, 2017
.watchmanconfig New universal Este initial commit Oct 13, 2015
ISSUE_TEMPLATE .github dir is too much ceremony May 13, 2016
LICENSE New directories Sep 19, 2015
Procfile New universal Este initial commit Oct 13, 2015
README.md Update README.md Jul 6, 2017
circle.yml gulp deploy-now for Zeit Now Close #1308 Mar 1, 2017
firebase.json Update firebase.json for new cli tool May 27, 2016
gulpfile.babel.js Ups Jul 28, 2016
index.android.js Add native main.js May 9, 2016
index.ios.js Add native main.js May 9, 2016
package.json Update deps Mar 15, 2017
yarn.lock Update deps Mar 15, 2017

README.md

Este.js

Circle CI Join the chat at https://gitter.im/este/este Dependency Status GitHub license

Starter kit for universal full–fledged React apps. One stack for browser, mobile, server.

You don't have to start with everything. Este is perfect even for plain static pages. You can gracefully add any platform later. Este mission is simple: Help startups to deliver minimum viable product asap with the state of the art real-time universal app stack.

Next Este is in the next brach. Check issues need to be done.

Please support Este via Bitcoin: 15H9wHuJk7RPHfWPPCRtiUEBb7vX1iD7ui

Pokud máte zájem o školení JavaScript, React.js, nebo Este.js, podívejte se na javascript-skoleni.cz.

Techniques

  • universal architecture with immutable app state
    • code shared across platforms (browser, server, native mobile)
    • server side rendering or server-less pre-rendering to HTML files
    • universal internationalization
    • universal crash reporting
    • universal data fetching
    • universal forms with universal validation
    • universal components with universal styles
  • stateless functional UI with dynamic typed styles
  • flowtype FTW
  • vanilla hot reloading makes everything hot reloadable
  • Firebase integration (este.firebaseapp.com)
    • email and facebook login
    • declarative queryFirebase higher order component for Firebase imperative API
    • users presence

Libraries

Prerequisites

  • node.js Node 6+
  • gulp npm install -g gulp
  • git git cmd tool is required

Optional

If you are using different node versions on your machine, use nvm to manage them.

Create App

git clone
cd este
yarn (or npm install)

Start Development

  • run gulp
  • point your browser to localhost:3000
  • build something beautiful

React Native: Getting Started

Dev Tasks

  • gulp run web app in development mode
  • gulp ios run iOS app in development mode
  • gulp android run Android app in development mode
  • gulp -p run web app in production mode
  • gulp -f run web app in development mode, but only browser source rebuilds on file changes
  • gulp jest run jest tests
  • gulp jest-watch continuous test running for TDD
  • gulp eslint eslint
  • gulp eslint --fix fix fixable eslint issues
  • gulp messages-extract extract messages for translation
  • gulp messages-check check missing and unused translations
  • gulp messages-clear remove unused translations
  • gulp favicon create universal favicon
  • gulp prettier prettify source code

Production Tasks

  • gulp build -p build app for production
  • npm test run all checks and tests
  • node src/server start app, remember to set NODE_ENV
  • gulp to-html render app to HTML for static hosting like Firebase
  • gulp deploy-now deploy to Now
  • gulp deploy-heroku deploy to Heroku
  • gulp deploy-firebase deploy to Firebase
  • gulp deploy-firebase-database deploy Firebase database only

Customize Este App

  • set name in package.json
  • set locales, firebaseUrl, sentryUrl, etc. in src/server/config.js
  • change src/common/app/favicons/original/favicon.png, then gulp favicon and gulp -p
  • modify your FB app_id e.g. for iOS

Links

Tips

  • Recommended editor is Atom. Check settings.
  • Install nuclide.io, enable "Use the Flow binary included in each project".

Credit

Made by Daniel Steigerwald and the community.