Skip to content

Latest commit

 

History

History
232 lines (188 loc) · 5.52 KB

README.md

File metadata and controls

232 lines (188 loc) · 5.52 KB

Nail & Spa Springs

Currently, I live with other people who come from the same country. Especially they just run a business related to ‘Nail & Spa Rusell’ shop. Every day they are very busy because they need to write down some information in a notebook based on a customer's call to make an appointment. Sometimes they say ‘We are losing the customer when we can’t pick up the phone on time’ so they can’t call back at the moment. After they told me about their problem. Finally, I decided to collect more requirements and build the application to support this business in the future. Nail & Spa Rusell is a booking app that helps people book appointments whenever they want. This way, customers do not have to worry about waiting on the phone or physically visiting the Nail & Spa. At the same time, managers now have a way to manage their appointments effectively.

Table of contents

Features

  • Account
    • User Profile
    • Staff Profile
  • Shop Profile
    • Category
    • Service
  • Make an Appointment
  • Time Slot
  • Booking
  • Notifications
  • Promotions
  • Review (Refer to service & shop)
  • Settings
  • Integrated login by Facebook & Google

Technologies

Backend (Web)

  • Python
  • Django
  • Rest Framework
  • Authtoken
  • db.sqlite3, MySQL

Mobile (iOS)

  • Swift 5.3 (Storyboard)
  • Compatible OS version: 16
  • Compatible Dark & Light Mode
  • CoreData
  • RESTFul API
  • Alamofire
  • SwiftyJSON
  • Calendar
  • Kingfisher
  • Lottie
  • Crashlytics
  • Integrated (Facebook & Google)

Installation

Clone the code

$ https://github.com/ithemecambo/nail_spa_portal
$ cd Nail & Spa Springs 

Virtualenv modules installation (Unix based systems)

$ virtualenv env
$ source env/bin/activate

Install modules

$ pip install -r requirements.txt

Create tables

$ python manage.py makemigrations
$ python manage.py migrate

Create app superuser

$ python manage.py createsuperuser

Start the application (development mode)

$ python manage.py runserver # default port 8000
$ # Access the web app in the browser: Wifi IP Address (Ex: 198.199.50.100:8000)

EndPoint API

Server run on port: 8000

$ # You can change the server depend on your machine settings
$ # (Ex: 192.0.0.1:8000 or localhost:8000) 
$ # BaseUrl = "http://localhost:8000/api/v1/"

Authenticate by Users

  • Get user profile by profile id [GET]
$ BaseUrl + profile/21/
  • Create a new user account [POST]
$ BaseUrl + create-account/
  • Create a new profile base on account roles [POST]
$ BaseUrl + create-profile/
  • Update an existing profile by profile id [PUT]
$ BaseUrl + update-profile/25/
  • Upload Avatar to profile by profile id [POST, PUT]
$ BaseUrl + update-profile/24/
  • Looking existing an email before allow to register an account [GET]
$ BaseUrl + 
  • Login [POST]
$ BaseUrl + login/
  • Forget Password depending on account email by profile id [PUT]
$ BaseUrl + reset-password/21/
  • Change Password depending on account email by profile id [PUT]
$ BaseUrl + change-password/21/

Shop

  • Get Service of Package that selected by shop owner [GET]
$ BaseUrl + getServices/
  • Get Shop profile [GET]
$ BaseUrl + getNailSpa/
  • Register Device [POST] & [GET]
$ BaseUrl + getPlatforms/
  • Notification [POST] & [GET]
$ BaseUrl + getNotifications/
  • Promotion [POST] & [GET]
$ BaseUrl + getPromotions/

Mak an Appointment

  • Get Time Slot by weekday [GET]
$ BaseUrl + getAppointmentByWeekDays/Saturday/
  • Make an Appointment [POST]
$ BaseUrl + appointment/
  • Create Booking including service [POST]
$ BaseUrl + booking/

Booking

  • Get Booking by service [GET]
$ BaseUrl + myBookings/1/Upcoming/
  • Cancel Booking [PUT]
$ BaseUrl + cancel-appointment/23/
  • Reschedule Booking [PUT]
$ BaseUrl + reschedule-appointment/22/
  • Review the service of Booking [POST]
$ BaseUrl + create-review/

Screenshot

Support this repo

  • Star this repo

Social Contact

Contact Info