AirBnB_clone_v2
Short description of your project.
- Introduction
- Environment Variables
- Requirements
- Usage
- File Structure
- Dependencies
- Installation
- Configuration
- Unit Testing
- SQL Database
- Contributing
- License
Briefly introduce the purpose and goals of the project.
List and explain the environment variables used in the project.
HBNB_ENV
: Running environment (dev
,test
,production
).HBNB_MYSQL_USER
: MySQL username.HBNB_MYSQL_PWD
: MySQL password.HBNB_MYSQL_HOST
: MySQL hostname.HBNB_MYSQL_DB
: MySQL database name.HBNB_TYPE_STORAGE
: Type of storage used (file
ordb
).
- Allowed Editors: vi, vim, emacs
- Interpreter/Compiler: Ubuntu 20.04 LTS using python3 (version 3.8.5)
- File Endings: All files should end with a new line
- First Line:
#!/usr/bin/python3
- README.md: A mandatory README file at the root of the project folder
- Code Style: Use pycodestyle (version 2.8.*)
- Executable Files: All files must be executable
- File Length: Will be tested using
wc
- Documentation: All modules, classes, and functions should have documentation
- Allowed Editors: vi, vim, emacs
- File Endings: All files should end with a new line
- File Organization: Test files in a folder named
tests
, following the project structure - Test Module: Use the
unittest
module - File Naming: Test files and folders should start with
test_
- Execution: All tests should be executed using
python3 -m unittest discover tests
- Documentation: All modules, classes, and functions should have documentation
- Allowed Editors: vi, vim, emacs
- Execution Environment: Ubuntu 20.04 LTS using MySQL 8.0
- SQLAlchemy Version: 1.4.x
- File Endings: All files should end with a new line
- Commenting: All SQL queries should have a comment just before
- Keywords: All SQL keywords should be in uppercase (e.g.,
SELECT
,WHERE
) - README.md: A mandatory README file at the root of the project folder
- File Length: Will be tested using
wc
- Repository: One project repository per group
- Cloning: Be cautious about cloning, forking, etc., to avoid score penalties
Provide instructions on how to use and run your project.
Explain the organization of your project files and directories.
List any external dependencies or libraries required for your project.
Provide installation instructions for your project.
Explain any configuration steps or requirements for the project.
Explain how to run unit tests and any considerations for testing.
Provide information on setting up and managing the MySQL database.
Guidelines for contributing to the project.
State the license under which your project is released.