Commit graph

14 commits

Author SHA1 Message Date
ijuanes
3e2e440d06 docs: add Spanish translation requirement note to RESPONSIVE_CSS.md
- Add TOP PRIORITY section for Spanish translation
- Document scope: all templates need translation
- List all files to translate with status
- Provide 3 approach options (direct, Flask-Babel, macros)
- Include English-Spanish translation table
- Note: Do not change code yet - documentation only
- Mark as high priority for future work
2026-06-20 01:32:48 +01:00
ijuanes
dea2f23524 docs(ui): update RESPONSIVE_CSS.md with bug fix documentation
- Document the missing </style> tag bug and fix
- Update file counts and line changes
- Add commit information section
- Reorganize for better readability
2026-06-20 01:28:24 +01:00
ijuanes
28232dbaf9 fix(ui): add missing </style> tag in base.html
The responsive CSS addition was missing the closing </style> tag,
which caused the main page to render as blank. This fix restores
the proper HTML structure.
2026-06-20 01:27:17 +01:00
ijuanes
927c323a6e feat(ui): add responsive CSS for mobile accessibility
- Add mobile-first responsive CSS to base.html
- Wrap all tables in .table-container for horizontal scrolling on mobile
- Add breakpoints for phones (576px), tablets (768px), desktops (992px, 1200px)
- Improve mobile navigation (vertical stack) and form layouts (full-width)
- Add print styles for clean printing
- Update project_management.html editor for mobile
- Document all changes in docs/RESPONSIVE_CSS.md

No backend or JavaScript changes - pure CSS solution.
For 5 internal technical users, this is simpler and more appropriate than
HTMX or SPA approaches. Solves mobile accessibility issue with minimal changes.
2026-06-20 01:20:39 +01:00
ijuanes
531b3a9048 docs: add separated frontend architecture options for mobile support
- Create docs/FRONTEND_OPTIONS.md with comprehensive analysis
- Explore 4 options for separated frontend:
  1. SPA with REST API (React/Vue/Svelte)
  2. Hybrid approach (mobile SPA + desktop server templates)
  3. HTMX for lightweight dynamic UI
  4. Native mobile app (React Native/Flutter/Capacitor)
- Include comparison matrix with pros/cons
- Provide implementation examples for each option
- Add responsive design guidelines
- Include API endpoints specification
- Recommend phased implementation roadmap
- No code changes - documentation only

This addresses mobile responsiveness while keeping backend intact.
2026-06-18 12:13:59 +01:00
ijuanes
1ad0e8bf13 docs: add PostgreSQL migration guide for future scalability
- Add section 9 to TECHNICAL_SPECIFICATIONS.md with:
  - Migration criteria (DB size, connections, users, transactions)
  - Proposed repository pattern architecture
  - Migration steps overview
  - Benefits of PostgreSQL

- Create docs/MIGRATION_TO_POSTGRES.md with comprehensive guide:
  - When to migrate (detailed thresholds)
  - Architecture overview (repository pattern)
  - Step-by-step migration process (10 steps)
  - Complete code examples:
    * Base repository interfaces
    * SQLite implementation
    * PostgreSQL implementation
    * Repository factory
    * Migration script
  - Docker Compose configuration
  - Rollback plan
  - Monitoring and maintenance
  - Performance optimization
  - Troubleshooting guide

This enables future migration when database grows beyond SQLite capabilities.
2026-06-17 17:22:50 +01:00
ijuanes
85978a710f docs: add testing documentation to README and RUNNING.md
- Add Testing section to README with:
  - How to run tests
  - Test structure overview
  - Key edge cases covered
  - Test configuration notes
- Add Running Tests section to RUNNING.md
- Document the 46 unit tests available
2026-06-17 17:10:12 +01:00
ijuanes
83ac67fea2 test: add comprehensive unit test suite
- Add tests/ directory with pytest configuration
- Add conftest.py with database fixtures (test_db, sample data)
- Add test_core.py: 21 tests for core operations (tablet, user, loan CRUD)
- Add test_edge_cases.py: 14 tests for edge cases (duplicates, invalid IDs, etc.)
- Add test_minimal_app.py: 11 tests for actual application functions
- Update pyproject.toml with pytest and coverage configuration
- Total: 46 tests covering core functionality and edge cases

Tests cover:
- Tablet CRUD operations
- User CRUD operations
- Loan/return workflows
- Duplicate prevention (serial numbers, identifications)
- Invalid ID handling
- Already loaned device prevention
- Non-existent loan handling
- Multiple loans per user (one-to-many relationship)
- Non-loanable device CRUD operations

To run: python3 -m pytest tests/ -v
2026-06-17 17:07:20 +01:00
ijuanes
d3d1fb1b32 feat(non-loanable-devices): implement non-loanable device management
- Add non_loanable_devices table to database schema
- Add web interface routes: /non_loanable_devices, /add_non_loanable_device, /edit_non_loanable_device, /delete_non_loanable_device
- Add CLI menu options 8-10 for non-loanable device management
- Add templates for non-loanable device CRUD operations
- Update README.md with new feature documentation
- Update REQUIREMENTS.md marking non-loanable devices as implemented
- Add gestiontablets.sh script

Implements: #porDefinir Registrar nuevos dispositivos no prestables
2026-06-09 23:54:38 +01:00
ijuanes
ac73e5dc93 docs: add technical specifications document
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-06-04 23:00:14 +01:00
ijuanes
5fd3aaf4c5 docs: add Spanish requirements document (platform/language agnostic)
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-06-04 10:12:18 +01:00
ijuanes
e9862f3d8d docs: add version control section to README
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-06-04 01:00:49 +01:00
ijuanes
ec79bc2ca3 feat(loans): add search and expandable past loans to user loans view
- Add search box to filter by user name, ID, tablet brand/model/serial
- Split loans into Current Loans (always visible) and Past Loans (collapsible)
- Past loans toggle with ▶/▼ indicator showing count
- All searchable data embedded in data-search attributes

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-06-04 01:00:17 +01:00
ijuanes
8a8d2f02fa Initial commit: Tablet lending system with user-tablet many-to-many relationship
- Database schema: tablets, users, loans (junction table)
- CLI app: minimal_app.py
- Web apps: app.py (Flask), simple_app.py (http.server)
- Features: loan management, search, user loans view, project notes
- Git structure: CONTRIBUTING.md, .gitignore

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-06-03 10:43:17 +01:00