Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
4a8dcb8
WIP Admin Dashboard
willzoo Feb 23, 2026
931b353
WIP: Drawable boxes
willzoo Feb 23, 2026
1493ed6
Fix locations not putting
willzoo Feb 28, 2026
5a65d33
WIP: Protected locations
willzoo Feb 28, 2026
a22255a
Make inventory context get data solely from api
willzoo Feb 28, 2026
3c366a6
Make protected a database property
willzoo Feb 28, 2026
3affdf1
Remove workbench category - add "other" category
willzoo Feb 28, 2026
d0505e5
Add new location pane edits
willzoo Feb 28, 2026
17124a4
Make location edge drag fix
willzoo Feb 28, 2026
8c10316
Move top drawer/cabinet y pos down
willzoo Feb 28, 2026
ca11f7f
Fix zoom reset bug on add location
willzoo Feb 28, 2026
c072d78
WIP: Move items
willzoo Mar 1, 2026
57a93f1
Move working
willzoo Mar 1, 2026
06ed288
fix arrowhead direction
willzoo Mar 1, 2026
f79ed15
show +X on non shelves on add mode
willzoo Mar 1, 2026
171798f
Fix delete not applying, other minor things
willzoo Mar 2, 2026
f6fb6c9
Add move mode to admin dashboard
willzoo Mar 2, 2026
08ae476
Edit mode for locations
willzoo Mar 2, 2026
29cef13
WIP: Change history
willzoo Mar 3, 2026
367f6bb
Changes history and undo feature - currently testing this feature
willzoo Mar 3, 2026
921c1a3
fix seed data not seeding teams/cats
willzoo Mar 3, 2026
24e3408
add folder for tests and fix supply routes
willzoo Mar 3, 2026
c5ac0fb
Remove optimistic updates from inventory context
willzoo Mar 3, 2026
0767bb5
add button on admin dash to take back to user dash
willzoo Mar 4, 2026
958ca55
track locations in history
willzoo Mar 4, 2026
fd4c946
rename delete some to subtract for clarity
willzoo Mar 4, 2026
a5a3722
undone records fully removed
willzoo Mar 4, 2026
e2e6b68
finish renaming add to create
willzoo Mar 4, 2026
b7d7d39
renames
willzoo Mar 5, 2026
33b0359
add filter & dropdown
willzoo Mar 5, 2026
d720452
wip master filter
willzoo Mar 5, 2026
906d85a
fix filter bug
willzoo Mar 5, 2026
35aff37
add table sorting
willzoo Mar 5, 2026
dce2db8
wip: scrollbar fix
willzoo Mar 5, 2026
a170dd7
wip: fix scrollbar
willzoo Mar 5, 2026
3ade328
fix last modified to account for add/subtract
willzoo Mar 5, 2026
eb1fcaa
word wrapping for inventory table
willzoo Mar 5, 2026
9bcc07c
increase item preview height
willzoo Mar 5, 2026
86fa103
fix move mode
willzoo Mar 5, 2026
534823a
Display correct team name
willzoo Mar 5, 2026
bb9a69e
move admin
willzoo Mar 14, 2026
83c9bdb
Move all components into their own folder
willzoo Mar 14, 2026
5dac7fe
fix edge cases in history modal
willzoo Mar 14, 2026
ee96c31
Fix "Clear" button positioning
willzoo Mar 14, 2026
135d715
Add custom fields feature
willzoo Mar 17, 2026
3bb27d4
fix custom fields not pushing to db
willzoo Mar 23, 2026
2d6bcd4
replace default dialog with custom dialog
willzoo Mar 23, 2026
545d1eb
error handling for malformed undos
willzoo Mar 23, 2026
c542447
fix undo exceptions
willzoo Mar 23, 2026
09eabd1
WIP - Item types
willzoo Mar 23, 2026
7e147ef
Type feature almost done
willzoo Mar 23, 2026
1938c2e
wip - free place
willzoo Mar 29, 2026
cf14ef8
fix est conversion
willzoo Mar 29, 2026
0bf08ba
formatting free coordinate in menu
willzoo Mar 29, 2026
39a3eab
fix item type child desync bug
willzoo Mar 29, 2026
30b703c
Tune type dropdown
willzoo Mar 29, 2026
72c47d0
add respository pattern
willzoo Mar 29, 2026
461dba8
small fixes
willzoo Mar 31, 2026
91ebd37
allow duplicate names and add type modal to user
willzoo Mar 31, 2026
91a66b7
clean up backend
willzoo Apr 3, 2026
71a282b
touch up type feature
willzoo Apr 3, 2026
51919cb
add sign up feature
willzoo Apr 20, 2026
ab340d4
rename sql to tables
willzoo Apr 20, 2026
f1b8358
add delivery truck
willzoo Apr 20, 2026
6ee9495
add lost items box to seed
willzoo Apr 20, 2026
ab9ca8c
Add modifiable shelf count to locations
willzoo Apr 26, 2026
facc566
add unsorted box and editing for types
willzoo Apr 26, 2026
d84e254
more sensible type group headers
willzoo Apr 26, 2026
cf2b3e5
sort headers
willzoo Apr 26, 2026
76b758c
cleanup
willzoo Apr 30, 2026
124a6c4
more cleanup
willzoo Apr 30, 2026
ab6dcc0
fix shelves
willzoo Apr 30, 2026
d0167d7
filter across multiple dimensions
willzoo May 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
venv
__pycache__
__pycache__
node_modules
24 changes: 8 additions & 16 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,17 @@ COMPOSE=docker-compose -p $(PROJECT_NAME)
check-docker:
@docker info >nul 2>&1 || (echo. && echo ERROR: Docker is not running. Please start Docker Desktop and try again. && echo. && exit /b 1)

## up: Start the mysql, api (port 5000), and api-test (port 5001) containers and seed default locations
## up: Start mysql, api (5000), and api-test (5001). Waits briefly and verifies mysql_api is running. Seeding runs inside the API when src.api.app loads (seed_data).
.PHONY: up
up: check-docker
$(COMPOSE) up -d
@echo "Waiting for services to be ready..."
@timeout /t 5 /nobreak >nul 2>&1 || sleep 5 2>/dev/null || true
@$(COMPOSE) exec api python src/scripts/seed_locations.py
@echo Checking API container status...
@docker inspect mysql_api --format "{{.State.Status}}" 2>nul >nul || (echo. && echo ======================================== && echo ERROR: API container 'mysql_api' does not exist! && echo ======================================== && echo. && echo Try running: make build && echo. && exit /b 1)
@docker inspect mysql_api --format "{{.State.Status}}" 2>nul | findstr /C:"running" >nul 2>&1 || (echo. && echo ======================================== && echo ERROR: API container is not running! && echo ======================================== && echo. && echo Container status: && docker inspect mysql_api --format "Status: {{.State.Status}} (Exit Code: {{.State.ExitCode}})" 2>nul && echo. && echo Container logs: && echo. && docker logs mysql_api 2>&1 && echo. && echo ======================================== && echo. && exit /b 1)

## up-empty: Start the mysql, api (port 5000), and api-test (port 5001) containers without seeding data
## up-empty: docker compose up -d only (no wait or API checks). Seeding still runs when each API process starts (same as up).
.PHONY: up-empty
up-empty: check-docker
$(COMPOSE) up -d
Expand All @@ -34,9 +36,9 @@ status: check-docker
logs: check-docker
$(COMPOSE) logs -f

## mysql: Open a mysql shell into the mysql container
.PHONY: mysql
mysql: check-docker
## mysql-shell: Open a mysql shell into the mysql container
.PHONY: mysql-shell
mysql-shell: check-docker
$(COMPOSE) exec db mysql -u mysqluser -pmysqlpassword mydb

## build: Build or rebuild services
Expand All @@ -57,17 +59,7 @@ install:
sudo apt-get install -y docker.io docker-compose make python3-pip
pip3 install -r requirements.txt

## locations: Generate inventory-locations.json from generate-locations.js
.PHONY: locations
locations:
@cd milventory && node generate-locations.js

## milventory: Start the milventory React app
.PHONY: milventory
milventory:
@cd milventory && npm install && npm start

## help: Show this help menu
help:
@echo "Available commands:"
@grep -E '^##' Makefile | sed 's/## //'
16 changes: 7 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Inventory management system for MIL with database-backed storage.
```bash
make up
```
This starts MySQL and the Flask API, and seeds initial data.
This starts MySQL and the Flask API. Initial data is seeded when the API process loads (`src/scripts/seed_data.py` via `src.api.app`).

2. **Start frontend** (in a new terminal):
```bash
Expand All @@ -32,23 +32,21 @@ Inventory management system for MIL with database-backed storage.
- Email: `test@ufl.edu`
- Password: `test`

## Available Commands
## Available Commands (Ordered by importance)

- `make up` - Start all services and seed data
- `make up-empty` - Start services without seeding
- `make down` - Stop services (keeps data)
- `make clean` - Stop services and remove all data
- `make up` - Start all backend services
- `make milventory` - Start React frontend
- `make mysql` - Open MySQL shell
- `make down` - Stop backend services (keeps data)
- `make clean` - Stop backend services and remove all data
- `make logs` - View service logs
- `make status` - Check service status
- `make help` - Show all commands
- `make mysql-shell` - Open MySQL shell

## Project Structure

- `milventory/` - React frontend application
- `src/api/` - Flask backend API
- `src/sql/` - Database schema definitions
- `src/tables/` - Database schema definitions (`table_*.sql` per domain)
- `src/scripts/` - Database seeding and utility scripts

## Development
Expand Down
Loading