📒 A web app to save notes
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
client
scripts
server/web
.DS_Store
.babelrc
.dockerignore
.eslintrc
.gitignore
Dockerfile
README.md
main.go
package-lock.json
package.json
webpack.config.dev.js
webpack.config.prd.js

README.md

React Go Boilerplate

Description

A boilerplate for fastly building web application based on React & Go.

Requirements

  1. Linux or Mac OS
  2. Node.js (7.10.0 or higher)
  3. Go (1.8.1 or higher)

Features

  • Frontend

    • Components powered by React
    • State management powered by Redux
    • Stylesheet management powered by Radium
    • Fully-featured router management powered by react-router
    • Hot reload powered by react-hot-loader (module level hot reload only for stateful component)
    • Auto re-lint your js/jsx files after editing powered by eslint-watch
  • Backend

    • Web framework powered by Gin
    • Hot reload powered by another Gin

Usage

For Development

  1. Clone the repo and install all dependencies:

     go get github.com/MrHuxu/react-go-boilerplate && cd $GOPATH/src/github.com/MrHuxu/react-go-boilerplate
    
     go get github.com/gin-gonic/gin
     go get github.com/codegangsta/gin
     npm install
    
  2. It's recommended to install the React DevTools and Redux DevTools for frontend debugging.

  3. Launch the server:

     # execute the command below, then you'll see the dashboard shown
     # go visit http://localhost:8283 in your browser
     # editing any file will let the server or frontend reload
    
     npm run dev
    

For Deployment

It is highly recommended to use Docker to deploy this project!!

Using Docker

  1. Clone the repo and build Docker image:

     go get github.com/MrHuxu/react-go-boilerplate && cd $GOPATH/src/github.com/MrHuxu/react-go-boilerplate
     docker build . -t react-go-boilerplate
     docker run -p 13109:13109 -d react-go-boilerplate
    
  2. Use docker logs command to monitor the logs of the server:

     docker logs -f [container_id]
    

Manually Build

  1. Clone the repo and install all dependencies(same as above).

  2. Launch the server:

     # go visit http://localhost:13109 in your browser after executing the command
    
     npm run prd