Skip to content
Eat-Da-Burger using Node, Express, Handlebars, and Homemade ORM
JavaScript HTML CSS
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config
controllers
db
models
public/assets
views
.gitignore
README.md
package-lock.json
package.json
server.js

README.md

Tucson_Burger 🍔 🌶️

Welcome to Tucson Burger, the "hottest" burger joint in this part of the Southwest! Tucson Burger is a fun, dynamic, user-interactive full-stack web app that allows the user to order a burger, either from one of the Tucson favorites, or a made-to-order custom burger that you get to name yourself. Then, when the order is submitted, pick up the burger (or send back to kitchen to remake the burger). And finally, the best part is to devour the burger! Responsive web design with media queries is incorporated, so the burger ordered on the beautiful web app looks as delicious on your mobile device as on the larger desktop display.

Technical overview

This full-stack application utilizes the Model/View/Controller (MVC) design pattern in which the Controller serve as the interface to handle the logic and routing between Model or the application database core and View to dynamically render HTML content in response to the user/client requests. Specifically, the app is built with Node.js, Express.js, and Handlebars to handle the logic and to route the client requests to MySQL database using a homemade Object Relational Mapping (ORM) technique to retrive information to dynamically build HTML pages to display the content back to the client. To run the server codes, the app is deployed live on Heroku. If you wish to clone or download the code from GitHub to run on the localhost, make sure you uncomment out the connection for MySQL (use your own MySQL password) and comment out the JAWSDB connection code.

Built with or topics covered

  • HTML5
  • CSS3
  • JavaScript
  • jQuery
  • Model View Controller (MVC)
  • Object Relational Mapping (ORM)
  • Express.js
    • HTTP Requests (GET, POST)
    • Routes and static content
    • Handlebars engine integration
  • Node.js
    • Backend API calls
  • Handlebars Templates and Layouts
  • Node Package Manager (npm)
  • Media queries
  • MySQL/JawsDB
  • Heroku deployment

npm packages:

Directory structure

All the recommended files and directories should look like the following structure:

.
├── config
│   ├── connection.js
│   └── orm.js
│
├── controllers
│   └── burgers_controller.js
│
├── db
│   ├── schema.sql
│   └── seeds.sql
│
├── models
│   └── burger.js
│
├── node_modules
│
├── package.json
│
├── public
│   └── assets
│       ├── css
│       │   └── style.css
│       ├── img
│       │    └── background.jpg
│       │    └── hot.png
│       │    └── mobilepreview.gif
│       │    └── webpreview.gif
│       └── js
│            └── burgers.js
├── server.js
│
└── views
    ├── index.handlebars
    ├── layouts
    │    └── main.handlebars
    └── partials
        └── burgers
                └── burger-block.handlebars

Author

Here are the previews of the web application:

You can’t perform that action at this time.