A book store/review application that will get us an HD.
This project is a bookstore and review application developed as part of our coursework for CITS3401. The application aims to provide users with an application for discovering, purchasing, and reviewing books. It incorporates features such as user authentication, book browsing, reviews, and recommendations to enhance user engagement and satisfaction.
The purpose of this project is to develop a comprehensive bookstore and review application aimed at achieving an HD grade. The application provides the following features:
User Authentication:
Book Catalog:
Book Reviews:
About us:
UWA ID | Name | Github User |
---|---|---|
23376234 | Myla Do | Mylaaado |
22915304 | James Rimmer | Jimmy141619 |
23364195 | Camilo Lima Castillo | Onlinepatron |
22980141 | William Lodge | Log1112 |
The application follows a client-server architecture using Flask as the backend framework and SQLAlchemy as the ORM for database management. The frontend is built using HTML, CSS, and JavaScript, with the help of Bootstrap for responsive design.
Create a virtual environment:
python3 -m venv venv
Activate the virtual environment:
source venv/bin/activate
venv\Scripts\activate
Install the required dependencies:
pip install -r requirements.txt
Initialize the database:
flask db init
Apply the database migrations:
flask db migrate
flask db upgrade
Run the application:
flask run
The application will be accessible at http://localhost:5000
.
To run the tests for the application, use the following command:
python -m unittest discover tests
This command does the following:
python -m unittest
: This runs the unittest module as a script, allowing you to execute tests.discover
: This is a command-line option that tells unittest to discover and run tests in a specified directory.-s tests
: This specifies the directory where unittest should start discovering tests. In this case, it assumes that test files are located in a directory named "tests".