A sample React Redux CRUD app
Note: As of Nov 30th 2016, the code has been updated to work w/ latest versions of its dependencies!
#Live App https://protected-escarpment-79486.herokuapp.com/
#Blogs If you like any of the posts, please share it on Twitter (@rajaraodv)
#Running On Heroku
You can create your own version of the app (including MongoDB!)
#Local Installation
git clone https://github.com/rajaraodv/react-redux-blog.gitcd react-redux-blognpm installexport POSTMARK_API_TOKEN=<getApiTokenFromWInPostmark>POSTMARK_API_TOKEN to the app running on Heroku). You can then get that POSTMARK_API_TOKEN by running: heroku config:get POSTMARK_API_TOKEN and then export the token to the terminal. This will now allow you to send email from localhost.####Preventing Emails From Getting Blocked by GMail, Yahoo etc. NOTE: In order to send email via PostMark or Sendgrid, you need to verify sender's email(from address). In PostMark you can do that by setting your company or other private email(e.g. [email protected]) and verifying that. Then you can use THAT company or private email(e.g. [email protected]) in the FROM address.
#Running Locally You need two terminal windows open, one for client and the other for server.
####Development
export JWT_SECRET=somesecretstring <-- This is used to generate JWT tokens.export POSTMARK_API_TOKEN=<getApiTokenFromWInPostmark> <-- Emailnpm start. This runs the app server (Express).npm run dev. This runs the development server(webpack-dev-server).localhost:8080export JWT_SECRET=somesecret
export POSTMARK_API_TOKEN=bla-bla-bla-9619-a6d1185548cd
export [email protected]
export NODE_ENV=development
####Note: If you open localhost:3000 in browser, you'll see a "stale" production app, so while in development, always go to localhost:8080
####Production
In production, we need to compile the latest client js and place it to public folder. This allows the main app server(Express) to also show the final app.
npm run build.npm start. It will be running both the server and the client.localhost:3000.#Cloning Locally And Pushing To Heroku Running your own instance on Heroku.
git clone https://github.com/rajaraodv/react-redux-blog.gitcd react-redux-blogheroku login (enter heroku credentials)heroku initheroku create heroku addons:create mongolab <-- Add Mongolab test DB (free tier)heroku addons:create postmark:10k <-- Postmark Email (free tier)git push heroku master###Making changes to your app and pushing it to Heroku Everytime you make changes to the front end, you need to build it, and do git commit before pushing it to Heroku test server.
npm run build #build new React app JSgit add . #Add change to gitgit push heroku masterheroku openI usually have something like below that combines all the steps. I just change the commit message everytime.
npm run build && git add . && git commit -m "made changes" && git push heroku master && heroku open
No open issues yet, or sync has not completed.