AirBnB Clone Project

Welcome to the AirBnB clone project! This project is the first step toward building a full web application: the AirBnB clone. The goal of this project is to create a command interpreter that will be used to manage AirBnB objects. The command interpreter will be developed incrementally and will serve as the basis for future projects involving HTML/CSS templating, database storage, API, and front-end integration.

Table of Contents

Project Description

The AirBnB clone project aims to create a simplified version of the AirBnB web application. The project will be developed in several stages, each adding more features and functionalities. The first stage involves creating a command interpreter to manage AirBnB objects.

The command interpreter will allow users to:

  • Create new objects (e.g., User, Place)
  • Retrieve objects from a file
  • Perform operations on objects (e.g., count, compute stats)
  • Update object attributes
  • Destroy objects

Command Interpreter

The command interpreter is similar to a shell but limited to managing AirBnB objects. It provides the following functionality:

  • Create new objects
  • Retrieve objects
  • Perform operations on objects
  • Update object attributes
  • Destroy objects

Features

  • Interactive Mode: Start the interpreter and execute commands.
  • Non-Interactive Mode: Execute commands from a file or pipeline.

Getting Started

Requirements

  • Ubuntu 20.04 LTS
  • Python 3.8.5

Installation

  1. Clone the repository: