This is an open source project for a take-out order service, which allows restaurants to create their own menu + order page. Unlike Caviar or UberEats (which charges 12% to 30% + credit card transaction fee), it costs only the credit card transaction fee (via Stripe, 2.9% + 30cents).
It is built with Firebase + Vue + Stripe, for productivity and scalability.
- Authentication
- Enable email/password and phone authentication as Sign-in providers
- Add your domain if you use custom domain.
- Database
- Create Firestore database
- Hosting
- Enable hosting
- Add your domain if you use custom domain.
- Storage
- Enable Storage.
- Functions
- Enable functions.
TBD.
TBD.
TBD.
TBD.
see CircleCI setting. .circleci/config.yml
# install dependencies
$ npm install
# copy and edit project.js file
$ cp src/config/default/ownplate-dev.js src/config/project.js
$ STRIPE_CLIENT_ID=xxx STRIPE_API_KEY=xxx GAPIKey=xxx npm run dev
GAPIKey is google API key for Google Map STRIPE_CLIENT_ID and STRIPE_API_KEY are Stripe's id.
see CircleCI setting. This file .circleci/config.yml
This file contains the latest and valid information for the build.
$ npm run build
$ npm run start
$ npm run generate
"devsync": "HOST=192.168.100.20 PORT=3333 nuxt",
If you want to check the local environment with your smartphone, you can also check from your smartphone to specify HOST = {IP address} on local network.
$ npm run devsync
For detailed explanation on how things work, check out Nuxt.js docs.
You need to deploy Function for develoment.
cd functions && npm install
firebase deploy --only functions
https://materializecss.com/icons.html https://iconify.design/icon-sets/mdi/
https://fontawesome.com/icons?d=gallery https://materialdesignicons.com/cdn/2.0.46/