SlideShare a Scribd company logo
ReactJS for Beginners
Oswald Campesato
Consultant/Training:
www.iquarkt.com
ocampesato@yahoo.com
What is ReactJS?
• Library for Web Apps (from Facebook)
• Provides the “V” in “MVC”
• component-based architecture
• ES6/JSX (HTML embedded in JavaScript)
• 400 components available:
https://github.com/brillout/awesome-react-components
Advantages of ReactJS
• highly efficient
• easier to write Javascript via JSX
• out-of-the-box developer tools
• very good for SEO
• easy to write UI test cases
• http://www.pro-tekconsulting.com/blog/advantages-
disadvantages-of-react-js/
Disadvantages of ReactJS
• ReactJS is only a view layer
• ReactJS into an MVC framework requires configuration
• learning curve for beginners who are new to web
development
• Scaffolding is usually needed for transpilation

Recommended for you

Basics of React Hooks.pptx.pdf
Basics of React Hooks.pptx.pdfBasics of React Hooks.pptx.pdf
Basics of React Hooks.pptx.pdf

The session will provide the knowledge about react page life cycle and how more precise actions or operations can be performed using react hooks concepts

reactive programmingreactjsuiux
Introduction to React JS for beginners
Introduction to React JS for beginners Introduction to React JS for beginners
Introduction to React JS for beginners

- React is a JavaScript library for building user interfaces that uses a virtual DOM for faster re-rendering on state changes. - Everything in React is a component that can have states, props, and lifecycle methods like render(). Components return JSX elements. - Props are used for passing data to components in a unidirectional flow, while states allow components to re-render on changes. - The render() method returns the view, accessing props and state values. Forms and events also follow React conventions.

facebooklibraryjavascript
reactJS
reactJSreactJS
reactJS

This document provides an introduction to React.js, including: - React is a JavaScript library for building user interfaces and was developed by Facebook. It is the VIEW component in MVC architecture. - Key features and benefits of React include being fast, modular, scalable, flexible, and popular due to its employability. Large companies like Facebook use React. - Core concepts of React include JSX, components, unidirectional data flow, and the virtual DOM which improves performance compared to traditional frameworks. Components are reusable pieces that make up the entire application.

reactreact.jsreactjs
What are Transpilers?
• They convert code from one language to another
• Babel (formerly 6to5):
+converts ES6 (some ES7) to ECMA5
+ appears to be the de facto standard
• Traceur (Google):
+ converts ES6 to ECMA5
+ used by Angular 2
NOTE: JSX is transpiled by ECMA5
Typical Set-up Tools
• Node and npm (installing JS dependencies)
• Babel (in HTML Web pages)
• Webpack (highly recommended)
• NB: you can use Gulp instead of WebPack
• https://www.eventbrite.com/e/react-js-foundation-
hands-on-workshop-tickets-27743432353
React App (MyWebPage.html)
<!– The core React library -->
<script src="https://fb.me/react-15.0.0-rc.2.js"></script>
<!– The ReactDOM Library -->
<script src="https://fb.me/react-dom-15.0.0-rc.2.js">
</script>
<!– For transpiling ES6 code into ES5 code -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-
core/5.8.23/browser.min.js">
</script>
ReactJS “Hello World” (Old Style)
• <body>
• <div id="hello"></div>
• <script type="text/babel">
• var Hello = React.createClass({ // deprecated in 0.14.3
• render: function () {
• return ( <h1>Hello World</h1> );
• }
• });
• ReactDOM.render(<Hello/>,
• document.getElementById('hello'));
• </script>
• </body>

Recommended for you

Reactjs
ReactjsReactjs
Reactjs

The document provides an overview of React including its introduction, prerequisites, installation, fundamentals, components, life cycle, routing, hooks, Redux, projects, testing, comparison to Angular, and tips for React developers. It discusses key React concepts such as JSX, props, state, events, DOM, and virtual DOM.

reactnpxnpm
Introduction to react_js
Introduction to react_jsIntroduction to react_js
Introduction to react_js

React is a JavaScript library for building user interfaces. It was created by Facebook and is best for building dynamic websites like chat applications. React uses a virtual DOM for efficiently updating the view after data changes. Components are the building blocks of React and can contain state and props. The document provides an example of a simple component class and demonstrates how to add state and props. It also includes links to example code and MicroPyramid's social media profiles.

reactjsjavascript
React JS
React JSReact JS
React JS

React is an open source JavaScript library for building user interfaces. It was created by Jordan Walke at Facebook in 2011 and is now maintained by Facebook, Instagram, and a community of developers. Major companies like Facebook, Netflix, Instagram, Khan Academy, and PayPal use React to build their interfaces. React uses a virtual DOM for faster rendering and makes components that manage their own state. It uses JSX syntax and a one-way data flow that is declarative and composable.

smgreactjsreact
ReactJS “Hello World” (ES6 Class)
• <div id="hello"></div>
• <script type="text/babel">
• class Hello extends React.Component { // recommended
• constructor () {
• super();
• }
• render() {
• return <div>Hello World</div>
• }
• }
• ReactDOM.render(<Hello/>,
• document.getElementById('hello'));
• </script>
The render() Method in ReactJS
• Contains one top-level “root” element
• a <div> is often the top-level element
• render() is invoked when a state change occurs
• NB: a <View> is the top-level element in React Native
Using “Props” in ReactJS
<div id="hello"></div>
• <script type="text/babel">
• var Hello = React.createClass({ // deprecated in 0.14.3
• render: function () {
• var name = this.props.name;
•
• return ( <h2>Hello {name}</h2> );
• }
• });
• ReactDOM.render(<Hello name="Dave"/>,
• document.getElementById('hello'));
• </script>
Property Types in ReactJS
propTypes contains properties and their types:
propTypes: {
width: React.PropTypes.number,
height: React.PropTypes.number
//other1: React.PropTypes.string,
//other2: React.PropTypes.array.isRequired,
},

Recommended for you

Introduction to React JS
Introduction to React JSIntroduction to React JS
Introduction to React JS

React is a declarative, efficient, and flexible JavaScript library for building user interfaces. It uses virtual DOM which improves performance and can render on both client and server. React encourages a component-based approach where UI is broken into independent reusable pieces that accept external data through properties. Components manage their own state which allows the UI to update over time in response to user input. This makes React code more predictable and easier to debug than traditional two-way data binding.

reactjsreactuser experience
Angular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP ServicesAngular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP Services

Http Service will help us fetch external data, post to it, etc. We need to import the http module to make use of the http service. Let us consider an example to understand how to make use of the http service.

angularwebstack academy bangalorefullstack web developer
React and redux
React and reduxReact and redux
React and redux

This document provides an overview of React and Redux. It introduces React as a component-based library for building user interfaces using JavaScript and JSX. Key aspects of React include its lifecycle methods, use of a virtual DOM for fast updates, and functional stateless components. Redux is introduced as a state management library that uses a single immutable store with actions and reducers. It follows the Flux architecture pattern without a dispatcher. Hands-on demos are provided for key React and Redux concepts. Resources for further learning are also listed.

reactfacebookweb
Property Types and Validation
How to throw an error if any property is negative:
propTypes: {
width: function(props, propName, componentName) {
if(props[propName] < 0) {
throw new Error(propName+" cannot be negative");
}
}
},
The “getDefaultProps()” Method
<div id="container"></div>
<script type="text/babel">
var Hello = React.createClass({
getDefaultProps: function () {
return { y : 456 }
},
render: function () {
return (
<h2>x = {this.props.x} y = {this.props.y} </h2>
);
}
});
ReactDOM.render(<Hello x={123}/>,
document.getElementById('container'));
</script>
Handling Mouse Events
class MouseOverButton extends React.Component {
// constructor …
render() {
console.log("rendering button...");
return (
<button onClick={this.update}>ClickMe</button>
);
}
update() {
console.log("inside update");
}
}
SVG in ReactJS (part 1)
<div id="mysvg"></div>
<script type="text/babel">
class MySVG extends React.Component {
constructor () {
super();
}
// more code in the next slide…

Recommended for you

Intro to React
Intro to ReactIntro to React
Intro to React

The document provides an introduction to React, a JavaScript library for building user interfaces. It discusses key React concepts like components, properties, state, one-way data flow, and JSX syntax. It also covers setting up a development environment with Create React App and shows how to create a basic React component with state. The target audience appears to be people new to React who want to learn the fundamentals.

reactjavascriptopen source
Introduction to ReactJS
Introduction to ReactJSIntroduction to ReactJS
Introduction to ReactJS

React (or React Js) is a declarative, component-based JS library to build SPA(single page applications) which was created by Jordan Walke, a software engineer at Facebook. It is flexible and can be used in a variety of projects.

reactjsweb developmentknoldus
learn what React JS is & why we should use React JS .
learn what React JS is & why we should use React JS .learn what React JS is & why we should use React JS .
learn what React JS is & why we should use React JS .

What is React js? A better introduction to React. React (also known as ReactJs) is a JavaScript library.

what is react jsreact js featuresguide to install react
SVG in ReactJS (part 2)
render() {
return (
<svg width="600" height="200">
<g transform="translate(50, 20)">
<rect x="10" y="10" width="160" height="80" fill="red"/>
</g>
</svg>
);
}
}
ReactDOM.render(<MySVG />,
document.getElementById("mysvg"));
</script>
Conditional Execution (1)
<div id="hello"></div>
<script type="text/babel">
class Hello1 extends React.Component {
render () {
return (
<h2>Hello World1</h2>
);
}
}
Conditional Execution (2)
class Hello2 extends React.Component {
render() {
return (
<h2>Hello World2</h2>
);
}
}
Conditional Execution (3)
ReactDOM.render(
<div>
{ Math.random() > 0.5 ? <Hello1 /> : <Hello2 />}
</div>,
document.getElementById('hello')
);

Recommended for you

React js programming concept
React js programming conceptReact js programming concept
React js programming concept

Provide the primary concept about react js and redux. How react js is integrated with redux to solve the `sate management` for react js application.

react jsreduxjavascript
Introduction to Redux
Introduction to ReduxIntroduction to Redux
Introduction to Redux

Explanation of the fundamentals of Redux with additional tips and good practices. Presented in the Munich React Native Meetup, so the sample code is using React Native. Additional code: https://github.com/nacmartin/ReduxIntro

reselectreact-nativereact
Intro to React
Intro to ReactIntro to React
Intro to React

React is a library for building user interfaces using components. It uses a virtual DOM for rendering components, which are pieces of UI defined as classes or functions. Components receive data via props and local state, and can be nested to build complex UIs. The component lifecycle includes mounting, updating, and unmounting phases. Data flows unidirectionally down the component tree. React has a vibrant ecosystem and community for continued learning.

kualireact
Working with Lists (1a)
class UserList extends React.Component {
render() {
return (
<ul>
<li>Sara</li>
<li>Dave</li>
<li>John</li>
<li>Sally</li>
</ul>
)
}
}
ReactDOM.render( <UserList/>,
document.getElementById('container')
)
Working with Lists (2a)
class UserList extends React.Component {
render() {
return (
<ul>
<ListOptions value="Sara" />
<ListOptions value="Dave" />
<ListOptions value="John" />
<ListOptions value="Sally" />
</ul>
)
}
}
Working with Lists (2b)
class ListOptions extends React.Component {
render() {
return (
<li>{this.props.value}</li>
)
}
}
ReactDOM.render( <UserList/>,
document.getElementById('container')
)
Sometimes we Need JavaScript Functions
• Use map() to apply a function to an array of items:
a) Returns a new array with ‘transformed’ elements
b) You specify the function
• Use filter() to return a subarray of items:
involves conditional logic (defined by you)
• Other functions: merge(), flatten(), reduce(), …
• NB: you can combine them via method chaining

Recommended for you

React workshop
React workshopReact workshop
React workshop

Tutorial Videos: https://www.youtube.com/playlist?list=PLD8nQCAhR3tQ7KXnvIk_v_SLK-Fb2y_k_ Day 1 : Introduction to React, Babel and Webpack Prerequisites of starting the workshop ( Basic understanding of Node & Express ) What is Virtual DOM? What is React and why should we use it? Install and set up React: a-Using create-react-app b-From scratch using Babel and Webpack. We will use Webpack Dev Server. Day 2 : React Basic Concepts Types of Components: Class-based and Functional based Components Use of JSX Parent, Child, and Nested Components Difference between State and Props Create and Handle Routes Component Lifecycle Methods Create a form and handling form inputs Use of arrow functions and Spread Operator Day 3: Advanced Concepts in React Use of Refs What are Higher Order Components( HOC )? How to use HOC Understanding Context in React

reactcomponent
React js
React jsReact js
React js

This document provides an overview of React including: - React is a JavaScript library created by Facebook for building user interfaces - It uses virtual DOM to efficiently re-render components on updates rather than entire page - React supports ES6 features and uses classes, arrow functions, and other syntax - Popular tools for React include Create React App for setting up projects and React Dev Tools for debugging

reactjsspainsingle page application
ReactJs presentation
ReactJs presentationReactJs presentation
ReactJs presentation

This document provides an introduction and overview of ReactJS concepts including components, JSX, props, state, lifecycle methods and the virtual DOM. It compares ReactJS to AngularJS, noting ReactJS uses a non-MVC architecture and focuses on just the view layer while AngularJS follows MVC. Later sections discuss additional ReactJS topics like Flux, Redux, Webpack and RamdaJS.

javascriptreactjs
The ‘map’ and ‘filter’ Functions
var items = [1,2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20];
var even = [], double = [];
even = items.filter(function(item) {
return item % 2 == 0;
});
console.log("even = "+even);
double = items.map(function(item) {
return item * 2;
});
console.log("double = "+double);
The ‘map’ and ‘filter’ Functions
var items = [1,2,3,4,5,6,7,8,9,10];
var result1 = items.filter(function(item) { return item % 4 == 0; })
.map(function(item) { return item * 2; });
var result2 = items.map(function(item) { return item * 2; })
.filter(function(item) { return item % 4 == 0; })
console.log("result1 = "+result1);
console.log("result2 = "+result2);
Working with Lists (3a)
class UserList extends React.Component {
constructor() {
super();
this.userList = [ 'Sara', 'Dave', 'John', 'Sally’];
}
render() {
return (
<div>
<ListOptions2 names={this.userList} />
</div>
)
}
}
Working with Lists (1)
class ListOptions2 extends React.Component {
render() {
return (
<ul>
{this.props.names.map(function(name) {
return (
<li key={name}>{name}</li>
)
})}
</ul>
)
}
}

Recommended for you

Express js clean-controller
Express js clean-controllerExpress js clean-controller
Express js clean-controller

The document discusses ExpressJS, the most popular Node.js web application framework. It notes that ExpressJS is easy to get started with but may lack experience to fully understand needs. The document then covers key aspects of ExpressJS like routing, middleware, and default architecture. It proposes different schemas and approaches for cleaning out and separating concerns in ExpressJS applications, such as using entity loaders, data mappers, validators, and controlling flow through events rather than direct method calls.

Intro to ReactJS
Intro to ReactJSIntro to ReactJS
Intro to ReactJS

On May 14, 2015, Jeff Winkler gave a talk at Harvard University's Lamont Library titled "Intro to ReactJS." Description Created by Facebook and Instagram, React has recently been embraced by companies and organizations including Airbnb, Khan Academy, Reddit, the BBC, and Code Academy. This presentation will be especially interesting for those using or planning to use javascript libraries such as angularJS, backbone.js, ember.js, and others. For this talk, Jeff Winkler will present: - An introduction to React, mixed with demos. - An examination of how React implements Computer Science principles from Functional and Object-Oriented. The discussion will consider the impact on maintainable large-scale systems. Biography Jeff Winkler, is a professional developer* in the Boston area and organizer of the Boston ReactJS Meetup. In addition to the ReactJS Boston Meetup, Jeff works with React professionally at TapJoy and runs http://react.rocks. (* Full-stack guy. ReactJS, Rails, TDD. Best OODA loop wins)

reactreactjs
Express JS
Express JSExpress JS
Express JS

Express is a web framework for Node.js that allows routing, middleware, templating and more. It is inspired by Sinatra and uses Connect as its middleware framework. Key features include routing, middleware support, template rendering with engines like Jade, and session handling with storage options. Errors can be handled via the app.error() method. Express provides a full-featured and easy to use web development framework for Node.js.

nodejsweb design and development
Echoing User Input in ReactJS
class Echo extends React.Component {
constructor() {
super();
}
render() {
return (
<input type="text" onChange={this.handleChange} />
);
}
handleChange(e) {
console.log(e.target.value);
}
}
ReactDOM.render(<Echo />, document.getElementById("content"));
ReactJS: Lifecycle methods
Before/during/after component ‘mounting’:
componentWillMount: function() {
this.doSomething1();
},
componentShouldMount: function() {
this.doSomething2();
},
componentShouldUpdate: function() {
this.doSomething3();
},
componentDidMount: function() {
this.doSomething4();
},
componentWillUnmount: function() {
this.doSomething5();
},
ReactJS: Lifecycle methods
Consider the following scenario:
A Web page contains GSAP code to animate SVG elements
The SVG elements are dynamically generated
There is no static SVG content
Q: where do you place the GSAP code?
A: in the componentDidMount() method
Working with State (1a)
class MyInput extends React.Component {
constructor() {
super();
}
componentWillMount() {
this.state = {value: 'Hello There!'};
}
handleChange(event) {
this.setState({value: event.target.value});
console.log("value: "+this.state.value);
}

Recommended for you

Introduction to React
Introduction to ReactIntroduction to React
Introduction to React

Slide deck from my "Intro to React" brownbag. Presented to my HSG/ECM co-workers on April 22nd, 2016.

javascript
React + Redux for Web Developers
React + Redux for Web DevelopersReact + Redux for Web Developers
React + Redux for Web Developers

I've been working a lot with React lately and thought it would be a good idea to share what I've learned with the group. During this talk we'll take a look at Facebook's React library while drawing comparisons to frameworks like Angular. We'll see how we can use React and friends to create a fast and efficient single page app. Attendees are expected to have some familiarity with ES6/ES7 since we the codebase we will be looking at leverages features from the spec. What we'll be taking a look at: • React • React Router • Redux • Redux Sagas • Webpack • Babel

reduxes6es7
Architecting large Node.js applications
Architecting large Node.js applicationsArchitecting large Node.js applications
Architecting large Node.js applications

The document discusses architecting large Node.js applications. It introduces the Cloud9 IDE and how it was used to build a JavaScript application with 10,000s of lines of code. It describes how the application was difficult to maintain due to lack of modularity. The Architect module is introduced as a way to modularize Node.js applications by treating everything as plugins that can import other plugins. Architect allows defining dependency models, easy testing of modules, and configuration of modules through options. Cloud9 uses Architect to build features like local, FTP, and SSH versions of the IDE that can run independently in a single process. Architect also enables loose coupling between modules through an event bus and centralized configuration.

node.jstechnologyjavascript
Working with State (1b)
render() {
var value = this.state.value;
return <input type="text" value={value}
onChange={this.handleChange} />;
}
}
ReactDOM.render(
<MyInput />,
document.getElementById('myinput')
);
Update List of Users (1)
class UserList extends React.Component {
constructor() {
super();
this.userList = ['Sara', 'Dave', 'John', 'Sally’ ];
this.addUser = this.addUser.bind(this);
}
componentDidMount() {
this.setState({user: ""});
}
addUser() {
var user = this.refs.user.value;
//console.log("user = "+user);
this.setState({user: user});
this.userList.push(user);
}
Update List of Users (2)
render() {
return (
<div>
<ul>
<ListOptions options={this.userList} />
</ul>
<input ref="user" type="text" />
<button onClick={this.addUser}>Add User</button>
</div>
)
}
}
Update List of Users (3)
class ListOptions extends React.Component {
render() {
return (
<ul>
{this.props.options.map(function(option) { // options = userList
return (
<li key={option}>{option}</li>
)
})}
</ul>
)
}
}
ReactDOM.render( <ListOptions/>,
document.getElementById('container’))

Recommended for you

Rethinking Best Practices
Rethinking Best PracticesRethinking Best Practices
Rethinking Best Practices

React is a different way to write JavaScript apps. When it was introduced at JSConf US in May, the audience was shocked by some of its design principles. One sarcastic tweet from an audience member ended up describing React’s philosophy quite accurately: https://twitter.com/cowboy/status/339858717451362304 We’re trying to push the limits of what’s possible on the web with React. My talk will start with a brief introduction to the framework, and then dive into three controversial topics: Throwing out the notion of templates and building views with JavaScript, “re-rendering” your entire application when your data changes, and a lightweight implementation of the DOM and events.

emberjsconfeureact
React JS and why it's awesome
React JS and why it's awesomeReact JS and why it's awesome
React JS and why it's awesome

This document provides an overview of React, including initial reactions to it, fundamental concepts like components and one-way data flow, and how the virtual DOM works. Some key points covered include: - Initial reactions to React were mixed, with some finding it "ugly" but others seeing benefits like separation of concerns with components. - Everything in React is a component, with data flowing in one direction from parent to child via props. State is mutable within a component. - By using a virtual DOM, React can efficiently update the real DOM by only making necessary changes, keeping the interface fast and pure.

Express JS
Express JSExpress JS
Express JS

Websites: https://www.designveloper.com Visit our blog https://www.designveloper.com/blog Like Facebook page https://www.facebook.com/designveloper/ Youtube: http://bit.ly/29PTtFS

express jsweb design and developmentsoftware development
Working with JSON Data Files (1a)
• class UserInfo extends React.Component {
• constructor() {
• super();
• }
• componentWillMount() {
• this.state = { loading: true, error: null, data: null};
• }
•
• componentDidMount() {
• this.props.promise.then(
• value => this.setState({loading: false, data: value}),
• error => this.setState({loading: false, error: error}));
• }
Working with JSON Data Files (1b)
render() {
• if (this.state.loading) {
• return <span>Loading...</span>;
• }
• else if (this.state.error !== null) {
• return <span>Error: {this.state.error.message}</span>;
• }
• else {
• let empItems = this.state.data.map( emp => {
• return <li key={emp.fname}>{emp.fname}</li>
• })
• return (
• <div>
• <ul>{empItems}</ul>
• </div>
• )
}}
Retrieving Github User Data (1)
• class UserInfo extends React.Component {
• constructor() {
• super();
• }
• componentWillMount() {
• this.state = { loading: true, error: null, data: null};
• }
•
• componentDidMount() {
• this.props.promise.then(
• value => this.setState({loading: false, data: value}),
• error => this.setState({loading: false, error: error}));
• }
Retrieving Github User Data (2)
render() {
if (this.state.loading) { return <span>Loading...</span>; }
else if (this.state.error !== null) {
return <span>Error: {this.state.error.message}</span>;
}
else {
var userInfo = this.state.data;
return (
<ul>
<li>Username: {userInfo.login} </li>
<li>Followers: {userInfo.followers} </li>
<li>Following: {userInfo.following} </li>
<li>Created at: {userInfo.created_at}</li>
</ul>
)
}}}

Recommended for you

Express js
Express jsExpress js
Express js

This document provides an overview of ExpressJS, a web application framework for Node.js. It discusses using Connect as a middleware framework to build HTTP servers, and how Express builds on Connect by adding functionality like routing, views, and content negotiation. It then covers basic Express app architecture, creating routes, using views with different template engines like Jade, passing data to views, and some advanced topics like cookies, sessions, and authentication.

ReactJS for Beginners
ReactJS for BeginnersReactJS for Beginners
ReactJS for Beginners

This document provides an introduction and overview of ReactJS concepts including: - Features of ReactJS like its component-based architecture and support for ES6 - What transpilers are and examples like Babel and Traceur - Examples of setting up a basic "Hello World" React app with increasing complexity - Additional concepts covered include properties, events, lists, conditional rendering, fetching external data and more

reactjs
React on Rails - RailsConf 2017 (Phoenix)
 React on Rails - RailsConf 2017 (Phoenix) React on Rails - RailsConf 2017 (Phoenix)
React on Rails - RailsConf 2017 (Phoenix)

The document summarizes the evolution of using React within a Rails application. It describes initially using jQuery and Bootstrap for front-end development needs. It then covers adopting React to take advantage of its one-way data flow and component-based approach. Key steps included embracing ES6 syntax, adding Webpack, introducing Jest for testing, and migrating from Sprockets to manage assets. Over time, React Router and Redux were added for routing and state management. The document concludes by noting ongoing work to improve consistency.

Retrieving Github User Data (3)
ReactDOM.render(
<UserInfo
promise={$.getJSON('https://api.github.com/users/ocampesato')} />,
document.getElementById("userinfo")
);
What about React Routing?
• Routing: how to access different parts of an app
• Static routing and Dynamic routing
• http://rwhitmire.com/react-routify
• ReactRouter v4 contains major changes:
https://github.com/ReactTraining/react-
router/blob/v4/README.md#v4-faq
Heroku and create-react-app (1)
https://github.com/facebookincubator/
a FB endorsed and supported way to build real React apps
Zero configuration deployment to Heroku:
https://blog.heroku.com/deploying-react-with-zero-
configuration
https://github.com/mars/create-react-app-buildpack#usage
Heroku and create-react-app (2)
• npm install -g create-react-app
• create-react-app my-app
• cd my-app
• git init
• heroku create -b https://github.com/mars/create-react-
app-buildpack.git
• git add .
• git commit -m "react-create-app on Heroku"
• git push heroku master
• heroku open

Recommended for you

Integrating React.js Into a PHP Application
Integrating React.js Into a PHP ApplicationIntegrating React.js Into a PHP Application
Integrating React.js Into a PHP Application

React.js has taken the web development world by storm, and for good reason: React offers a declarative, component-oriented approach to building highly-scalable web UIs. But how can we take advantage of a JavaScript library like React in our server-side PHP applications. In this talk l cover the different ways React.js can be integrated into an existing PHP web application: from a client-side only approach to multiple techniques that support full server-side rendering with a Node.js server or PHP’s v8js. I also discuss the trade-offs in each of these designs and the challenges involved with adding React to a PHP site. Most importantly, I consider the higher-level issue of how to improve view cohesion across the client-server divide in a PHP application.

react.jsjavascriptphp
Combining Angular and React Together
Combining Angular and React TogetherCombining Angular and React Together
Combining Angular and React Together

This document discusses using AngularJs and React together. It provides an overview of AngularJs and React, explaining that AngularJs is a framework for dynamic web apps while React is a library for creating user interfaces. It describes how components in React can be built to work with AngularJs and encapsulate concerns. Performance is generally better with React, especially for long lists. Ng-React is introduced as an AngularJs module that makes it easy to use React components in AngularJs applications. Examples are provided of how to render React components using Ng-React, including data bindings.

boostjsreactangular
React - Start learning today
React - Start learning today React - Start learning today
React - Start learning today

This document provides an overview and introduction to React, a JavaScript library for building user interfaces. It discusses why React is used, how to set up a React environment, core React concepts like components, props, state, lifecycles and events. It also introduces React Native for building native mobile apps with React. The document emphasizes learning React through hands-on examples and practice.

javascriptreactjsreact
Higher Order Components
• Define functions that take a component as an argument
and then return a component
• https://medium.com/javascript-inside/why-the-hipsters-
recompose-everything-23ac08748198#.ojvtuun57
• Now let’s take a detour to ES6….
What about ES6?
• Arrow functions and let keyword
• Block scopes
• Classes and inheritance
• Default parameters
• Destructured assignment
• Generators, Iterators, Maps, and Sets
• Promises and Rest parameters
• Spread operator
• Template Literals
ES6 let and Arrow Functions
• let square = x => x * x;
• let add = (x, y) => x + y;
• let pi = () => 3.1415;
• console.log(square(8)); // 64
• console.log(add(5, 9)); // 14
• console.log(pi()); // 3.1415
ES6 Class Definition (part 1)
class Rectangle {
constructor(height, width) {
this.height = height;
this.width = width;
}
calcArea() {
return this.height * this.width;
}
}
• var r1 = new Rectangle(5,10);
• var r2 = new Rectangle(25,15);

Recommended for you

[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation

React JS is a JavaScript library for building user interfaces. It uses a virtual DOM to efficiently update the real DOM and render user interfaces from components. Components are reusable pieces of UI that accept input data via properties but maintain private state data. The lifecycle of a component involves initialization, updating due to state/prop changes, and unmounting. React uses a single-directional data flow and the concept of components makes code modular and reusable.

Universal JavaScript
Universal JavaScriptUniversal JavaScript
Universal JavaScript

Universal JavaScript allows rendering the same JavaScript code on both the server and client. It involves: 1. Server-rendering the initial HTML and JavaScript for faster load times and SEO. 2. Hydrating the server-rendered app with client-side JavaScript to support interactivity. 3. Bundling both server and client code together to share components and logic between server and client rendering.

javascriptfull-stackuniversal javascript
Scala based Lift Framework
Scala based Lift FrameworkScala based Lift Framework
Scala based Lift Framework

Lift provides a concise framework for developing web applications in Scala with features like convention over configuration, clean separation of presentation logic and content, and powerful AJAX and Comet support. It leverages the Scala programming language and has a responsive community. Code is more concise in Lift, increasing developer productivity.

liftscalaweb framework
ES6 Class Definition (part 2)
• console.log("r1 area = "+r1.calcArea());
• console.log("r2 area = "+r2.calcArea());
• Test this code here: http://babeljs.io/repl/
• More Examples:
https://developer.mozilla.org/en-
US/docs/Web/JavaScript/Reference/Classes
Browser Status for ES6
• Modern IE: https://goo.gl/56n7IL
• Mozilla: https://goo.gl/iSNDf9
• Chrome: https://www.chromestatus.com/features#ES6
Other Useful ES6 Links
https://github.com/lukehoban/es6features
http://kangax.github.io/compat-table/es6/
https://dev.modern.ie/platform/status/?filter=f3f0000bf&search=es6
https://developer.mozilla.org/en-
US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_i
n_Mozilla
https://medium.com/@bojzi/overview-of-the-javascript-ecosystem-
8ec4a0b7a7be
Next we’ll discuss application state….
Application State can be Complicated
• Suppose a ReactJS has many components
• What if state is required in multiple components?
• Where is state maintained?
• resembles a C++ class hierarchy a “thick” base class allows for
easy access, but some things don’t belong in the base class
• One solution: store state outside the app (Redux)

Recommended for you

Overview Of Lift Framework
Overview Of Lift FrameworkOverview Of Lift Framework
Overview Of Lift Framework

This presentation is one of the two presentation that was given by Vikas Hazrati at IndicThreads Conference, Pune.

hibernatewebspherejava
Overview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web FrameworkOverview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web Framework

All of us having experience with other web frameworks such as Struts,Tapestry, Rails, etc would ask “Why another framework? Does Lift really solve problems any differently or more effectively than the ones we’ve used before? The Lift Web Framework provides an advanced set of tools for quickly and easily building real-time, multi-users, interactive web applications. Lift has a unique advantage that no other web framework currently shares: the Scala programming language. Scala is a relatively new language developed by Martin Odersky and his group at EPFL Switzerland. Scala is a hybrid Object Oriented and Functional language that runs at native speeds on the JVM and fully interoperates with Java code. Lift is a hybrid web framework built on Scala. Lift derives its features and idioms from the best of existing web frameworks as well as the functional and OO features in Scala. It compiles to Java bytecode and runs on the JVM, which means that we can leverage the vast ecosystem of Java libraries just as we would with any other java web framework. This presentation details the advantages of this Scala based Web framework over all the existing frameworks that we have used uptil now and shows a small sample application built with Lift. We will create a basic application with a model that maps to RDBMS, web pages that correspond to back end logic and bind dynamically created content to elements on the webpage.

parenttoolboxindiajava
20171108 PDN HOL React Basics
20171108 PDN HOL React Basics20171108 PDN HOL React Basics
20171108 PDN HOL React Basics

This document provides an overview and introduction to React basics including: - Details about upcoming React lab series events on topics like routing, styles, testing, and Flux architecture - Information on installing and using create-react-app for scaffolding React projects - An explanation of core React concepts like components, JSX, properties, state, lifecycle methods, and the virtual DOM - Examples of building a minimal React app with components, properties, and state

developmentcodesreact
ReactJS + Flux (Facebook)
• Flux is a pattern (Facebook)
• unidirectional data flow
• Many implementations of Flux are available
• Redux is an implementation of Flux . . .
ReactJS + Redux (Facebook)
• Redux is an implementation of Flux
• the most popular implementation (at least 15 others)
• Mobx (simpler alternative) and Alt
• “advanced state management”
• Actions, Dispatcher, reducer, and Store(s)
• Reductor: Redux for Android
ReactJS + Redux (Facebook)
• How Redux works:
• Create a Redux store
• Dispatcher passes Action and Store to Reducer
• Reducer updates the Store
• View is notified and updated accordingly
Redux versus Mobx
• Redux: influenced by functional programming
• Mobx: influenced by OOP and Reactive Programming
• More detailed comparison of Redux and Mobx:
1) http://www.robinwieruch.de/redux-mobx-confusion
2)https://medium.com/@sanketsahu/if-not-redux-then-
what-fc433234f5b4#.38tus3hai
3) http://blog.bandwidth.com/using-react-js-for-front-end-
development

Recommended for you

Understanding backbonejs
Understanding backbonejsUnderstanding backbonejs
Understanding backbonejs

This document provides an overview of using the Backbone.js framework for client-side MVC applications. It discusses why Backbone is useful for structuring JavaScript applications, its core architecture including models, collections, views and routers. It also provides examples of how to convert jQuery code to use a Backbone-based approach and lists some real-world applications that use Backbone.

backbonejs
2018 05-16 Evolving Technologies: React, Babel & Webpack
2018 05-16 Evolving Technologies: React, Babel & Webpack2018 05-16 Evolving Technologies: React, Babel & Webpack
2018 05-16 Evolving Technologies: React, Babel & Webpack

Technologies are ever changing and since we're building our applications on the shoulders of giants like Babel,... We have to stay up-to-date with the newest trends. We at Codifly strongly believe in using the newest technologies, that's why we've organised a meetup to showcase these for you. This event was organised in collaboration with ITLab HoGent at Campus Schoonmeersen (Voskenslaan 270, 9000 Ghent). A certain level of knowledge about these subjects is required since we're mostly be going over the recent changes. For Babel we're discussing what's new in their upcoming version 7, for Webpack the changes from 3 -> 4.6 will be discussed and for React all the new features in React 16.3 and the upcoming ones.

babelghentjavascript
Building Universal Web Apps with React ForwardJS 2017
Building Universal Web Apps with React ForwardJS 2017Building Universal Web Apps with React ForwardJS 2017
Building Universal Web Apps with React ForwardJS 2017

Use React with Node, webpack, Redux and React Router to build an app with isomorphic architecture. ForwardJS 2017.

nodewebpackreact
ReactJS + GraphQL (Facebook)
• GraphQL: a server-side schema for graph-oriented data
• Can “wrap” NoSQL and relational stores
• GraphQL server processes data requests from clients
• Data is returned to client apps
• http://githubengineering.com/the-github-graphql-api/
• NB: GraphQL does not need Relay (but Relay needs GraphQL)
GraphQL versus REST
• GraphQL is a “finer-grained” alternative to REST
• REST is all-or-nothing: an “entity” is returned
• GraphQL returns a subset of elements of an “entity”
• Falcor from Netflix: GraphQL alternative (without a schema)
GraphQL: What it isn’t
• GQL does not dictate a server language
• GQL does not dictate a storage/back-end
• GQL is a query language without a database
GraphQL: What Does it Do?
• It exposes a single endpoint
• the endpoint parses and executes a query
• The query executes over a type system
• the type system is defined in the application server
• the type system is available via introspection (a GQL API)

Recommended for you

ReactJS
ReactJSReactJS
ReactJS

This document provides an overview of React including: key features like components, JSX, and unidirectional data flow; installation and technical requirements; the component lifecycle; differences from Angular; popular companies using React; and links to examples. It covers React concepts like states, props, and events. Questions from attendees are invited at the end.

javascriptinstagram libraryviewlayer
React.js: You deserve to know about it
React.js: You deserve to know about itReact.js: You deserve to know about it
React.js: You deserve to know about it

This document discusses React, a JavaScript library for building user interfaces. It provides an overview of React concepts like components, props, state, lifecycle methods, and the virtual DOM. Components are the basic building blocks and can be composed to build complex UIs. Data flows unidirectionally from parent to child components via props, while state is local and mutable. The virtual DOM allows React to efficiently update the real DOM by comparing component trees.

reactjsvirtualdomjavascript
Building complex User Interfaces with Sitecore and React
Building complex User Interfaces with Sitecore and ReactBuilding complex User Interfaces with Sitecore and React
Building complex User Interfaces with Sitecore and React

- React is a JavaScript library developed by Facebook that is used by companies like AirBnb, Netflix, and Twitter. - React focuses only on the view layer of MVC. - It uses a virtual DOM for rendering UI rather than directly manipulating the real DOM, allowing for faster re-renders and more efficient change detection.

GraphQL Server Structure
GraphQL servers have three components:
• 1) GraphQL “core” (JavaScript and other languages)
• 2) Type Definitions (maps app code to internal system)
• 3) Application code (business logic)
GraphQL Core: Five Components
• 1) Frontend lexer/parser: an AST [Relay uses parser]
• 2) Type System: GraphQLObjectType (a class)
• 3) Introspection: for querying types
• 4) Validation: is a query valid in the app’s schema?
• 5) Execution: manage query execution (via the AST)
The GraphiQL IDE
• https://github.com/skevy/graphiql-
app/blob/master/README.md
• https://github.com/skevy/graphiql-app/releases
• OSX: brew cask install graphiql
GraphQL Queries (Interfaces)
• interface Employee {
• id: String!
• fname: String
• lname: String
• }
•
• type Query {
• emp: Employee
• }

Recommended for you

ReactJS.ppt
ReactJS.pptReactJS.ppt
ReactJS.ppt

React JS is a library for creating user interfaces that focuses on the view layer. It uses a virtual DOM which is a JavaScript object representation of real DOM elements to efficiently update and render components when data changes. Components can contain subcomponents in a nested structure similar to HTML. Data flows through states that store application data and react to changes, and props are used to pass data between components. The DOM represents elements in a web page as JavaScript objects that can be manipulated. React components can be functions or classes, accept arbitrary inputs via props, and return React elements describing what should appear on screen.

Rails is not just Ruby
Rails is not just RubyRails is not just Ruby
Rails is not just Ruby

Talk on Rails and JavaScript and how JavaScript should be written, structured, separated from the HTML etc.

railsseparation of concernsunobtrusive
Adding a modern twist to legacy web applications
Adding a modern twist to legacy web applicationsAdding a modern twist to legacy web applications
Adding a modern twist to legacy web applications

Avoid misery of working with legacy code We will see how you can add independent and isolated components to existing pages; pages that may be difficult to change React and Flux allow you to make self-contained additions that handle their own data access/persistence

reactweb developmentbrowserify
GraphQL Queries
• GraphQL Query:
• {
• emp {
• fname
• }
• }
• Response data:
• {
• "data": [{
• "emp": {
• "fname": "John"
• }
• }]
• }
GraphQL Queries
• query EmpNameQuery {
• emp {
• fname
• lname
• }
• }
• The result of the preceding query is here:
• {
• "data": [{
• "emp": {
• "fname": "John",
• "lname": "Smith"
• }
• }]
• }
GraphQL Websites
• Apollo: http://www.apollostack.com/
“consolidates” data (removes duplicates in a tree)
• Reindex: https://www.reindex.io/blog/redux-and-
relay
• Scaphold: scaphold.io
• Upcoming SF conference: http://graphqlsummit.com/
GraphQL Websites
• Apollo: http://www.apollostack.com/
“consolidates” data (removes duplicates in a tree)
• Reindex: https://www.reindex.io/blog/redux-and-relay
• Scaphold: https://scaphold.io/#/
• GraphiQL: https://github.com/skevy/graphiql-app
• GraphQL conference: http://graphqlsummit.com/

Recommended for you

Working with tf.data (TF 2)
Working with tf.data (TF 2)Working with tf.data (TF 2)
Working with tf.data (TF 2)

This session for beginners introduces tf.data APIs for creating data pipelines by combining various "lazy operators" in tf.data, such as filter(), map(), batch(), zip(), flatmap(), take(), and so forth. Familiarity with method chaining and TF2 is helpful (but not required). If you are comfortable with FRP, the code samples in this session will be very familiar to you.

tf2filter()map()
Introduction to TensorFlow 2 and Keras
Introduction to TensorFlow 2 and KerasIntroduction to TensorFlow 2 and Keras
Introduction to TensorFlow 2 and Keras

This document provides an overview and introduction to TensorFlow 2. It discusses major changes from TensorFlow 1.x like eager execution and tf.function decorator. It covers working with tensors, arrays, datasets, and loops in TensorFlow 2. It also demonstrates common operations like arithmetic, reshaping and normalization. Finally, it briefly introduces working with Keras and neural networks in TensorFlow 2.

cnnsrnnslstms
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep Learning

A fast-paced introduction to Deep Learning concepts, such as activation functions, cost functions, back propagation, and then a quick dive into CNNs. Basic knowledge of vectors, matrices, and derivatives is helpful in order to derive the maximum benefit from this session.

cnnannsigmoid
ReactJS + Relay (Facebook)
• Relay: a “wrapper” around client-side components
• Data requests from a component “go through” Relay
• Relay sends data requests to a GraphQL server
• Data is returned to client application
• Data is displayed according to application code/logic
MERN: Mongo/Express/ReactJS/NodeJS
• http://mern.io/
• MERN starter app:
• git clone https://github.com/Hashnode/mern-starter.git
• cd mern-starter
• npm install
• npm start
• MERN CLI:
• [sudo] npm install -g mern-cli
• mern init myApp
• cd myApp
• npm install
• npm start
What is React Native? (Facebook)
• Facebook toolkit for cross-platform native mobile apps
• https://facebook.github.io/react-native/
• You write custom JSX code for Android and iOS
• Update contents of index.android.js and index.ios.js
• Invoke react-native from command line
• Update cycle: Mobile app is updated via “hot reloading”
React Native Components
• https://github.com/react-native-community/react-native-elements
• Buttons
• Icons
• Social Icons / Buttons
• Side Menu
• Form Elements
• Search Bar
• ButtonGroup
• Checkboxes
• List Element
• Linked List Element
• Cross Platform Tab Bar
• HTML style headings (h1, h2, etc...)
• Card component
• Pricing Component

Recommended for you

Introduction to TensorFlow 2
Introduction to TensorFlow 2Introduction to TensorFlow 2
Introduction to TensorFlow 2

A fast-paced introduction to TensorFlow 2 about some important new features (such as generators and the @tf.function decorator) and TF 1.x functionality that's been removed from TF 2 (yes, tf.Session() has retired). Some concise code samples are presented to illustrate how to use new features of TensorFlow 2.

cnnsrnnslstms
Introduction to TensorFlow 2
Introduction to TensorFlow 2Introduction to TensorFlow 2
Introduction to TensorFlow 2

A fast-paced introduction to TensorFlow 2 about some important new features (such as generators and the @tf.function decorator) and TF 1.x functionality that's been removed from TF 2 (yes, tf.Session() has retired). Concise code samples are presented to illustrate how to use new features of TensorFlow 2. You'll also get a quick introduction to lazy operators (if you know FRP this will be super easy), along with a code comparison between TF 1.x/iterators with tf.data.Dataset and TF 2/generators with tf.data.Dataset. Finally, we'll look at some tf.keras code samples that are based on TensorFlow 2. Although familiarity with TF 1.x is helpful, newcomers with an avid interest in learning about TensorFlow 2 can benefit from this session.

tensorflow 2cnnsrnns
"An Introduction to AI and Deep Learning"
"An Introduction to AI and Deep Learning""An Introduction to AI and Deep Learning"
"An Introduction to AI and Deep Learning"

This fast-paced session provides a brief history of AI, followed by AI-related topics, such as Machine Learning, Deep Learning and Reinforcement Learning, and the most popular frameworks for Machine Learning. You will learn about some of the successes of AI, and also some of the significant challenges in AI. No specialized knowledge is required, but an avid interest is recommended to derive the maximum benefit from this session.

tensorflowsophiarobots
React Native Installation
• iOS apps: make sure you’ve installed Xcode
• Android apps: install Java/Android/NDK:
set JAVA_HOME, ANDROID_HOME, and NDK_HOME
• Now install react-native:
[sudo] npm install –g react-native
• Create an application:
react-native new FirstApp
Start an application: react-native run-android
More Stuff About React Native
• Top-level element in render() must be a <View> element
• You can create custom native components (Android&iOS)
• Supports Flux/Redux/Relay/GraphQL
• React Native with Redux:
https://github.com/ReactConvention/react-native-redux-
starter-kit
React Native IDEs/Toolkits
IDES: Deco (open source) and XDE (from Exponent)
Very good “Starter kits” (with lots of components):
ignite: https://infinite.red/ignite
nativebase: https://github.com/GeekyAnts/NativeBase
react-native ble: https://github.com/Polidea/react-native-
ble-plx
react-native-bg-geo:
https://github.com/transistorsoft/react-native-background-
geolocation
React Native IDEs/Toolkits
reactpack: https://github.com/olahol/reactpack
heatpack: https://github.com/olahol/reactpack
create-react-app: https://github.com/facebookincubator/
fb testing tools:
https://facebook.github.io/react/docs/test-utils.html
enzyme:
https://medium.com/airbnb-engineering/enzyme-javascript-
testing-utilities-for-react-a417e5e5090f

Recommended for you

H2 o berkeleydltf
H2 o berkeleydltfH2 o berkeleydltf
H2 o berkeleydltf

A fast-paced introduction to Deep Learning concepts, such as activation functions, cost functions, back propagation, and then a quick dive into CNNs, followed by a Keras code sample for defining a CNN. Basic knowledge of vectors, matrices, and derivatives is helpful in order to derive the maximum benefit from this session. Then we'll see a short introduction to TensorFlow 1.x and some insights into TF 2 that will be released some time this year.

max poolinglinear regressionsigmoid
Introduction to Deep Learning, Keras, and Tensorflow
Introduction to Deep Learning, Keras, and TensorflowIntroduction to Deep Learning, Keras, and Tensorflow
Introduction to Deep Learning, Keras, and Tensorflow

A fast-paced introduction to Deep Learning concepts, such as activation functions, cost functions, back propagation, and then a quick dive into CNNs. Basic knowledge of vectors, matrices, and derivatives is helpful in order to derive the maximum benefit from this session. Then we'll see how to create a Convolutional Neural Network in Keras, followed by a quick introduction to TensorFlow and TensorBoard.

metiscnnmax pooling
Introduction to Deep Learning for Non-Programmers
Introduction to Deep Learning for Non-ProgrammersIntroduction to Deep Learning for Non-Programmers
Introduction to Deep Learning for Non-Programmers

This session provides a brief history of AI, followed by AI-related topics, such as robots in AI, Machine Learning and Deep Learning, use cases for AI, some of the successes of AI, and also some of the significant challenges in AI. You will also learn about AI and mobile devices and the ethics of AI. An avid interest is recommended to derive the maximum benefit from this session.

ethicssophiaturing
Some Useful Tools/IDEs
• Select an IDE:
+WebStorm 10: free 30-day trial ($49/year)
+Visual Studio Code (free)
+ Atom (free) with atom-TypeScript extension
• Command Line Tools:
+ npm, npmjs, gulp, grunt (older), broccoli,
+ webpack, browserify (older), jspm+systemjs
https://github.com/addyosmani/es6-tools
Useful Technologies to Learn
• Main features of ES6 (and methods in ECMA5)
• Sass/Bootstrap 4 (previously: less)
• https://react-bootstrap.github.io/
• D3.js for Data Visualization
• React Native (=ReactJS for Native Mobile)
• https://egghead.io/react-redux-cheatsheets
Recent/Upcoming Books and Training
1) HTML5 Canvas and CSS3 Graphics (2013)
2) jQuery, CSS3, and HTML5 for Mobile (2013)
3) HTML5 Pocket Primer (2013)
4) jQuery Pocket Primer (2013)
5) HTML5 Mobile Pocket Primer (2014)
6) D3 Pocket Primer (2015)
7) Python Pocket Primer (2015)
8) SVG Pocket Primer (2016)
9) CSS3 Pocket Primer (2016)
10) Angular 2 Pocket Primer (2017)

More Related Content

What's hot

Build web apps with react js
Build web apps with react jsBuild web apps with react js
Build web apps with react js
dhanushkacnd
 
An introduction to React.js
An introduction to React.jsAn introduction to React.js
An introduction to React.js
Emanuele DelBono
 
Reactjs
Reactjs Reactjs
Reactjs
Neha Sharma
 
Basics of React Hooks.pptx.pdf
Basics of React Hooks.pptx.pdfBasics of React Hooks.pptx.pdf
Basics of React Hooks.pptx.pdf
Knoldus Inc.
 
Introduction to React JS for beginners
Introduction to React JS for beginners Introduction to React JS for beginners
Introduction to React JS for beginners
Varun Raj
 
reactJS
reactJSreactJS
reactJS
Syam Santhosh
 
Reactjs
ReactjsReactjs
Introduction to react_js
Introduction to react_jsIntroduction to react_js
Introduction to react_js
MicroPyramid .
 
React JS
React JSReact JS
Introduction to React JS
Introduction to React JSIntroduction to React JS
Introduction to React JS
Bethmi Gunasekara
 
Angular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP ServicesAngular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP Services
WebStackAcademy
 
React and redux
React and reduxReact and redux
React and redux
Mystic Coders, LLC
 
Intro to React
Intro to ReactIntro to React
Intro to React
Justin Reock
 
Introduction to ReactJS
Introduction to ReactJSIntroduction to ReactJS
Introduction to ReactJS
Knoldus Inc.
 
learn what React JS is & why we should use React JS .
learn what React JS is & why we should use React JS .learn what React JS is & why we should use React JS .
learn what React JS is & why we should use React JS .
paradisetechsoftsolutions
 
React js programming concept
React js programming conceptReact js programming concept
React js programming concept
Tariqul islam
 
Introduction to Redux
Introduction to ReduxIntroduction to Redux
Introduction to Redux
Ignacio Martín
 
Intro to React
Intro to ReactIntro to React
Intro to React
Eric Westfall
 
React workshop
React workshopReact workshop
React workshop
Imran Sayed
 
React js
React jsReact js
React js
Rajesh Kolla
 

What's hot (20)

Build web apps with react js
Build web apps with react jsBuild web apps with react js
Build web apps with react js
 
An introduction to React.js
An introduction to React.jsAn introduction to React.js
An introduction to React.js
 
Reactjs
Reactjs Reactjs
Reactjs
 
Basics of React Hooks.pptx.pdf
Basics of React Hooks.pptx.pdfBasics of React Hooks.pptx.pdf
Basics of React Hooks.pptx.pdf
 
Introduction to React JS for beginners
Introduction to React JS for beginners Introduction to React JS for beginners
Introduction to React JS for beginners
 
reactJS
reactJSreactJS
reactJS
 
Reactjs
ReactjsReactjs
Reactjs
 
Introduction to react_js
Introduction to react_jsIntroduction to react_js
Introduction to react_js
 
React JS
React JSReact JS
React JS
 
Introduction to React JS
Introduction to React JSIntroduction to React JS
Introduction to React JS
 
Angular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP ServicesAngular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP Services
 
React and redux
React and reduxReact and redux
React and redux
 
Intro to React
Intro to ReactIntro to React
Intro to React
 
Introduction to ReactJS
Introduction to ReactJSIntroduction to ReactJS
Introduction to ReactJS
 
learn what React JS is & why we should use React JS .
learn what React JS is & why we should use React JS .learn what React JS is & why we should use React JS .
learn what React JS is & why we should use React JS .
 
React js programming concept
React js programming conceptReact js programming concept
React js programming concept
 
Introduction to Redux
Introduction to ReduxIntroduction to Redux
Introduction to Redux
 
Intro to React
Intro to ReactIntro to React
Intro to React
 
React workshop
React workshopReact workshop
React workshop
 
React js
React jsReact js
React js
 

Viewers also liked

ReactJs presentation
ReactJs presentationReactJs presentation
ReactJs presentation
nishasowdri
 
Express js clean-controller
Express js clean-controllerExpress js clean-controller
Express js clean-controller
Asia Tyshchenko
 
Intro to ReactJS
Intro to ReactJSIntro to ReactJS
Intro to ReactJS
Harvard Web Working Group
 
Express JS
Express JSExpress JS
Express JS
Alok Guha
 
Introduction to React
Introduction to ReactIntroduction to React
Introduction to React
Rob Quick
 
React + Redux for Web Developers
React + Redux for Web DevelopersReact + Redux for Web Developers
React + Redux for Web Developers
Jamal Sinclair O'Garro
 
Architecting large Node.js applications
Architecting large Node.js applicationsArchitecting large Node.js applications
Architecting large Node.js applications
Sergi Mansilla
 
Rethinking Best Practices
Rethinking Best PracticesRethinking Best Practices
Rethinking Best Practices
floydophone
 
React JS and why it's awesome
React JS and why it's awesomeReact JS and why it's awesome
React JS and why it's awesome
Andrew Hull
 
Express JS
Express JSExpress JS
Express JS
Designveloper
 
Express js
Express jsExpress js
Express js
Manav Prasad
 

Viewers also liked (11)

ReactJs presentation
ReactJs presentationReactJs presentation
ReactJs presentation
 
Express js clean-controller
Express js clean-controllerExpress js clean-controller
Express js clean-controller
 
Intro to ReactJS
Intro to ReactJSIntro to ReactJS
Intro to ReactJS
 
Express JS
Express JSExpress JS
Express JS
 
Introduction to React
Introduction to ReactIntroduction to React
Introduction to React
 
React + Redux for Web Developers
React + Redux for Web DevelopersReact + Redux for Web Developers
React + Redux for Web Developers
 
Architecting large Node.js applications
Architecting large Node.js applicationsArchitecting large Node.js applications
Architecting large Node.js applications
 
Rethinking Best Practices
Rethinking Best PracticesRethinking Best Practices
Rethinking Best Practices
 
React JS and why it's awesome
React JS and why it's awesomeReact JS and why it's awesome
React JS and why it's awesome
 
Express JS
Express JSExpress JS
Express JS
 
Express js
Express jsExpress js
Express js
 

Similar to React js

ReactJS for Beginners
ReactJS for BeginnersReactJS for Beginners
ReactJS for Beginners
Oswald Campesato
 
React on Rails - RailsConf 2017 (Phoenix)
 React on Rails - RailsConf 2017 (Phoenix) React on Rails - RailsConf 2017 (Phoenix)
React on Rails - RailsConf 2017 (Phoenix)
Jo Cranford
 
Integrating React.js Into a PHP Application
Integrating React.js Into a PHP ApplicationIntegrating React.js Into a PHP Application
Integrating React.js Into a PHP Application
Andrew Rota
 
Combining Angular and React Together
Combining Angular and React TogetherCombining Angular and React Together
Combining Angular and React Together
Sebastian Pederiva
 
React - Start learning today
React - Start learning today React - Start learning today
React - Start learning today
Nitin Tyagi
 
[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation
洪 鹏发
 
Universal JavaScript
Universal JavaScriptUniversal JavaScript
Universal JavaScript
名辰 洪
 
Scala based Lift Framework
Scala based Lift FrameworkScala based Lift Framework
Scala based Lift Framework
vhazrati
 
Overview Of Lift Framework
Overview Of Lift FrameworkOverview Of Lift Framework
Overview Of Lift Framework
Xebia IT Architects
 
Overview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web FrameworkOverview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web Framework
IndicThreads
 
20171108 PDN HOL React Basics
20171108 PDN HOL React Basics20171108 PDN HOL React Basics
20171108 PDN HOL React Basics
Rich Ross
 
Understanding backbonejs
Understanding backbonejsUnderstanding backbonejs
Understanding backbonejs
Nick Lee
 
2018 05-16 Evolving Technologies: React, Babel & Webpack
2018 05-16 Evolving Technologies: React, Babel & Webpack2018 05-16 Evolving Technologies: React, Babel & Webpack
2018 05-16 Evolving Technologies: React, Babel & Webpack
Codifly
 
Building Universal Web Apps with React ForwardJS 2017
Building Universal Web Apps with React ForwardJS 2017Building Universal Web Apps with React ForwardJS 2017
Building Universal Web Apps with React ForwardJS 2017
Elyse Kolker Gordon
 
ReactJS
ReactJSReactJS
React.js: You deserve to know about it
React.js: You deserve to know about itReact.js: You deserve to know about it
React.js: You deserve to know about it
Anderson Aguiar
 
Building complex User Interfaces with Sitecore and React
Building complex User Interfaces with Sitecore and ReactBuilding complex User Interfaces with Sitecore and React
Building complex User Interfaces with Sitecore and React
Jonne Kats
 
ReactJS.ppt
ReactJS.pptReactJS.ppt
Rails is not just Ruby
Rails is not just RubyRails is not just Ruby
Rails is not just Ruby
Marco Otte-Witte
 
Adding a modern twist to legacy web applications
Adding a modern twist to legacy web applicationsAdding a modern twist to legacy web applications
Adding a modern twist to legacy web applications
Jeff Durta
 

Similar to React js (20)

ReactJS for Beginners
ReactJS for BeginnersReactJS for Beginners
ReactJS for Beginners
 
React on Rails - RailsConf 2017 (Phoenix)
 React on Rails - RailsConf 2017 (Phoenix) React on Rails - RailsConf 2017 (Phoenix)
React on Rails - RailsConf 2017 (Phoenix)
 
Integrating React.js Into a PHP Application
Integrating React.js Into a PHP ApplicationIntegrating React.js Into a PHP Application
Integrating React.js Into a PHP Application
 
Combining Angular and React Together
Combining Angular and React TogetherCombining Angular and React Together
Combining Angular and React Together
 
React - Start learning today
React - Start learning today React - Start learning today
React - Start learning today
 
[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation
 
Universal JavaScript
Universal JavaScriptUniversal JavaScript
Universal JavaScript
 
Scala based Lift Framework
Scala based Lift FrameworkScala based Lift Framework
Scala based Lift Framework
 
Overview Of Lift Framework
Overview Of Lift FrameworkOverview Of Lift Framework
Overview Of Lift Framework
 
Overview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web FrameworkOverview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web Framework
 
20171108 PDN HOL React Basics
20171108 PDN HOL React Basics20171108 PDN HOL React Basics
20171108 PDN HOL React Basics
 
Understanding backbonejs
Understanding backbonejsUnderstanding backbonejs
Understanding backbonejs
 
2018 05-16 Evolving Technologies: React, Babel & Webpack
2018 05-16 Evolving Technologies: React, Babel & Webpack2018 05-16 Evolving Technologies: React, Babel & Webpack
2018 05-16 Evolving Technologies: React, Babel & Webpack
 
Building Universal Web Apps with React ForwardJS 2017
Building Universal Web Apps with React ForwardJS 2017Building Universal Web Apps with React ForwardJS 2017
Building Universal Web Apps with React ForwardJS 2017
 
ReactJS
ReactJSReactJS
ReactJS
 
React.js: You deserve to know about it
React.js: You deserve to know about itReact.js: You deserve to know about it
React.js: You deserve to know about it
 
Building complex User Interfaces with Sitecore and React
Building complex User Interfaces with Sitecore and ReactBuilding complex User Interfaces with Sitecore and React
Building complex User Interfaces with Sitecore and React
 
ReactJS.ppt
ReactJS.pptReactJS.ppt
ReactJS.ppt
 
Rails is not just Ruby
Rails is not just RubyRails is not just Ruby
Rails is not just Ruby
 
Adding a modern twist to legacy web applications
Adding a modern twist to legacy web applicationsAdding a modern twist to legacy web applications
Adding a modern twist to legacy web applications
 

More from Oswald Campesato

Working with tf.data (TF 2)
Working with tf.data (TF 2)Working with tf.data (TF 2)
Working with tf.data (TF 2)
Oswald Campesato
 
Introduction to TensorFlow 2 and Keras
Introduction to TensorFlow 2 and KerasIntroduction to TensorFlow 2 and Keras
Introduction to TensorFlow 2 and Keras
Oswald Campesato
 
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep Learning
Oswald Campesato
 
Introduction to TensorFlow 2
Introduction to TensorFlow 2Introduction to TensorFlow 2
Introduction to TensorFlow 2
Oswald Campesato
 
Introduction to TensorFlow 2
Introduction to TensorFlow 2Introduction to TensorFlow 2
Introduction to TensorFlow 2
Oswald Campesato
 
"An Introduction to AI and Deep Learning"
"An Introduction to AI and Deep Learning""An Introduction to AI and Deep Learning"
"An Introduction to AI and Deep Learning"
Oswald Campesato
 
H2 o berkeleydltf
H2 o berkeleydltfH2 o berkeleydltf
H2 o berkeleydltf
Oswald Campesato
 
Introduction to Deep Learning, Keras, and Tensorflow
Introduction to Deep Learning, Keras, and TensorflowIntroduction to Deep Learning, Keras, and Tensorflow
Introduction to Deep Learning, Keras, and Tensorflow
Oswald Campesato
 
Introduction to Deep Learning for Non-Programmers
Introduction to Deep Learning for Non-ProgrammersIntroduction to Deep Learning for Non-Programmers
Introduction to Deep Learning for Non-Programmers
Oswald Campesato
 
TensorFlow in Your Browser
TensorFlow in Your BrowserTensorFlow in Your Browser
TensorFlow in Your Browser
Oswald Campesato
 
Deep Learning in Your Browser
Deep Learning in Your BrowserDeep Learning in Your Browser
Deep Learning in Your Browser
Oswald Campesato
 
Deep Learning and TensorFlow
Deep Learning and TensorFlowDeep Learning and TensorFlow
Deep Learning and TensorFlow
Oswald Campesato
 
Introduction to Deep Learning and TensorFlow
Introduction to Deep Learning and TensorFlowIntroduction to Deep Learning and TensorFlow
Introduction to Deep Learning and TensorFlow
Oswald Campesato
 
Intro to Deep Learning, TensorFlow, and tensorflow.js
Intro to Deep Learning, TensorFlow, and tensorflow.jsIntro to Deep Learning, TensorFlow, and tensorflow.js
Intro to Deep Learning, TensorFlow, and tensorflow.js
Oswald Campesato
 
Deep Learning and TensorFlow
Deep Learning and TensorFlowDeep Learning and TensorFlow
Deep Learning and TensorFlow
Oswald Campesato
 
Introduction to Deep Learning and Tensorflow
Introduction to Deep Learning and TensorflowIntroduction to Deep Learning and Tensorflow
Introduction to Deep Learning and Tensorflow
Oswald Campesato
 
Deep Learning, Scala, and Spark
Deep Learning, Scala, and SparkDeep Learning, Scala, and Spark
Deep Learning, Scala, and Spark
Oswald Campesato
 
Deep Learning in your Browser: powered by WebGL
Deep Learning in your Browser: powered by WebGLDeep Learning in your Browser: powered by WebGL
Deep Learning in your Browser: powered by WebGL
Oswald Campesato
 
Deep Learning, Keras, and TensorFlow
Deep Learning, Keras, and TensorFlowDeep Learning, Keras, and TensorFlow
Deep Learning, Keras, and TensorFlow
Oswald Campesato
 
C++ and Deep Learning
C++ and Deep LearningC++ and Deep Learning
C++ and Deep Learning
Oswald Campesato
 

More from Oswald Campesato (20)

Working with tf.data (TF 2)
Working with tf.data (TF 2)Working with tf.data (TF 2)
Working with tf.data (TF 2)
 
Introduction to TensorFlow 2 and Keras
Introduction to TensorFlow 2 and KerasIntroduction to TensorFlow 2 and Keras
Introduction to TensorFlow 2 and Keras
 
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep Learning
 
Introduction to TensorFlow 2
Introduction to TensorFlow 2Introduction to TensorFlow 2
Introduction to TensorFlow 2
 
Introduction to TensorFlow 2
Introduction to TensorFlow 2Introduction to TensorFlow 2
Introduction to TensorFlow 2
 
"An Introduction to AI and Deep Learning"
"An Introduction to AI and Deep Learning""An Introduction to AI and Deep Learning"
"An Introduction to AI and Deep Learning"
 
H2 o berkeleydltf
H2 o berkeleydltfH2 o berkeleydltf
H2 o berkeleydltf
 
Introduction to Deep Learning, Keras, and Tensorflow
Introduction to Deep Learning, Keras, and TensorflowIntroduction to Deep Learning, Keras, and Tensorflow
Introduction to Deep Learning, Keras, and Tensorflow
 
Introduction to Deep Learning for Non-Programmers
Introduction to Deep Learning for Non-ProgrammersIntroduction to Deep Learning for Non-Programmers
Introduction to Deep Learning for Non-Programmers
 
TensorFlow in Your Browser
TensorFlow in Your BrowserTensorFlow in Your Browser
TensorFlow in Your Browser
 
Deep Learning in Your Browser
Deep Learning in Your BrowserDeep Learning in Your Browser
Deep Learning in Your Browser
 
Deep Learning and TensorFlow
Deep Learning and TensorFlowDeep Learning and TensorFlow
Deep Learning and TensorFlow
 
Introduction to Deep Learning and TensorFlow
Introduction to Deep Learning and TensorFlowIntroduction to Deep Learning and TensorFlow
Introduction to Deep Learning and TensorFlow
 
Intro to Deep Learning, TensorFlow, and tensorflow.js
Intro to Deep Learning, TensorFlow, and tensorflow.jsIntro to Deep Learning, TensorFlow, and tensorflow.js
Intro to Deep Learning, TensorFlow, and tensorflow.js
 
Deep Learning and TensorFlow
Deep Learning and TensorFlowDeep Learning and TensorFlow
Deep Learning and TensorFlow
 
Introduction to Deep Learning and Tensorflow
Introduction to Deep Learning and TensorflowIntroduction to Deep Learning and Tensorflow
Introduction to Deep Learning and Tensorflow
 
Deep Learning, Scala, and Spark
Deep Learning, Scala, and SparkDeep Learning, Scala, and Spark
Deep Learning, Scala, and Spark
 
Deep Learning in your Browser: powered by WebGL
Deep Learning in your Browser: powered by WebGLDeep Learning in your Browser: powered by WebGL
Deep Learning in your Browser: powered by WebGL
 
Deep Learning, Keras, and TensorFlow
Deep Learning, Keras, and TensorFlowDeep Learning, Keras, and TensorFlow
Deep Learning, Keras, and TensorFlow
 
C++ and Deep Learning
C++ and Deep LearningC++ and Deep Learning
C++ and Deep Learning
 

Recently uploaded

Google ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learningGoogle ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learning
VishrutGoyani1
 
BITCOIN HEIST RANSOMEWARE ATTACK PREDICTION
BITCOIN HEIST RANSOMEWARE ATTACK PREDICTIONBITCOIN HEIST RANSOMEWARE ATTACK PREDICTION
BITCOIN HEIST RANSOMEWARE ATTACK PREDICTION
ssuser2b426d1
 
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
ThousandEyes
 
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple StepsSeamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Estuary Flow
 
Top 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your WebsiteTop 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your Website
e-Definers Technology
 
一比一原版英国牛津大学毕业证(oxon毕业证书)如何办理
一比一原版英国牛津大学毕业证(oxon毕业证书)如何办理一比一原版英国牛津大学毕业证(oxon毕业证书)如何办理
一比一原版英国牛津大学毕业证(oxon毕业证书)如何办理
avufu
 
Splunk_Remote_Work_Insights_Overview.pptx
Splunk_Remote_Work_Insights_Overview.pptxSplunk_Remote_Work_Insights_Overview.pptx
Splunk_Remote_Work_Insights_Overview.pptx
sudsdeep
 
MVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptxMVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptx
Mitchell Marsh
 
Migrate your Infrastructure to the AWS Cloud
Migrate your Infrastructure to the AWS CloudMigrate your Infrastructure to the AWS Cloud
Migrate your Infrastructure to the AWS Cloud
Ortus Solutions, Corp
 
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
Hironori Washizaki
 
NYC 26-Jun-2024 Combined Presentations.pdf
NYC 26-Jun-2024 Combined Presentations.pdfNYC 26-Jun-2024 Combined Presentations.pdf
NYC 26-Jun-2024 Combined Presentations.pdf
AUGNYC
 
How we built TryBoxLang in under 48 hours
How we built TryBoxLang in under 48 hoursHow we built TryBoxLang in under 48 hours
How we built TryBoxLang in under 48 hours
Ortus Solutions, Corp
 
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdfAWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
karim wahed
 
What is OCR Technology and How to Extract Text from Any Image for Free
What is OCR Technology and How to Extract Text from Any Image for FreeWhat is OCR Technology and How to Extract Text from Any Image for Free
What is OCR Technology and How to Extract Text from Any Image for Free
TwisterTools
 
Overview of ERP - Mechlin Technologies.pptx
Overview of ERP - Mechlin Technologies.pptxOverview of ERP - Mechlin Technologies.pptx
Overview of ERP - Mechlin Technologies.pptx
Mitchell Marsh
 
Development of Chatbot Using AI\ML Technologies
Development of Chatbot Using AI\ML TechnologiesDevelopment of Chatbot Using AI\ML Technologies
Development of Chatbot Using AI\ML Technologies
MaisnamLuwangPibarel
 
dachnug51 - All you ever wanted to know about domino licensing.pdf
dachnug51 - All you ever wanted to know about domino licensing.pdfdachnug51 - All you ever wanted to know about domino licensing.pdf
dachnug51 - All you ever wanted to know about domino licensing.pdf
DNUG e.V.
 
introduction of Ansys software and basic and advance knowledge of modelling s...
introduction of Ansys software and basic and advance knowledge of modelling s...introduction of Ansys software and basic and advance knowledge of modelling s...
introduction of Ansys software and basic and advance knowledge of modelling s...
sachin chaurasia
 
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptxWired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
SimonedeGijt
 
Cultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational TransformationCultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational Transformation
Mindfire Solution
 

Recently uploaded (20)

Google ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learningGoogle ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learning
 
BITCOIN HEIST RANSOMEWARE ATTACK PREDICTION
BITCOIN HEIST RANSOMEWARE ATTACK PREDICTIONBITCOIN HEIST RANSOMEWARE ATTACK PREDICTION
BITCOIN HEIST RANSOMEWARE ATTACK PREDICTION
 
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
 
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple StepsSeamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
 
Top 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your WebsiteTop 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your Website
 
一比一原版英国牛津大学毕业证(oxon毕业证书)如何办理
一比一原版英国牛津大学毕业证(oxon毕业证书)如何办理一比一原版英国牛津大学毕业证(oxon毕业证书)如何办理
一比一原版英国牛津大学毕业证(oxon毕业证书)如何办理
 
Splunk_Remote_Work_Insights_Overview.pptx
Splunk_Remote_Work_Insights_Overview.pptxSplunk_Remote_Work_Insights_Overview.pptx
Splunk_Remote_Work_Insights_Overview.pptx
 
MVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptxMVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptx
 
Migrate your Infrastructure to the AWS Cloud
Migrate your Infrastructure to the AWS CloudMigrate your Infrastructure to the AWS Cloud
Migrate your Infrastructure to the AWS Cloud
 
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
 
NYC 26-Jun-2024 Combined Presentations.pdf
NYC 26-Jun-2024 Combined Presentations.pdfNYC 26-Jun-2024 Combined Presentations.pdf
NYC 26-Jun-2024 Combined Presentations.pdf
 
How we built TryBoxLang in under 48 hours
How we built TryBoxLang in under 48 hoursHow we built TryBoxLang in under 48 hours
How we built TryBoxLang in under 48 hours
 
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdfAWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
 
What is OCR Technology and How to Extract Text from Any Image for Free
What is OCR Technology and How to Extract Text from Any Image for FreeWhat is OCR Technology and How to Extract Text from Any Image for Free
What is OCR Technology and How to Extract Text from Any Image for Free
 
Overview of ERP - Mechlin Technologies.pptx
Overview of ERP - Mechlin Technologies.pptxOverview of ERP - Mechlin Technologies.pptx
Overview of ERP - Mechlin Technologies.pptx
 
Development of Chatbot Using AI\ML Technologies
Development of Chatbot Using AI\ML TechnologiesDevelopment of Chatbot Using AI\ML Technologies
Development of Chatbot Using AI\ML Technologies
 
dachnug51 - All you ever wanted to know about domino licensing.pdf
dachnug51 - All you ever wanted to know about domino licensing.pdfdachnug51 - All you ever wanted to know about domino licensing.pdf
dachnug51 - All you ever wanted to know about domino licensing.pdf
 
introduction of Ansys software and basic and advance knowledge of modelling s...
introduction of Ansys software and basic and advance knowledge of modelling s...introduction of Ansys software and basic and advance knowledge of modelling s...
introduction of Ansys software and basic and advance knowledge of modelling s...
 
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptxWired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
 
Cultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational TransformationCultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational Transformation
 

React js

  • 1. ReactJS for Beginners Oswald Campesato Consultant/Training: www.iquarkt.com ocampesato@yahoo.com
  • 2. What is ReactJS? • Library for Web Apps (from Facebook) • Provides the “V” in “MVC” • component-based architecture • ES6/JSX (HTML embedded in JavaScript) • 400 components available: https://github.com/brillout/awesome-react-components
  • 3. Advantages of ReactJS • highly efficient • easier to write Javascript via JSX • out-of-the-box developer tools • very good for SEO • easy to write UI test cases • http://www.pro-tekconsulting.com/blog/advantages- disadvantages-of-react-js/
  • 4. Disadvantages of ReactJS • ReactJS is only a view layer • ReactJS into an MVC framework requires configuration • learning curve for beginners who are new to web development • Scaffolding is usually needed for transpilation
  • 5. What are Transpilers? • They convert code from one language to another • Babel (formerly 6to5): +converts ES6 (some ES7) to ECMA5 + appears to be the de facto standard • Traceur (Google): + converts ES6 to ECMA5 + used by Angular 2 NOTE: JSX is transpiled by ECMA5
  • 6. Typical Set-up Tools • Node and npm (installing JS dependencies) • Babel (in HTML Web pages) • Webpack (highly recommended) • NB: you can use Gulp instead of WebPack • https://www.eventbrite.com/e/react-js-foundation- hands-on-workshop-tickets-27743432353
  • 7. React App (MyWebPage.html) <!– The core React library --> <script src="https://fb.me/react-15.0.0-rc.2.js"></script> <!– The ReactDOM Library --> <script src="https://fb.me/react-dom-15.0.0-rc.2.js"> </script> <!– For transpiling ES6 code into ES5 code --> <script src="https://cdnjs.cloudflare.com/ajax/libs/babel- core/5.8.23/browser.min.js"> </script>
  • 8. ReactJS “Hello World” (Old Style) • <body> • <div id="hello"></div> • <script type="text/babel"> • var Hello = React.createClass({ // deprecated in 0.14.3 • render: function () { • return ( <h1>Hello World</h1> ); • } • }); • ReactDOM.render(<Hello/>, • document.getElementById('hello')); • </script> • </body>
  • 9. ReactJS “Hello World” (ES6 Class) • <div id="hello"></div> • <script type="text/babel"> • class Hello extends React.Component { // recommended • constructor () { • super(); ��� } • render() { • return <div>Hello World</div> • } • } • ReactDOM.render(<Hello/>, • document.getElementById('hello')); • </script>
  • 10. The render() Method in ReactJS • Contains one top-level “root” element • a <div> is often the top-level element • render() is invoked when a state change occurs • NB: a <View> is the top-level element in React Native
  • 11. Using “Props” in ReactJS <div id="hello"></div> • <script type="text/babel"> • var Hello = React.createClass({ // deprecated in 0.14.3 • render: function () { • var name = this.props.name; • • return ( <h2>Hello {name}</h2> ); • } • }); • ReactDOM.render(<Hello name="Dave"/>, • document.getElementById('hello')); • </script>
  • 12. Property Types in ReactJS propTypes contains properties and their types: propTypes: { width: React.PropTypes.number, height: React.PropTypes.number //other1: React.PropTypes.string, //other2: React.PropTypes.array.isRequired, },
  • 13. Property Types and Validation How to throw an error if any property is negative: propTypes: { width: function(props, propName, componentName) { if(props[propName] < 0) { throw new Error(propName+" cannot be negative"); } } },
  • 14. The “getDefaultProps()” Method <div id="container"></div> <script type="text/babel"> var Hello = React.createClass({ getDefaultProps: function () { return { y : 456 } }, render: function () { return ( <h2>x = {this.props.x} y = {this.props.y} </h2> ); } }); ReactDOM.render(<Hello x={123}/>, document.getElementById('container')); </script>
  • 15. Handling Mouse Events class MouseOverButton extends React.Component { // constructor … render() { console.log("rendering button..."); return ( <button onClick={this.update}>ClickMe</button> ); } update() { console.log("inside update"); } }
  • 16. SVG in ReactJS (part 1) <div id="mysvg"></div> <script type="text/babel"> class MySVG extends React.Component { constructor () { super(); } // more code in the next slide…
  • 17. SVG in ReactJS (part 2) render() { return ( <svg width="600" height="200"> <g transform="translate(50, 20)"> <rect x="10" y="10" width="160" height="80" fill="red"/> </g> </svg> ); } } ReactDOM.render(<MySVG />, document.getElementById("mysvg")); </script>
  • 18. Conditional Execution (1) <div id="hello"></div> <script type="text/babel"> class Hello1 extends React.Component { render () { return ( <h2>Hello World1</h2> ); } }
  • 19. Conditional Execution (2) class Hello2 extends React.Component { render() { return ( <h2>Hello World2</h2> ); } }
  • 20. Conditional Execution (3) ReactDOM.render( <div> { Math.random() > 0.5 ? <Hello1 /> : <Hello2 />} </div>, document.getElementById('hello') );
  • 21. Working with Lists (1a) class UserList extends React.Component { render() { return ( <ul> <li>Sara</li> <li>Dave</li> <li>John</li> <li>Sally</li> </ul> ) } } ReactDOM.render( <UserList/>, document.getElementById('container') )
  • 22. Working with Lists (2a) class UserList extends React.Component { render() { return ( <ul> <ListOptions value="Sara" /> <ListOptions value="Dave" /> <ListOptions value="John" /> <ListOptions value="Sally" /> </ul> ) } }
  • 23. Working with Lists (2b) class ListOptions extends React.Component { render() { return ( <li>{this.props.value}</li> ) } } ReactDOM.render( <UserList/>, document.getElementById('container') )
  • 24. Sometimes we Need JavaScript Functions • Use map() to apply a function to an array of items: a) Returns a new array with ‘transformed’ elements b) You specify the function • Use filter() to return a subarray of items: involves conditional logic (defined by you) • Other functions: merge(), flatten(), reduce(), … • NB: you can combine them via method chaining
  • 25. The ‘map’ and ‘filter’ Functions var items = [1,2,3,4,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,19,20]; var even = [], double = []; even = items.filter(function(item) { return item % 2 == 0; }); console.log("even = "+even); double = items.map(function(item) { return item * 2; }); console.log("double = "+double);
  • 26. The ‘map’ and ‘filter’ Functions var items = [1,2,3,4,5,6,7,8,9,10]; var result1 = items.filter(function(item) { return item % 4 == 0; }) .map(function(item) { return item * 2; }); var result2 = items.map(function(item) { return item * 2; }) .filter(function(item) { return item % 4 == 0; }) console.log("result1 = "+result1); console.log("result2 = "+result2);
  • 27. Working with Lists (3a) class UserList extends React.Component { constructor() { super(); this.userList = [ 'Sara', 'Dave', 'John', 'Sally’]; } render() { return ( <div> <ListOptions2 names={this.userList} /> </div> ) } }
  • 28. Working with Lists (1) class ListOptions2 extends React.Component { render() { return ( <ul> {this.props.names.map(function(name) { return ( <li key={name}>{name}</li> ) })} </ul> ) } }
  • 29. Echoing User Input in ReactJS class Echo extends React.Component { constructor() { super(); } render() { return ( <input type="text" onChange={this.handleChange} /> ); } handleChange(e) { console.log(e.target.value); } } ReactDOM.render(<Echo />, document.getElementById("content"));
  • 30. ReactJS: Lifecycle methods Before/during/after component ‘mounting’: componentWillMount: function() { this.doSomething1(); }, componentShouldMount: function() { this.doSomething2(); }, componentShouldUpdate: function() { this.doSomething3(); }, componentDidMount: function() { this.doSomething4(); }, componentWillUnmount: function() { this.doSomething5(); },
  • 31. ReactJS: Lifecycle methods Consider the following scenario: A Web page contains GSAP code to animate SVG elements The SVG elements are dynamically generated There is no static SVG content Q: where do you place the GSAP code? A: in the componentDidMount() method
  • 32. Working with State (1a) class MyInput extends React.Component { constructor() { super(); } componentWillMount() { this.state = {value: 'Hello There!'}; } handleChange(event) { this.setState({value: event.target.value}); console.log("value: "+this.state.value); }
  • 33. Working with State (1b) render() { var value = this.state.value; return <input type="text" value={value} onChange={this.handleChange} />; } } ReactDOM.render( <MyInput />, document.getElementById('myinput') );
  • 34. Update List of Users (1) class UserList extends React.Component { constructor() { super(); this.userList = ['Sara', 'Dave', 'John', 'Sally’ ]; this.addUser = this.addUser.bind(this); } componentDidMount() { this.setState({user: ""}); } addUser() { var user = this.refs.user.value; //console.log("user = "+user); this.setState({user: user}); this.userList.push(user); }
  • 35. Update List of Users (2) render() { return ( <div> <ul> <ListOptions options={this.userList} /> </ul> <input ref="user" type="text" /> <button onClick={this.addUser}>Add User</button> </div> ) } }
  • 36. Update List of Users (3) class ListOptions extends React.Component { render() { return ( <ul> {this.props.options.map(function(option) { // options = userList return ( <li key={option}>{option}</li> ) })} </ul> ) } } ReactDOM.render( <ListOptions/>, document.getElementById('container’))
  • 37. Working with JSON Data Files (1a) • class UserInfo extends React.Component { • constructor() { • super(); • } • componentWillMount() { • this.state = { loading: true, error: null, data: null}; • } • • componentDidMount() { • this.props.promise.then( • value => this.setState({loading: false, data: value}), • error => this.setState({loading: false, error: error})); • }
  • 38. Working with JSON Data Files (1b) render() { • if (this.state.loading) { • return <span>Loading...</span>; • } • else if (this.state.error !== null) { • return <span>Error: {this.state.error.message}</span>; • } • else { • let empItems = this.state.data.map( emp => { • return <li key={emp.fname}>{emp.fname}</li> • }) • return ( • <div> • <ul>{empItems}</ul> • </div> • ) }}
  • 39. Retrieving Github User Data (1) • class UserInfo extends React.Component { • constructor() { • super(); • } • componentWillMount() { • this.state = { loading: true, error: null, data: null}; • } • • componentDidMount() { • this.props.promise.then( • value => this.setState({loading: false, data: value}), • error => this.setState({loading: false, error: error})); • }
  • 40. Retrieving Github User Data (2) render() { if (this.state.loading) { return <span>Loading...</span>; } else if (this.state.error !== null) { return <span>Error: {this.state.error.message}</span>; } else { var userInfo = this.state.data; return ( <ul> <li>Username: {userInfo.login} </li> <li>Followers: {userInfo.followers} </li> <li>Following: {userInfo.following} </li> <li>Created at: {userInfo.created_at}</li> </ul> ) }}}
  • 41. Retrieving Github User Data (3) ReactDOM.render( <UserInfo promise={$.getJSON('https://api.github.com/users/ocampesato')} />, document.getElementById("userinfo") );
  • 42. What about React Routing? • Routing: how to access different parts of an app • Static routing and Dynamic routing • http://rwhitmire.com/react-routify • ReactRouter v4 contains major changes: https://github.com/ReactTraining/react- router/blob/v4/README.md#v4-faq
  • 43. Heroku and create-react-app (1) https://github.com/facebookincubator/ a FB endorsed and supported way to build real React apps Zero configuration deployment to Heroku: https://blog.heroku.com/deploying-react-with-zero- configuration https://github.com/mars/create-react-app-buildpack#usage
  • 44. Heroku and create-react-app (2) • npm install -g create-react-app • create-react-app my-app • cd my-app • git init • heroku create -b https://github.com/mars/create-react- app-buildpack.git • git add . • git commit -m "react-create-app on Heroku" • git push heroku master • heroku open
  • 45. Higher Order Components • Define functions that take a component as an argument and then return a component • https://medium.com/javascript-inside/why-the-hipsters- recompose-everything-23ac08748198#.ojvtuun57 • Now let’s take a detour to ES6….
  • 46. What about ES6? • Arrow functions and let keyword • Block scopes • Classes and inheritance • Default parameters • Destructured assignment • Generators, Iterators, Maps, and Sets • Promises and Rest parameters • Spread operator • Template Literals
  • 47. ES6 let and Arrow Functions • let square = x => x * x; • let add = (x, y) => x + y; • let pi = () => 3.1415; • console.log(square(8)); // 64 • console.log(add(5, 9)); // 14 • console.log(pi()); // 3.1415
  • 48. ES6 Class Definition (part 1) class Rectangle { constructor(height, width) { this.height = height; this.width = width; } calcArea() { return this.height * this.width; } } • var r1 = new Rectangle(5,10); • var r2 = new Rectangle(25,15);
  • 49. ES6 Class Definition (part 2) • console.log("r1 area = "+r1.calcArea()); • console.log("r2 area = "+r2.calcArea()); • Test this code here: http://babeljs.io/repl/ • More Examples: https://developer.mozilla.org/en- US/docs/Web/JavaScript/Reference/Classes
  • 50. Browser Status for ES6 • Modern IE: https://goo.gl/56n7IL • Mozilla: https://goo.gl/iSNDf9 • Chrome: https://www.chromestatus.com/features#ES6
  • 51. Other Useful ES6 Links https://github.com/lukehoban/es6features http://kangax.github.io/compat-table/es6/ https://dev.modern.ie/platform/status/?filter=f3f0000bf&search=es6 https://developer.mozilla.org/en- US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_i n_Mozilla https://medium.com/@bojzi/overview-of-the-javascript-ecosystem- 8ec4a0b7a7be Next we’ll discuss application state….
  • 52. Application State can be Complicated • Suppose a ReactJS has many components • What if state is required in multiple components? • Where is state maintained? • resembles a C++ class hierarchy a “thick” base class allows for easy access, but some things don’t belong in the base class • One solution: store state outside the app (Redux)
  • 53. ReactJS + Flux (Facebook) • Flux is a pattern (Facebook) • unidirectional data flow • Many implementations of Flux are available • Redux is an implementation of Flux . . .
  • 54. ReactJS + Redux (Facebook) • Redux is an implementation of Flux • the most popular implementation (at least 15 others) • Mobx (simpler alternative) and Alt • “advanced state management” • Actions, Dispatcher, reducer, and Store(s) • Reductor: Redux for Android
  • 55. ReactJS + Redux (Facebook) • How Redux works: • Create a Redux store • Dispatcher passes Action and Store to Reducer • Reducer updates the Store • View is notified and updated accordingly
  • 56. Redux versus Mobx • Redux: influenced by functional programming • Mobx: influenced by OOP and Reactive Programming • More detailed comparison of Redux and Mobx: 1) http://www.robinwieruch.de/redux-mobx-confusion 2)https://medium.com/@sanketsahu/if-not-redux-then- what-fc433234f5b4#.38tus3hai 3) http://blog.bandwidth.com/using-react-js-for-front-end- development
  • 57. ReactJS + GraphQL (Facebook) • GraphQL: a server-side schema for graph-oriented data • Can “wrap” NoSQL and relational stores • GraphQL server processes data requests from clients • Data is returned to client apps • http://githubengineering.com/the-github-graphql-api/ • NB: GraphQL does not need Relay (but Relay needs GraphQL)
  • 58. GraphQL versus REST • GraphQL is a “finer-grained” alternative to REST • REST is all-or-nothing: an “entity” is returned • GraphQL returns a subset of elements of an “entity” • Falcor from Netflix: GraphQL alternative (without a schema)
  • 59. GraphQL: What it isn’t • GQL does not dictate a server language • GQL does not dictate a storage/back-end • GQL is a query language without a database
  • 60. GraphQL: What Does it Do? • It exposes a single endpoint • the endpoint parses and executes a query • The query executes over a type system • the type system is defined in the application server • the type system is available via introspection (a GQL API)
  • 61. GraphQL Server Structure GraphQL servers have three components: • 1) GraphQL “core” (JavaScript and other languages) • 2) Type Definitions (maps app code to internal system) • 3) Application code (business logic)
  • 62. GraphQL Core: Five Components • 1) Frontend lexer/parser: an AST [Relay uses parser] • 2) Type System: GraphQLObjectType (a class) • 3) Introspection: for querying types • 4) Validation: is a query valid in the app’s schema? • 5) Execution: manage query execution (via the AST)
  • 63. The GraphiQL IDE • https://github.com/skevy/graphiql- app/blob/master/README.md • https://github.com/skevy/graphiql-app/releases • OSX: brew cask install graphiql
  • 64. GraphQL Queries (Interfaces) • interface Employee { • id: String! • fname: String • lname: String • } • • type Query { • emp: Employee • }
  • 65. GraphQL Queries • GraphQL Query: • { • emp { • fname • } • } • Response data: • { • "data": [{ • "emp": { • "fname": "John" • } • }] • }
  • 66. GraphQL Queries • query EmpNameQuery { • emp { • fname • lname • } • } • The result of the preceding query is here: • { • "data": [{ • "emp": { • "fname": "John", • "lname": "Smith" • } • }] • }
  • 67. GraphQL Websites • Apollo: http://www.apollostack.com/ “consolidates” data (removes duplicates in a tree) • Reindex: https://www.reindex.io/blog/redux-and- relay • Scaphold: scaphold.io • Upcoming SF conference: http://graphqlsummit.com/
  • 68. GraphQL Websites • Apollo: http://www.apollostack.com/ “consolidates” data (removes duplicates in a tree) • Reindex: https://www.reindex.io/blog/redux-and-relay • Scaphold: https://scaphold.io/#/ • GraphiQL: https://github.com/skevy/graphiql-app • GraphQL conference: http://graphqlsummit.com/
  • 69. ReactJS + Relay (Facebook) • Relay: a “wrapper” around client-side components • Data requests from a component “go through” Relay • Relay sends data requests to a GraphQL server • Data is returned to client application • Data is displayed according to application code/logic
  • 70. MERN: Mongo/Express/ReactJS/NodeJS • http://mern.io/ • MERN starter app: • git clone https://github.com/Hashnode/mern-starter.git • cd mern-starter • npm install • npm start • MERN CLI: • [sudo] npm install -g mern-cli • mern init myApp • cd myApp • npm install • npm start
  • 71. What is React Native? (Facebook) • Facebook toolkit for cross-platform native mobile apps • https://facebook.github.io/react-native/ • You write custom JSX code for Android and iOS • Update contents of index.android.js and index.ios.js • Invoke react-native from command line • Update cycle: Mobile app is updated via “hot reloading”
  • 72. React Native Components • https://github.com/react-native-community/react-native-elements • Buttons • Icons • Social Icons / Buttons • Side Menu • Form Elements • Search Bar • ButtonGroup • Checkboxes • List Element • Linked List Element • Cross Platform Tab Bar • HTML style headings (h1, h2, etc...) • Card component • Pricing Component
  • 73. React Native Installation • iOS apps: make sure you’ve installed Xcode • Android apps: install Java/Android/NDK: set JAVA_HOME, ANDROID_HOME, and NDK_HOME • Now install react-native: [sudo] npm install –g react-native • Create an application: react-native new FirstApp Start an application: react-native run-android
  • 74. More Stuff About React Native • Top-level element in render() must be a <View> element • You can create custom native components (Android&iOS) • Supports Flux/Redux/Relay/GraphQL • React Native with Redux: https://github.com/ReactConvention/react-native-redux- starter-kit
  • 75. React Native IDEs/Toolkits IDES: Deco (open source) and XDE (from Exponent) Very good “Starter kits” (with lots of components): ignite: https://infinite.red/ignite nativebase: https://github.com/GeekyAnts/NativeBase react-native ble: https://github.com/Polidea/react-native- ble-plx react-native-bg-geo: https://github.com/transistorsoft/react-native-background- geolocation
  • 76. React Native IDEs/Toolkits reactpack: https://github.com/olahol/reactpack heatpack: https://github.com/olahol/reactpack create-react-app: https://github.com/facebookincubator/ fb testing tools: https://facebook.github.io/react/docs/test-utils.html enzyme: https://medium.com/airbnb-engineering/enzyme-javascript- testing-utilities-for-react-a417e5e5090f
  • 77. Some Useful Tools/IDEs • Select an IDE: +WebStorm 10: free 30-day trial ($49/year) +Visual Studio Code (free) + Atom (free) with atom-TypeScript extension • Command Line Tools: + npm, npmjs, gulp, grunt (older), broccoli, + webpack, browserify (older), jspm+systemjs https://github.com/addyosmani/es6-tools
  • 78. Useful Technologies to Learn • Main features of ES6 (and methods in ECMA5) • Sass/Bootstrap 4 (previously: less) • https://react-bootstrap.github.io/ • D3.js for Data Visualization • React Native (=ReactJS for Native Mobile) • https://egghead.io/react-redux-cheatsheets
  • 79. Recent/Upcoming Books and Training 1) HTML5 Canvas and CSS3 Graphics (2013) 2) jQuery, CSS3, and HTML5 for Mobile (2013) 3) HTML5 Pocket Primer (2013) 4) jQuery Pocket Primer (2013) 5) HTML5 Mobile Pocket Primer (2014) 6) D3 Pocket Primer (2015) 7) Python Pocket Primer (2015) 8) SVG Pocket Primer (2016) 9) CSS3 Pocket Primer (2016) 10) Angular 2 Pocket Primer (2017)