Giter VIP home page Giter VIP logo

platzi-react-taller-practico's Introduction

Taller práctico react

Ejercicio realizado durante el curso Clases del Curso Práctico de React JS disponible en plataforma Platzi

El objetivo del ejercicio es tomar esta página base y aplicar arquitectura de componentes para construirla usando React.

Tips para crear proyecto desde cero

Estructura Base

  1. Carpeta específica para el proyecto

  2. Iniciar repo de git

     git init
    
  3. Iniciar proyecto de Node.js

     npm init -y
    
  4. Carpetas Base del proyecto

  • public
    • index.html
  • src
    • components
    • index.js

Instalación de elementos necesarios

React

  1. Instalación de librería

     npm install --save react react-dom
    

Babel

  1. Instalación de librerías

     npm install --save-dev @babel/core @babel/preset-env @babel/preset-react babel-loader
    
  2. Crear archivo .babelrc, el cual usualmente tiene esta base

     {
     "presets": [
    
         "@babel/preset-env",
         "@babel/preset-react"
     ],
         }
    
  3. Agregar script a package.json

      "build": "webpack --mode production",
    

Webpack

  1. Instalación

     npm install webpack webpack-cli html-webpack-plugin html-loader  --save-dev
    
  2. Añadir archivo webpack.config.js

Webpack Dev Server

  1. Instalación

      npm install --save-dev webpack-dev-server
    
  2. Agregar script en package.json

    "start": "webpack serve --mode development --env development"
    

Estilo con SASS

  1. Instalar SASS (para estilos de css) npm install --save-dev mini-css-extract-plugin css-loader node-sass sass-loader

  2. Agregar en webpack para que compile archivos CSS

     const MiniCssExtractPlugin = require('mini-css-extract-plugin');
    
     //regla
     {
     test: /\.(s*)css$/,
     use: [
         { loader: MiniCssExtractPlugin.loader },
         'css-loader',
         'sass-loader',
         ],
     },
    
     //pluging
    
    
     new MiniCssExtractPlugin({
     filename: 'assets/[name].css',
     }),
    
  3. Habilitar carpetas en proyecto para estilos.

  • src
    • assets
      • styles

EsLint

  1. Instalar paquetes necesarios

     npm install --save-dev eslint babel-eslint eslint-config-airbnb eslint-plugin-import eslint-plugin-react eslint-plugin-jsx-a11y
    
  2. Agregar archivo de configuración de eslint : .eslintrc

Gitignore

  1. Agregar archivo .gitignore con componentes necesarios a ignorar

Elemetos útiles

Fake Api

Sirve para simular una Api desde un archivo json.

  1. Instalación json-server

     sudo npm install json-server -g
    
  2. Agregar archivo json necesario para levantar la fake API

  3. Ejecución en terminal

     json-server archivoParaTuAPI.json
    

PropTypes

Los PropTypes son una propiedad de nuestros componentes que nos permiten especificar qué tipo de elementos son nuestras props: arrays, strings, números, etc.

  1. Instalación

     npm install --save prop-types
    

platzi-react-taller-practico's People

Contributors

eli-zbth avatar

Watchers

James Cloos 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.