• Stars
    star
    114
  • Rank 308,031 (Top 7 %)
  • Language
    JavaScript
  • Created over 6 years ago
  • Updated about 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A basic template that consists of the essential elements that are required to start building a Single Page Application using React, React Router, Redux, Bootstrap 4, Sass, and Webpack

react-redux-starter

React Starter

A basic template that consists of the essential elements that are required to start building a Single Page Application using React, React Router, Redux, Bootstrap 4, Sass, and Webpack.

Although I am calling this project a template of sorts, it is also a mini application in that it demonstrates a full verticle slice of the architecture. What this means, is that there is an example of Redux and React-Router in action. I kept the example simple by providing data via a 'Zip Code JSON file'.

The template consists of:

  • a typcial project layout structure
  • a Babel setup and configuration
  • a Webpack setup and configuration
  • an ESLint setup and configuration
  • a SCSS setup and configuration
  • a sample React component to display list codes
  • a Redux setup to handle zip codes state
  • a React Router setup to show basic navigation

Additionaly, the template provides a development and production webpack configuration.

The template also allows one to include specific plugins as part of build. Please see here for more detail


Showcase

Desktop

desktop

Mobile

mobile


Developed With

  • Visual Studio Code - A source code editor developed by Microsoft for Windows, Linux and macOS. It includes support for debugging, embedded Git control, syntax highlighting, intelligent code completion, snippets, and code refactoring
  • Node.js - Javascript runtime
  • React - A javascript library for building user interfaces
  • React Router - Declarative routing for React
  • Redux - Redux is a predictable state container for JavaScript apps.
  • Redux-Promise-Middleware - Redux middleware for promises, async functions and conditional optimistic updates
  • Redux-Thunk - Thunk middleware for Redux
  • Babel - A transpiler for javascript
  • Webpack - A module bundler
  • SCSS - A css metalanguage
  • Bootstrap 4 - Bootstrap is an open source toolkit for developing with HTML, CSS, and JS
  • Surge - Static web publishing for Front-End Developers

Related Projects

  • react-starter

    A basic template that consists of the essential elements that are required to start building a React application

  • react-clicker

    A basic React app that allows one to increase, decrease, or reset a counter

  • react-clock-basic

    A basic clock that displays the current date and time

  • react-timer-basic

    A basic timer that will start a countdown based on an input of time in seconds

  • react-timer-advanced

    A basic countdown timer that offers an advanced UI experience

  • react-masterminds

    A basic game of guessing a number with varying degrees of difficulty

  • react-movie-cards

    A basic application that displays a list of movies as a list of cards

  • react-calculator-standard

    A calculator that provides the essential arithmetic operations, an expression builder, and a complete history of all expressions

  • react-bitcoin-monitor

    An app that monitors changes in the Bitcoin Price Index (BPI)

  • react-weather-standard

    A weather application that displays the current weather, daily forecasts, and hourly forecasts based on your current geolocation

  • react-redux-quotlify

    A quote browser and manager that allows one to search famous quotes and save them to a data store.


Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

The following software is required to be installed on your system:

  • Node 8.x
  • Npm 3.x

Type the following commands in the terminal to verify your node and npm versions

node -v
npm -v

Install

Follow the following steps to get development environment running.

  • Clone 'react-redux-starter' repository from GitHub

    git clone https://github.com/drminnaar/react-redux-starter.git

    OR USING SSH

    git clone [email protected]:drminnaar/react-redux-starter.git
  • Install node modules

    cd react-redux-starter
    npm install

Build

Build Application

dev prod
npm run build:dev npm run build:prod

Build Application And Watch For Changes

dev prod
npm run build:dev:watch npm run build:prod:watch

Build Application With BundleAnalayzer Plugin Included

dev prod
npm run build:dev:bundleanalyze npm run build:prod:bundleanalyze

After running the above command, a browser window will open displaying an interactive graph resembling the following image:

webpack bundle analyzer

Build Application With BundleBuddy Plugin Included

dev prod
npm run build:dev:bundlebuddy npm run build:prod:bundlebuddy

Run ESlint

Lint Project Using ESLint

npm run lint

Lint Project Using ESLint, and autofix

npm run lint:fix

Run

Run Start

This will run the 'serve:dev' npm task

npm start

Run Dev Server

npm run serve:dev

Run Dev Server With Dashboard

npm run serve:dev:dashboard

The above command will display a dashboard view in your console resembling the following image:

webpack-dashboard

Run Prod Server

This command will build application using production settings and start the application using live-server

npm run serve:prod

Versioning

I use SemVer for versioning. For the versions available, see the tags on this repository.


Authors

More Repositories

1

guides

A repository of technical guides for various technologies
122
star
2

react-starter

A basic template that consists of the essential elements that are required to start building a React (v16.3) application using Webpack (v4)
JavaScript
110
star
3

noteworx-react-mongodb

A basic note application that uses React frontend to capture and manage notes, an api written in ExpressJS, and mongodb to store notes
JavaScript
80
star
4

react-movie-cards

A basic application that displays a list of movies as a list of cards
JavaScript
78
star
5

react-redux-quotlify

A quote browser and manager that allows one to search famous quotes and save them to a data store
JavaScript
45
star
6

react-weather-standard

A weather application that provides the current weather, daily forecast, and hourly forecast
JavaScript
41
star
7

ranker

A REST API guide with an example project written in C# using .NET 5
C#
40
star
8

dotnet-rabbitmq

A composition of RabbitMQ examples for C# .NET developers
C#
36
star
9

react-bitcoin-monitor

An app that monitors changes in the Bitcoin Price Index (BPI)
JavaScript
34
star
10

react-clicker

A basic React app that allows one to increase, decrease, or reset a counter
JavaScript
32
star
11

chinook

A playground for demonstrating concepts such as architecture, design, dotnet core, typescript, react, database and docker
C#
27
star
12

react-clock-basic

A basic clock that displays the current date and time
JavaScript
23
star
13

flyway

A collection of examples that illustrate the use of Flyway using SQL migrations
Shell
22
star
14

react-calculator-standard

A calculator that provides the essential arithmetic operations, an expression builder, and a complete history of all expressions
JavaScript
21
star
15

aws-dotnet-examples

A collection of independent .NET5 projects written in C# that demonstrate how to integrate with various AWS services using the AWS SDK for .NET
C#
16
star
16

cheatsheets

A collection of cheatsheets and quick reference guides for various technologies
16
star
17

react-masterminds

A basic game of guessing a number
JavaScript
15
star
18

mflix

A showcase of how to build API's (REST, gRPC, GraphQL) using C# .NET
C#
13
star
19

algorithms-and-data-structures

This project is a compilation of various algorithms and data structures that have been implemented using C# and Javascript.
C#
12
star
20

react-timer-basic

A basic timer that will start a countdown based on an input of time in seconds
JavaScript
11
star
21

noteworx-aspnetcore

A basic note management web application that has been built using ASP.NET Core, ASP.NET Core Identity, Entity Framework Core, and Postgresql.
C#
9
star
22

react-timer-advanced

A basic countdown timer that offers an advanced UI experience
JavaScript
8
star
23

grpc-guide

An introductory gRPC guide with examples
4
star
24

noteworx-cli-fs

A basic note application that uses a CLI (Command Line Interface) frontend to capture and manage notes, and a file system to store notes
JavaScript
2
star
25

dotnet-identity-example

Shows how to use, customise, and configure Identity on Asp.Net Core with different backend stores (postgresql, mssql, sqlite)
C#
2
star
26

graphql-dotnet-series

A collection of examples demonstrating how to build a GraphQL API using .NET
C#
1
star
27

azure-dotnet-examples

A catalog of examples showing how to develop for Azure using C#
C#
1
star
28

drminnaar.github.io

Github site
HTML
1
star
29

jukenook-db

Jukenook Db is a database reference project that demonstrates how to manage a PostgreSQL database in development using Docker and Flyway
TSQL
1
star
30

azure-iac

A collection of Azure IAC examples demonstrating Azure CLI, Azure Powershell and Bicep
Bicep
1
star