How nycs86/libsync works
LibSync is a library-management application with role-specific entry points for administrators, librarians, and students. Users select a role and enter its login/dashboard flow; the clearest sampled operational workflow is a librarian fetching and deciding student borrow requests, which the backend persists alongside QR-enabled request batches. The tree also shows separate user, book, borrowing, and student API modules, though their detailed behavior was not sampled. Student book selection and QR display are evidenced in the dashboard excerpt; its connection to the request API is not established.
Main entry points: App.jsx Role entry · app.py Flask API · borrow_requests.py Borrow requests · auth.py Login and roles
Components 18
Web application
- Role entry
frontend/src/App.jsx - Role choice
frontend/src/components/role.jsx - Admin login
frontend/src/components/admin_login.jsx - Librarian login
frontend/src/components/librarian_login.jsx - Student login
frontend/src/components/student_login.jsx - Admin dashboard
frontend/src/components/admin_dashboard.jsx - Librarian dashboard
frontend/src/components/librarian_dashboard.jsx - Student dashboard
frontend/src/components/student_dashboard.jsx
API service
- Flask API
backend/app.py - Borrow requests
backend/routes/borrow_requests.py - Borrowing records
backend/routes/borrowings.py - Student routes
backend/routes/student.py
Identity and access
- Login and roles
backend/routes/auth.py - User routes
backend/routes/users.py
Library data
- Book routes
backend/routes/books.py - Database access
backend/database.py - Library database
Other components
- Library user
Connections 19
- Library user → Role entry: opens
- Role entry → Role choice: renders
- Role entry → Admin login: renders
- Role entry → Librarian login: renders
- Role entry → Student login: renders
- Role entry → Admin dashboard: renders
- Role entry → Librarian dashboard: renders
- Role entry → Student dashboard: renders
- Flask API → Login and roles: registers
- Flask API → User routes: registers
- Flask API → Book routes: registers
- Flask API → Borrow requests: registers
- Flask API → Borrowing records: registers
- Flask API → Student routes: registers
- Librarian dashboard → Borrow requests: fetches and decides
- Borrow requests → Login and roles: checks roles
- Borrow requests → Database access: queries and updates
- Login and roles → Database access: looks up users
- Database access → Library database: connects