Inspiration

Everyone knows how ridiculously expensive college textbooks are. Even used copies online can fetch hundreds of dollars. We wanted to help students save money.

What it does

We wanted to help students save money by helping them make direct student-to-student transactions, helping the students save money. It functions like Craigslist, where students find or make listings of textbooks. When you find a textbook you need to buy, you can click on it and find listings underneath. Then, you contact your student seller directly to facilitate a transaction. This means there is no fuss or hassles because you directly complete the transaction with your fellow campus student. No shipping woes, taxes, or fees! If you want to sell, you can create an account to list your book. We also have a feature for getting all the books you need for your classes in one place! You go to the classes page and see what books your classes require.

How we built it

After we came up with the concept, we got to prototyping the design and features with Adobe XD. After we decided on the core functionality, we got to programming the backend of our project. To program the backend, we used the Flask framework for Python. We used packages like flask_login, werkzeug.security, flask_sqlalchemy, flask_migrate, and wtforms. To program the frontend website, we used HTML, CSS, and Javascript. We built the front end off of the prototype made in Xd. Then, we had to integrate the front end and the backend.

Challenges we ran into

When setting up the offer model table, too many primary keys were defined, so we had to reset the entire database. There was also an issue where DB Browser was overriding the fact that ID Column in offers had to have a primary key, throwing an exception. Also, two of our members' electricity cut out for extended periods of time!

Accomplishments that we're proud of

Considering this was all of our members' FIRST hackathon, we think we were pretty successful in developing a project. We're really proud that we created a search function and implemented both frontend and backend. This is also all of our members' first real project. We were proud that the website looked pretty clean and polished.

What we learned

We learned how to pickle python objects into binary. We learned how to use post methods to receive data from a previous Flask page. We also learned how to animate in CSS. We also learned how to use prototyping tools in CSS. Some of our members also learned a lot from the workshops (i.e. Flask, GitHub Pages, and Flutter)

What's next for TextbookConnect

We will actually continue the project! This summer, after school, we will polish our code and implement more functionality! For example, we can create pages for different schools. We will also add an option to add textbooks. We will first test with our own school.

Share this project:

Updates