░█████╗░██╗██████╗░██████╗░███╗░░██╗██████╗░ ░█████╗░██╗░░░░░░█████╗░███╗░░██╗███████╗
██╔══██╗██║██╔══██╗██╔══██╗████╗░██║██╔══██╗ ██╔══██╗██║░░░░░██╔══██╗████╗░██║██╔════╝
███████║██║██████╔╝██████╦╝██╔██╗██║██████╦╝ ██║░░╚═╝██║░░░░░██║░░██║██╔██╗██║█████╗░░
██╔══██║██║██╔══██╗██╔══██╗██║╚████║██╔══██╗ ██║░░██╗██║░░░░░██║░░██║██║╚████║██╔══╝░░
██║░░██║██║██║░░██║██████╦╝██║░╚███║██████╦╝ ╚█████╔╝███████╗╚█████╔╝██║░╚███║███████╗
╚═╝░░╚═╝╚═╝╚═╝░░╚═╝╚═════╝░╚═╝░░╚══╝╚═════╝░ ░╚════╝░╚══════╝░╚════╝░╚═╝░░╚══╝╚══════╝
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.
- 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
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:~$
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 |