mwongess / AirBnB_clone

The console

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


░█████╗░██╗██████╗░██████╗░███╗░░██╗██████╗░  ░█████╗░██╗░░░░░░█████╗░███╗░░██╗███████╗
██╔══██╗██║██╔══██╗██╔══██╗████╗░██║██╔══██╗  ██╔══██╗██║░░░░░██╔══██╗████╗░██║██╔════╝
███████║██║██████╔╝██████╦╝██╔██╗██║██████╦╝  ██║░░╚═╝██║░░░░░██║░░██║██╔██╗██║█████╗░░
██╔══██║██║██╔══██╗██╔══██╗██║╚████║██╔══██╗  ██║░░██╗██║░░░░░██║░░██║██║╚████║██╔══╝░░
██║░░██║██║██║░░██║██████╦╝██║░╚███║██████╦╝  ╚█████╔╝███████╗╚█████╔╝██║░╚███║███████╗
╚═╝░░╚═╝╚═╝╚═╝░░╚═╝╚═════╝░╚═╝░░╚══╝╚═════╝░  ░╚════╝░╚══════╝░╚════╝░╚═╝░░╚══╝╚══════╝

AirBnB

DESCRIPTION

AirBnB is a complete web application, integrating database storage, a back-end API, and front-end interface.

This is part 1 of our AirBnb Clone project. The purpose of this project is to make a command interpreter that manages our AirBnb objects.

Data Diagram

data_diagram

CONCEPTS LEARNT

  • How to create a Python package
  • How to create a command interpreter in Python using the cmd module
  • What is Unit testing and how to implement it in a large project
  • How to serialize and deserialize a Class
  • How to write and read a JSON file
  • How to manage datetime
  • What is an UUID
  • What is *args and how to use it
  • What is **kwargs and how to use it
  • How to handle named arguments in a function

SYNOPSIS

Starting the Commandline Interpreter

The Commandline Interpreter can be started by executing the command ./console.py. The console can create, destroy, and update objects. Type help within the console to get a list of command options and its function.

Example:

firdaus@ubuntu:~$ ./console.py
(hbnb) help

Documented commands (type help <topic>):
========================================
EOF  create  help  quit

Undocumented commands:
======================
all  destroy  show  update


(hbnb) help quit
Quit command to exit the program
(hbnb) quit
firdaus@ubuntu:~$

OBJECTS IMPLEMENTED

This repository contains the following files:

Folder File Description
tests Contains test files for AirBnb Clone
console.py Command line Interpreter for managing AirBnB objects
models base_model.py Defines all common attributes/methods for other classes
models amenity.py Creates class amenity
models city.py Creates class city
models place.py Creates class place
models review.py Creates class review
models state.py Creates class state
models user.py Creates class user
models/engine/ file_storage.py Serializes instances to a JSON file and deserializes JSON file to instances
To be updated

About

The console


Languages

Language:Python 76.8%Language:HTML 13.6%Language:CSS 9.6%