Whale's Tale Inventory

Inventory & sales tracking for the Whale’s Tale Bookstores (Mills)

Whale's Tale Inventory System — A Short descriptive headline

A Django-backed inventory system for the Jefferson County Library Foundation's two Whale's Tale Bookstores. Replace this placeholder with your summary.

Research → Design → Build → Test
Timeline
Solo (Cameron Bilyeu)
Team members
Django, PostgreSQL, JavaScript
Tech

About

A Django-backed inventory system for the Jefferson County Library Foundation's two Whale's Tale Bookstores. Replace this placeholder with your summary.

Requirements / Objectives

• Scan ISBN/UPC
• Track quantity, genre, condition
• Provide turnover reports

Assessment

Criteria: Functionality, data integrity, UI polish, documentation

Key features

List your main features here.

Project timeline

  • Phase 1 — Research
  • Phase 2 — Design
  • Phase 3 — Testing
  • Phase 4 — Implementation

Team

Cameron Bilyeu — Developer

Tools & Tech

Django, PostgreSQL, JavaScript

Progress Reports

Week 1 Progress Report (September 9–15)

Summary:
This week focused on research and planning for the Whale’s Tale Inventory System project. I met with team members and mentors to define the project goals, scope, and feature requirements for both Whale’s Tale Bookstore locations (Mills and Belmar). The system will include ISBN/UPC scanning, manual entry, quantity and location tracking, genre and holiday categorization, condition fields, and reporting features such as price history and turnover analysis.

Tasks Completed:
  • Conducted initial research on existing inventory management systems and open-source tools.
  • Determined that a Django-based web application would best fit the library’s needs for scalability and reliability.
  • Researched hardware compatibility for barcode scanners and Raspberry Pi hosting.
  • Drafted an outline of key database entities (Books, Locations, Inventory, Sales).
  • Met with the project advisor to review deliverables and confirm milestone dates.
Challenges:
  • Choosing between a local-only or cloud-synced database structure.
  • Balancing ease of use for volunteers with technical maintainability.
Next Steps:
  • Begin wireframing the user interface for basic inventory entry and search.
  • Set up the initial Django environment and repository structure.
  • Finalize the entity-relationship diagram (ERD) for the database.

Week 2 Progress Report

Summary:
This week focused on system design and environment setup. The goal was to move from concept to early prototype by establishing the development stack and user flow for adding and managing books.

Tasks Completed:
  • Installed and configured Django and supporting packages (SQLite, REST framework).
  • Created the initial project structure and a GitHub repository for version control.
  • Built preliminary models for Book, Inventory, and Location tables.
  • Designed the first version of the ERD and refined field relationships (e.g., genre, condition, quantity).
  • Started designing a basic UI mockup showing the inventory dashboard and entry form.
Challenges:
  • Integrating barcode scanning input into the local development environment.
  • Ensuring the interface layout remains accessible and readable for all users.
Next Steps:
  • Implement and test basic CRUD functionality for inventory items.
  • Begin developing the front-end interface for book lookup and entry.
  • Prepare for prototype testing scheduled for Week 4.

Week 3 Progress Report (September 23–27)

Summary:
This week focused on continuing early development of the inventory system and refining the user interface layout for core pages.

Tasks Completed:
  • Implemented basic CRUD functionality for book entries within the Django backend.
  • Created the first functional version of the book list page, including database integration.
  • Continued refining UI wireframes to match volunteer usability needs.
  • Identified additional fields needed for inventory tracking based on earlier feedback.
Challenges:
  • Some layout adjustments required more time than expected due to template structure changes.
Next Steps:
  • Begin enhancing the visual design with CSS in the upcoming weeks.
  • Prepare questions for mentor regarding UI layout and workflow decisions.

Week 4 Progress Report (November 3–7)

Summary:
This week's focus was on improving the user interface for the book list page and maintaining communication with my project mentor.

Tasks Completed:
  • Sent an update email to my mentor regarding project progress and next steps (no response yet).
  • Added CSS styling to the book list page, improving its appearance from a plain layout to a more professional, user-friendly design.
  • Adjusted table spacing, fonts, and color scheme for better readability.
Challenges:
  • Lack of feedback from mentor delayed some design confirmation decisions.
Next Steps:
  • Wait for mentor response and adjust design based on feedback.
  • Continue refining UI consistency across other pages in the system.

Week 5 Progress Report

Summary:
This week I focused on following up with my mentor and aligning the book list page with the updated styling from Week 4.

Tasks Completed:
  • Contacted the library mentor again via email to request feedback and confirm project direction (still no response).
  • Updated the book list HTML structure so it works correctly with the new CSS created in Week 4.
  • Cleaned up some elements in the template (classes/tags) to improve consistency and layout.
Challenges:
  • Continued lack of response from the mentor, which limited feedback on design and functionality decisions.
Next Steps:
  • Continue refining the UI on other pages to match the updated style.

Week 6 Progress Report (November 17–21)

Summary:
Due to ongoing communication issues with the library mentor, no meaningful progress was able to be made this week.

Tasks Completed:
  • Was not able to proceed without communication from the library.
  • Check email for any response from the library (none received).
Challenges:
  • Continued lack of communication from the library prevented advancement on UI decisions and feature priorities.
Next Steps:
  • Try reaching out again after the break or through an alternative contact method.
  • Resume development once guidance or confirmation from the mentor is received.

Contact