The world is reacting, and this is a series of "mini" React projects.
We look at the concepts of functional programming inorder to structure React Applications better.
What's happening behind the scenes?
We look at Pure React.
And quickly switch focus to a JavaScript extension (JSX), similar to HTML, for defining react elements.
But really, what is the React advantage?
We dig into Data handling and Component lifecycle to answer this question.
Then we get on to use Redux (based on flux) to manage application state while building the UI.
We also Unit test using tools like ESLint, Jest and Enzyme to verify our "app" functions.
Plus how do we manage browser history in Single-Pages-Apps with React Router?
And finally, we get into React and the server (isomorphic concept, node-express and more).
** You need, but are not limited to,
- yarn (package manager created at Facebook)(npm can also work)*
- ES6(ECMAScript2015)
- React developer tools (for Chrome/Firefox)
- React & React-dom (together, the React library)
- redux, react-redux, babel, webpack and more (look at package.json)
- Configure your Version Control (Git-flow)
- Fork the repository
- Run
yarn install
within the project root folder. (same location as package.json)
- This project reference: Learning React (Functional Web development with React & Redux)
available at http://bit.ly/learning-react-2e
- see the [React documentation](https://facebook.github.io/react/index.html)
- see the [React Source](https://github.com/facebook/react)
- see [Webpack Documentation](https://webpack.js.org/)
- see [Flux Documentation](https://facebook.github.io/flux/docs/overview.html)
- see [Redux Documentation](http://redux.js.org/index.html)
- see [Jest Documentation] at (https://facebook.github.io/jest/)
- see [React Router Documentation] at (https://reacttraining.com/react-router/)
- Gitflow remote collaboration model
- Code review (pull requests)
- Writing tests (Unit and Functional tests)
- Other guidelines shall be issued with time.
- Contact: @MwamiTovi on GitHub
- Email directly: matovu.synergy@gmail.com