A full-stack web application that allows users to create, manage, and organize dance entries with video uploads, filtering, and authentication. Built with Flask and SQLite.
Try it here: [Render Link] https://dancelibrary-6oxw.onrender.com
- User signup and login
- Password hashing using bcrypt
- User-specific dance libraries
- Conditional UI rendering based on login state
- Create new dance entries
- View all dances for a logged-in user
- Edit dance details through modal interface
- Delete individual dances
- Bulk delete multiple dances
Client-side filtering by:
- Dance name
- Style
- Music
- Multi-term search with dynamic filter chips
- Real-time filtering without page reload
- Secure file uploads using secure_filename
- Videos stored locally
- Dynamic video playback modal
- Modal-based editing system
- Dropdown action menus per dance card
- Conditional action visibility based on authentication
- Bulk edit mode toggle
- HTML
- CSS
- JavaScript (Vanilla JS)
- Flask (Python)
- Flask-CORS
- SQLite
- bcrypt password hashing
- Werkzeug secure file uploads
git clone cd
python3 -m venv venv
Mac/Linux: source venv/bin/activate
Windows: venv\Scripts\activate
pip install -r requirements.txt
python app.py
The server will run on: http://127.0.0.1:5000
- Backend route protection (token-based authentication)
- Pagination for large datasets
- Cloud database deployment
- UI design refinement and aesthetic enhancements