- Weight: 5 | Project Duration: Aug 7, 2023 4:00 AM - Aug 14, 2023 4:00 AM
- Team Members: Boutheldja Kaouther, kawthar ikram Khezour.
Welcome to the AirBnB Clone project! This project is the first step towards building a full web application that emulates the functionality of Airbnb. In this project, we are going to create a command-line interface (CLI) known as "The Console," which allows us to manage AirBnB objects using various commands.
- Background Context
- Installation
- Usage
- Commands
- File Structure
- Contributors
- License
This project is designed to teach us various fundamental concepts in Python, including:
- Python packages and modules
- Object-Oriented Programming (OOP)
- Creating a command-line interface (CLI)
- Serialization and deserialization of objects
- Unit testing using the unittest framework The project aims to mimic the basic functionalities of Airbnb, focusing on creating classes to represent different elements of the application, managing object serialization and deserialization, and providing a command-line interface for interacting with the objects.
Clone the repository:
https://github.com/ikramikram2020/AirBnB_clone
Navigate to the project directory:
cd AirBnB_clone
Run the console:
./console.py
Once the console is launched, you can start using various commands to manage your AirBnB objects. For a list of available commands, type help or help to get more information about a specific command.
The following commands are available in the console:
- create: Creates a new instance of a class and saves it to a JSON file.
- show: Displays the string representation of an instance.
- destroy: Deletes an instance based on the class name and ID.
- all: Displays all instances of a class or all instances in the storage.
- update: Updates the attributes of an instance.
- For a complete list of available commands, refer to the console's built-in help feature.
The project file structure is organized as follows:
- console.py: The main command-line interface (CLI) script.
- models/: Directory containing class definitions for different AirBnB objects.
- models/engine/: Directory containing the storage engine implementation.
- tests/: Directory containing unit tests for the project.
Boutheldja Kaouther - Github | LinkedIn (Team Member)
kawthar ikram - Github | LinkedIn (Team Member)
This project is licensed under the MIT License.