Turing Fullstack

https://turing-fullstack.herokuapp.com

Admin dashboard can be accessed on https://turing-fullstack.herokuapp.com/admin.

The project's structure is loosely based on a Heroku blog post.

Todos left:

  • Email registration confirmation
  • Test driven development
  • Separate Login (Authentication & Authorization Models) for Customers vs. Users (Admin)
  • Facebook Login
  • Updating product images, hosting using Cloudinary or AWS S3
  • Shopping cart
  • Checkout process, including Stripe payment integration
  • Email order confirmation
  • Background-jobs & Queue using Bee Queue
  • Query and response caching with Redis
  • Full-text search with Elasticsearch

Running steps

The whole app (backend & frontend) can be run by using combinations of Yarn and/or Adonis CLI and/or Heroku CLI and/or PM2.

Without those tools above, we can run the app quickly with these steps:

  1. git clone --depth=1 git@github.com:siriusdely/turing-fullstack.git: shallow clone the repo with only single commit. Or download zip and unzip.
  2. cd turing-fullstack: enter project directory.
  3. cp .env.example .env: copy environment variables file using the template.
  4. npm install: install package dependencies.
  5. node ace migration:run && node ace seed: setup database using migration & seed.
  6. node server.js: run the server app.
  7. Open a browser and go to: http://localhost:3333/admin.
  8. cd front: Open another terminal and enter the frontend app directory.
  9. npm install: install package dependencies for the frontend app.
  10. npm start: run the client app.
  11. Open a browser and go to: http://localhost:3000.