× Thanks! We'll be in touch with more info soon.

Master React in just a week in Portugal

July 1st to July 7th, 2018.

  • abinbev
  • ASOS
  • financial times
  • blockchain
  • the trainline

I would like to receive more info and some pre-course learning resources!

We are very serious about your privacy and the safety of your information... Not convinced? Check out our privacy policy.


Need to unsubscribe? contact us at unsubscribe@reactjs.academy

Interested in a full-stack JavaScript bootcamp?

See our full-stack JavaScript bootcamp

Full-stack JS Bootcamp

The most complete curriculum on the market

On completion of the bootcamp each student will:

  • Understand the core principles and libraries of the React ecosystem: react, react-router, redux, react-redux, graphql, apollo-client
  • Be able to develop and test complex and reliable React applications: enzyme, jest
  • Comprehend the best practices for front-end JavaScript: functional programming, es6, webpack
  • Understand the best practices and patterns for building layouts: material-ui, react-bootstrap

Curriculum


Day 1, Sunday evening (optional)

  • ES6 and ESNEXT workshop
    • Understanding language updates - difference between ES6, ES7, and ESNEXT
    • Arrow Functions, Class syntax, Template strings
    • Destructuring
    • Default parameters, Rest operator, Spread operator
    • Let and Const vs Var
    • Rest + Spread properties
    • ES6 iterators and functional programming in JS
    • Modules
    • Promises
    • Generators

Day 2, Monday

  • Thinking in React
    • The Imperative to Declarative Shift
    • Everything is a component
  • What is React made up of
    • Props & State
    • One way data binding
    • Components with and without state. Classes Vs. Functions
    • Developer tools
  • Virtual DOM and JSX
    • React Components, Elements, and Instances
    • JSX and React.createElement
  • Component lifecycle
  • React Router v4
    • Declarative routing
    • Implement a master-detail web application
  • Data management
    • Presentational Components Vs. Container Components
    • Data fetching
  • Forms management in React
    • Controlled Components vs. Uncontrolled Components
  • Authentication
    • JWT

Day 3, Tuesday

  • Day 1 recap, build a React app from scratch on your own to consolidate:
    • React
    • React Router
    • Data fetching
  • Thinking in Redux. What problem is Redux solving?
  • Intro to functional programming
    • Data and behaviour
    • Data in, data out
    • Mutations
    • Pure functions
  • Redux Principles
    • Store, Reducers, Actions
    • Unique source of truth
  • React-Redux: Provider and Connect
  • Exercise:
    • Build your own version of redux and react-redux using TDD
    • Given an existing React-Redux app, you will have to build some features using action creators, reducers and connected containers
    • Configure Redux from scratch in a React app
  • Connecting Redux to the server
    • Fetching data from the server to Redux

Day 4, Wednesday

  • Testing in JavaScript
    • Implement your own test framework
    • Mocking in JavaScript using Jest
    • Best practices writing unit tests
    • Testing in Redux
  • Functional programming
    • Composing functions
    • Currying, thunks and higher-order functions
  • Advanced Redux:
    • Introducing the Redux middleware
    • Exercise, build your own Redux middleware
    • Thunks. Actions that dispatch actions
    • Exercise, implement loading indicators using thunks
  • Time travel in Redux using Redux DevTools

Day 5, Thursday

  • Server Side Rendering (SSR) with React
    • Nodejs + React + React Router
    • Universal Redux
  • Styles
    • CSS Vs. JS
    • Styled-components
    • Component libraries comparison: SemanticUI, MaterialUI, Rebass, and React-Bootstrap
  • Component libraries
    • React-Bootstrap
    • Material UI
    • Semantic UI
  • Testing React
    • Unit Testing, Integration Testing, and Shapshot Testing
    • Tooling: Enzyme & Jest
    • Testing Components, Higher-Order Components, Connected Containers
    • Code Coverage
  • Performance and Rendering Optimizations (quantified with numbers)

Day 6, Friday

  • Functional programming concepts
    • Data and behaviour
    • Data in, data out
    • Composition
  • Advanced React patterns: Reuse functionality across components
    • Higher-Order Components (HOCs)
    • Declarative composition using the Render Props (AKA function as children)
  • Advanced React patterns II: Create more reusable components
    • Compound Components, dynamically flow data between components
    • Patterns and use cases using "context"
  • GraphQL
    • Understand the fundamental differences between a REST API and a GraphQL API
    • GraphQL Queries & Mutations
    • Relay connections
  • GraphQL exercise: Integrate Apollo in a React & Redux app
    • Connect an Apollo client to a GraphQL server
    • Implement infinite scrolling in a React app using Apollo on the client-side and a Relay connection on the server-side
    • Update the state of your React app using mutations and Apollo client
  • Last day real-world app challenge. We'll implement an app in teams from scratch
    1. Create teams
    2. Discussion about architecture, features and tools
    3. Start coding

Day 7, Saturday

  • Consolidate your new skills and get inspired
    1. Mini Hackathon! - work in teams to build apps
    2. Practice extreme programming and get support from the coaches and mentors
    3. Demo

Why attend

Focus, no distractions

Focus away from distractions, accelerate your learning. One week to focus on just one thing, learning React. Like-minded people, experienced instructors, comprehensive curriculum, and an amazing place.

Learn by doing

Learn by doing, move fast and break things. We want you to code as much as possible, and make mistakes in a safe environment. You will practice everything we explain in our project-based hands-on training.

Mentorship

Our experienced instructors will do code reviews and they will give you individual feedback. Instructors will guide you to think of the best way to solve a problem.

Collaborative environment

You will work in teams and pairs. You will have to explain what you do and how, rather than just doing. Explaining is a great way to learn and consolidate new skills.

The place

Code, collaborate, learn and live all in a single, beautiful and comfortable place in Torres Vedras, Portugal

A day in our training

  • Breakfast
  • Lecture and code
  • Lunch
  • Lecture and code
  • Dinner
  • Relax, rest,... or code :)

ReactJS Academy is Europes longest running dedicated React and Redux training. Established in May 2016, we've trained over 1000 developers across the EU in our private bootcamps and public workshops.

You can read reviews of our workshops in the following Meetup groups which we organise:


play video

Listen to what our trainees say about our bootcamps

Are you a minority in tech?

We are committed to making the tech industry more accessible and diverse, please contact us directly to find out about discounts and scholarships.

hello@reactjs.academy

We use cookies to offer you a better experience and to analyze site traffic. By continuing to browse this site, you agree to this use of cookies.