All Projects → nil1729 → food-order-app

nil1729 / food-order-app

Licence: MIT license
Simple Food Ordering Website (NodeJS, ExpressJS, MongoDB, Bootstrap) with auto deployment

Programming Languages

Vue
7211 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to food-order-app

Angularfirebase Authentication
Learn to create complete Angular 7 Firebase 5 authentication system tutorial from scratch. Learn how to setup sign In, sign up using custom email and password, social login provides such as Google and Facebook, protect routes using canActivate method.
Stars: ✭ 286 (+565.12%)
Mutual labels:  bootstrap4, firebase-auth
course
gary60405.github.io/course/
Stars: ✭ 17 (-60.47%)
Mutual labels:  bootstrap4, firebase-auth
bootcatch-themes
🔥 Bootcatch Themes is an open-source library of free Custom Bootstrap Themes.
Stars: ✭ 22 (-48.84%)
Mutual labels:  bootstrap4
TradeByte
💸 TradeByte - Stocks Trading Simulation WebApp
Stars: ✭ 30 (-30.23%)
Mutual labels:  heroku-deployment
CUMS DBMS
🏰 A College Management Site (DBMS) using Node and Mysql.
Stars: ✭ 28 (-34.88%)
Mutual labels:  bootstrap4
selectize-bootstrap4-theme
Selectize Theme for Bootstrap 4
Stars: ✭ 43 (+0%)
Mutual labels:  bootstrap4
classmanager-student-teacher-portal
A Student-Teacher Portal built using HTML, CSS, Python and Django
Stars: ✭ 155 (+260.47%)
Mutual labels:  bootstrap4
webpack-sass-bootstrap-boilerplate
Sass, Babel & Bootstrap boilerplate with Webpack building, Dev Server and Live Loading
Stars: ✭ 93 (+116.28%)
Mutual labels:  bootstrap4
Chatify
A Chat Application in Flutter using Firebase. Integrated Agora Video Call SDK to communicate over video call
Stars: ✭ 76 (+76.74%)
Mutual labels:  firebase-auth
miracle-basketball
miracle-basketball.firebaseapp.com/
Stars: ✭ 29 (-32.56%)
Mutual labels:  firebase-auth
Codeigniter-4-CRUD-generator
ADEL CCG is an easy open-source intuitive web app to create AdminLTE4 -Bootstrap 5- dashboards with CRUD operations in php.
Stars: ✭ 87 (+102.33%)
Mutual labels:  bootstrap4
fire-drill
Find, Edit, Add, Remove, Import, Export, and Report on your Firebase data
Stars: ✭ 58 (+34.88%)
Mutual labels:  firebase-auth
DeployMachineLearningModels
This Repo Contains Deployment of Machine Learning Models on various cloud services like Azure, Heroku, AWS,GCP etc
Stars: ✭ 14 (-67.44%)
Mutual labels:  heroku-deployment
firebase id token
A Ruby gem to verify the signature of Firebase ID Tokens.
Stars: ✭ 138 (+220.93%)
Mutual labels:  firebase-auth
vue-resume
a live resume builder using VueJs
Stars: ✭ 72 (+67.44%)
Mutual labels:  bootstrap4
MPACore.PhoneBook
采用MVC+jQuery 的方式进行开发。
Stars: ✭ 51 (+18.6%)
Mutual labels:  bootstrap4
drf-starter-template
DRF Starter Template with drf-yasg, heroku deployment ready config, CORS config
Stars: ✭ 25 (-41.86%)
Mutual labels:  heroku-deployment
smaller-sites
Smaller Sites is a small BUT Powerful, free and easy to use drag and drop builder for blogs, websites or e-commerce stores. Designed for everyone Developers and non Developers. You can use it to design your next website. The goal is to create something like webflow
Stars: ✭ 27 (-37.21%)
Mutual labels:  bootstrap4
frontie
Frontie is a front-end boilerplate. Gulp | Twig.js | Sass | Autoprefixer | Browsersync | Bootstrap 4 Grid System & Responsive Breakpoints
Stars: ✭ 28 (-34.88%)
Mutual labels:  bootstrap4
react-notification-alert
React bootstrap 4 notification alert
Stars: ✭ 34 (-20.93%)
Mutual labels:  bootstrap4

Food Ordering Web App using Vue JS

Simple food ordering website Using VueJS, firebase, NodeJS and MongoDB.

  • Live Demo here.

    • Test User Credentials
    • Test Admin Credentials
    • Test RazorPay Credentials (Net Banking Recommended)
      • Card Number: 4111 1111 1111 1111
      • Expiry: Any Future Month
      • CVV: Any three Digit Number
  • Github Repository link.


Technology and Modules used for this Project

  1. Node JS Express Framework is used as a building Backend part of this Website.
  2. MongoDB is used to Store Products Details and URL of Photos.
  3. Firebase Storage is used for store the Uploaded Files.
  4. Firebase Authentication is used for for Authenticate a User. User can authenticate using Google Sign in or Custom Email Password Method.
  5. Vue JS is used as frontend Framework for building SPA.
  6. Bootstrap is used for building UI and this website is Responsive for Desktop Devices and Tabs only.
  7. Site has Admin functionality by which site owner can add Product to his Store.
  8. Site is responsive for Desktop Devices and Tabs. (I am working on for responsiveness on small Devices)

Run this Project on Local Environment

  1. Prerequisites

    • NodeJS installed on your Local machine
    • MongoDB installed on your local machine or have an Atlas Account.
    • A Gmail Account for Firebase Services.
    • A RazorPay Account for testing payments.
  2. Credentials Setup

    • Create a MongoDB Atlas Account for Host this Project Online. Find Tutorials here.
    • Setup a Firebase Project for using Firestore and Authentication. Find Tutorials here.
    • Setup Firestore and Enable Authenitaion Methods
    • Generate Private keys for Firebase Admin. Find tutorials here.
    • Setup RazorPay Payment Method on our Website. Find Tutorials here
  3. Project Setup

    • Clone this Repository or Download the zip File.

       >> git clone https://github.com/nil1729/phone-order-app.git
      
    • Create a new file named secret.json on config directory which contains Generated Private keys on Firebase project.

          {
              "type": "service_account",
              "project_id": "",
              "private_key_id": "",
              "private_key": "",
              "client_email": "",
              "client_id": "",
              "auth_uri": "",
              "token_uri": "",
              "auth_provider_x509_cert_url": "",
              "client_x509_cert_url": ""
          }
      
      
    • Create another cofig.js file on /client/src/firebase. Put all firebase config Credentials for Frontend. (In following Format)

        const firebaseConfig = {
            apiKey: "",
            authDomain: "",
            databaseURL: "",
            projectId: "",
            storageBucket: "",
            messagingSenderId: "",
            appId: "",
            measurementId: ""
        };
      
        export default firebaseConfig;
      
    • Create a .env file on root directory. Which Contains all necessary Secret Credentials (for backend only) for this site.

       DB_URI = <- Mongo Atlas URI ->
       RAZORPAY_KEY_ID = <- Start RazorPay in Test Mode and Create API Key and paste the KEY ID ->
       RAZORPAY_KEY_SECRET = <- Start RazorPay in Test Mode and Create API Key and paste the KEY SECRET (Only For Backend) ->
      
    • Create a .env file on client directory. Which Contains all necessary Secret Credentials (for frontend only).

         VUE_APP_RAZORPAY_KEY_ID = <- Key ID generated for API key on RazorPay Developer Portal same as Backend RAZORPAY_KEY_ID ->
         VUE_APP_DEVELOPER_NAME =
         VUE_APP_DEVELOPER_EMAIL_ADDRESS =
         VUE_APP_RAZORPAY_POPUP_COLOR = <- HEX Color Code ->
         VUE_APP_WEBSITE_BRAND_NAME =
         VUE_APP_CHECKOUT_DESCRIPTION =
         VUE_APP_RAZORPAY_SCRIPT_SRC = https://checkout.razorpay.com/v1/checkout.js
         VUE_APP_RAZORPAY_POPUP_IMAGE = <- Hosted Image URL ->
      
    • Run this command

       >> npm run dev  // to start Vue Development server and Backend server together.
      
       >> npm run server // to start only Backend server
      
       >> npm run Client // to start Vue Development server only (But it will not working alone as api depends on Backend also)
      
      
  4. Admin Setup

    • Run this Command on root directory
        >> npm run admin
      

Website Preview

Nilanjan Deb


Made With by Nilanjan Deb

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].