Giter VIP home page Giter VIP logo

b9is123_rrapp's Introduction

B9IS123 Programming for Information Systems – CA2

GoSolo - Restaurant Reviews Application

Module Leader: Paul Laird

Group - B

Student Names:

  • Tushar Chavan (10552610)

  • Shrivardhan Limbkar (10573876)

  • Bijendra Gaur (10525552)

Project Overview

GoSolo , is an Ireland online travel company that operates a website with user-generated content. It also offers online hotel reservations and bookings for B&B, lodging, bar, clubbing experiences, and restaurants.

Project Features

  • User Management
    • Login / Registration – OTP based Registration
  • Listing Resources & Details Page
    • Resources – Restaurants / Hotel, Bars, Clubs
  • Filters - By
    • Price, Categories, Location, Popularities
  • User Ratings & Reviews
    • Read / Write reviews
  • Booking page

Technologies Used

  • Frontend – Angular9, Material UI, HTML5, CSS3/SCSS, TypeScript, JavaScript
  • Backend – Python, Flask framework, Restful APIs, JSON
  • Database – MySQL
  • Hosting – Azure VM, Linux
  • IDE – Visual Studio Code, phpMyAdmin, PHP workbench
  • Security – JWT Token, Secure hash algorithms (hashlib, md5, salt), Email OTP based user registration

Git Repo

https://github.com/shreelimbkar/B9IS123_RRApp

Directory Structure

Getting Started

VM base URL - https://shriv.dbsprojects.ie:8080

cd api
python3 app.py --cert=cert.pem --key=privkey.pem

Application Screenshots:

  • Landing Page

  • User Login

  • User Registration

  • List Page

  • Filters

  • Image Carousel

  • User Reviews

Rest APIs Documentations

Screenshot

Postman Public link:https://www.getpostman.com/collections/fcaec4ce7917c658719e

POST User Login

https://shriv.dbsprojects.ie:8080/login

POST User Registration

https://shriv.dbsprojects.ie:8080/users/register

GET Get all User

https://shriv.dbsprojects.ie:8080/users

GET Get all Resources

https://shriv.dbsprojects.ie:8080/resources

GET Get all Bnbs

https://shriv.dbsprojects.ie:8080/resources/allbnbs

POST Check OTP

https://shriv.dbsprojects.ie:8080/users/checkotp

GET Get Resources by Category

https://shriv.dbsprojects.ie:8080/resources?category='hotel'

GET Get Resources by Id

https://shriv.dbsprojects.ie:8080/resourcesbyid?id=10

POST Filter Resources

https://shriv.dbsprojects.ie:8080/resources/filters

GET Get all User Reviews

https://shriv.dbsprojects.ie:8080/reviews

GET Get all User Reviews by Categroy

https://shriv.dbsprojects.ie:8080/reviews?category=2

GET Get all User Bnb Reviews

https://shriv.dbsprojects.ie:8080/reviews/bnbs

GET Get Bnb by Id

https://shriv.dbsprojects.ie:8080/resources/allbnbs?id=1

POST Add User review

https://shriv.dbsprojects.ie:8080/reviews/add

Individual Contribution

  • Tushar - Planning + Database + API (backend) + Data preparation

  • Shrivardhan - Planning + API (backend) + Database + VM project setup

  • Bijendra - Planning + Frontend + Database + API integration

Reference

  • O. Ethelbert, F. F. Moghaddam, P. Wieder, and R. Yahyapour, "A JSON Token-Based Authentication and Access Management Schema for Cloud SaaS Applications," in 2017 IEEE 5th International Conference on Future Internet of Things and Cloud (FiCloud), Aug. 2017, pp. 47–53, doi: 10.1109/FiCloud.2017.29. [1]
  • Bhawiyuga, M. Data, and A. Warda, "Architectural design of token based authentication of MQTT protocol in constrained IoT device," in 2017 11th International Conference on Telecommunication Systems Services and Applications (TSSA), Oct. 2017, pp. 1–4, doi: 10.1109/TSSA.2017.8272933. [2]
  • S. K. Kasagoni, Building Modern Web Applications Using Angular. Packt Publishing Ltd, 2017.[3]
  • M. Delisle, Creating Your MySQL Database: Practical Design Tips and Techniques. Packt Publishing Ltd, 2006.[4]
  • Severance, "Discovering JavaScript Object Notation," Computer, vol. 45, no. 4, pp. 6–8, Apr. 2012, doi: 10.1109/MC.2012.132.[5]
  • "hjp: doc: RFC 7523: JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants." https://www.hjp.at/doc/rfc/rfc7523.html (accessed Apr. 28, 2021).[6]
  • S. Suehring, JavaScript Step by Step. Pearson Education, 2013.[7]
  • M. Lutz, Learning Python: Powerful Object-Oriented Programming. O'Reilly Media, Inc., 2013.[8]
  • M. Spreitzenbarth and D. J. Uhrmann, Mastering Python Forensics. Packt Publishing Ltd, 2015.[9]
  • S. Suehring, MySQL bible. New York, NY: Wiley Publ, 2002.[10]
  • S. J. Nielson and C. K. Monson, Practical Cryptography in Python: Learning Correct Cryptography by Example. Apress, 2019.[11]

b9is123_rrapp's People

Contributors

shreelimbkar avatar chavan-tushar avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.