dl
4 sites
No security coverage
Document Library
A comprehensive document management system with modern UI, hierarchical folders, version control, search, and download tracking.
Features
Core Features
- Document Upload & Management - Upload and organize documents with ease
- Hierarchical Folder Structure - Organize documents in nested folders with slug-based URLs
- Version Control - Track document versions with a changelog and file history
- Search & Filter - Advanced search by title, description, and tags with sorting options
- Download Tracking - Monitor document downloads with detailed analytics (user, IP, timestamp)
- User Permissions - Granular permission system with 12 distinct permissions
- Favorites - Users can mark documents as favorites for quick access
-
Admin Interface - Dedicated admin page at
/admin/content/documentswith filtering and bulk actions
Modern UI Features
- Responsive Design - Works perfectly on desktop, tablet, and mobile
- Clean Interface - Modern, card-based layout with intuitive navigation
- Drag & Drop Upload - Enhanced file upload experience
- Keyboard Shortcuts - Quick access with Ctrl+K (search) and Ctrl+U (upload)
- Smooth Animations - Polished user experience with subtle animations
- File Type Icons - Visual indicators for different file types (PDF, Word, Excel, etc.)
- Real-time Search - Client-side filtering with debounced input
Enhanced Features
- Statistics Dashboard - Overview of total documents, published/unpublished counts, and downloads
- Version History - Complete version tracking with notes and file preservation
- Bulk Operations - Select multiple documents for batch publish/unpublish/delete
- Activity Logs - Track who downloaded what and when with IP addresses
- Auto-hide Messages - Clean UI with auto-dismissing status messages
- Empty States - Helpful guidance when no content exists
- Breadcrumb Navigation - Easy navigation through folder hierarchy
- Folder Management - Create, edit, and delete folders with move/delete content options
Security Features
- SQL Injection Protection - All queries use parameterized statements and proper escaping
- XSS Prevention - Template auto-escaping and safe DOM manipulation
- CSRF Protection - Token validation on sensitive operations
- Access Control - Owner-based permissions with "manage all" override
- File Upload Validation - Extension and size restrictions
- Input Sanitization - All user input is properly validated and sanitized
Usage
Uploading Documents
-
Navigate to
/documents - Click the "Upload Document" button
-
Fill in the form:
- Document Title (required)
- Description (optional)
- Select Folder (dropdown with hierarchical options)
- Choose File (required, drag-and-drop supported)
- Version number (default: 1.0)
- Tags (comma-separated, optional)
- Published status (checkbox)
- Click "Upload Document"
Managing Documents
Viewing Documents:
-
Browse the main library at
/documents - Navigate folders by clicking folder names
-
Use the search at
/documents/search -
View favorites at
/documents/favorites -
Admin view at
/admin/content/documents
Editing Documents:
- Click on a document to view details
- Click the "Edit" button
- Update metadata or upload a new version
- Add version notes when uploading a new file
- Change folder assignment
Deleting Documents:
- Click the "Delete" button on the document page
- Confirm deletion (this removes all versions and related data)
- Requires 'delete documents' permission or ownership
Version Control:
- When uploading a new file during edit, a new version is created
- All previous versions are preserved with separate file storage
- Version history visible on the document detail page
- Each version tracks: file, version number, user, timestamp, notes
Folder Management
Creating Folders:
- Click "New Folder" on the library or folder page
- Enter folder name and description
- Select parent folder (or root)
- Folder slug auto-generated from name
Folder Features:
- Hierarchical nesting (up to 3 levels supported in routing)
- Unique slugs within the parent folder
-
Slug-based URLs:
/documents/folder-name/subfolder-name - Materialized path for efficient queries
- Document count display
- Move documents between folders via the edit form
Deleting Folders:
- Option to move contents to the parent or delete all
- Cascade updates for child folders
- Owner or 'manage all folders' permission required
Admin Interface
Navigate to: /admin/content/documents
Features:
- View all documents (including unpublished)
- Statistics dashboard (total, published, unpublished, downloads)
- Filter by status (All/Published/Unpublished)
- Real-time search (title and owner)
- Sortable columns (title, owner, downloads, size, created)
-
Bulk selection with actions:
- Publish selected
- Unpublish selected
- Delete selected
- The folder column shows the folder name with a clickable link
- Action buttons: View, Edit, Download, Delete
Configuration
Navigate to: Administration > Document Library > Settings
General Settings
- Maximum File Size (MB) - Upload limit (1-1000 MB, default: 50)
- Allowed File Extensions - Space-separated list (default includes common office formats)
- Items Per Page - Pagination limit (5-100, default: 20)