Giter Site home page Giter Site logo

habr-app's Introduction

React isomorphic / universal front-end application with authentication tutorial for HabraHabr

Эта ветка соответствует состоянию приложения из третьей части статьи для Хабрахабра

Состояние приложения из первой части можно найти в ветке v1

Состояние приложения из второй части можно найти в ветке v2

React Tutorial

Я написал цикл из трех статей для habrahabr, который поможет новичкам собрать стек React-приложения с нуля, добавляя шаг за шагом различные библиотеки и компоненты с полным пониманием того, что и зачем делается. К концу третьей части статьи получается сайт, который ничем не отличается от существующих крупных и успешных проектов с точки зрения архитектуры и механизмов работы с пользователями и внешними информационными системами.

Ключевые слова

  • react
  • redux
  • isomorphic / universal web-application
  • server-side rendering
  • authentication
  • omniauth
  • API
  • node.js

Установка и запуск

  1. Устанавливаем зависимости
npm instal
  1. Запускаем серверную часть
npm run nodemon
  1. Запускаем webpack-dev-server, который будет отдавать клиентские js, css и другие ресурсы
npm run webpack-devserver

Приложение будет доступно по адресу http://localhost:3001 Внимание: для корректной работы необходимо, чтобы nodemon и webpack-dev-server были запущены одновременно!

Содержание

Первая часть

  • Создаем node.js приложение
  • Добавляем express и пишем заготовку для серверной части изоморфного приложения
  • Добавляем и настраиваем babel
  • Добавляем webpack, пишем конфиг сборки клиентского JavaScript
  • Добавляем eslint и определяем требования к исходному коду
  • Добавляем react и react-dom
  • Создаем компонент "Hello World"

Вторая часть

  • Добавляем react-bootstrap и создаем общий layout приложения
  • Создаем несколько страниц
  • Добавляем react-router и настраиваем навигацию для сайта
  • Добавляем redux и учимся работать с состоянием

Третья часть

  • Добавляем redux-devtools
  • Добавляем redux-oauth и реализуем аутификацию
  • Реализуем взаимодействие с внешними источниками данных
  • Добавляем запросы к API в server-side rendering

Copyright

Yury Dymov, 2016.

habr-app's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.