BookSwap is a web app where users are able to trade copies of used books with each other, accumulating points for sending books and spending them to request books. BookSwap was developed using Python, Flask, Jinja, and SQLite and submitted as part of a large project for the CS 361 course (Software Engineering) at Oregon State University.
Authors: Ben Wichser, Melissa Lagunas, Ryan McKenzie, Alexa Langen, Nishant Tharani, Phoenix Harris
The following user stories have been implemented as of December 2020:
- User can sign up.
- User can login or logout.
- User can search for a book to list, and list the book for trade.
- User can create a wishlist for their desired books.
- User can search the site's database for any listed books from other users.
- User can request, accept, or decline a trade from other users.
- User can see the selection of currently available books.
- User can earn points for listing a book.
- User can use points to trade for a book.
Follow these steps to get BookSwap running locally:
- Clone the repo:
git clone https://github.com/flummoxing/BookSwap
- Make sure you are using Python 3 (version 3.8.6 is recommended)
- Navigate to the folder where you cloned the repo, and install the Python dependencies by running
pip install -r requirements.txt
- Run the app:
python app.py
(orpython3 app.py
) - Navigate to the provided URL to view the home page (e.g.
http://0.0.0.0:5000/
) - Create the database locally: before using the app, you must navigate to the
/reset-db
route appended to the homepage. For example,http://0.0.0.0:5000/reset-db
- Go back to the home page and play around!
As an alternative to installating the latest build, you can use the app here.
To simulate a successful login, use the following information.
Username: admin
Password: password
To interact with multiple users, you can also use the following login info:
Username: csearl2
Password: nAvtnI