Managing Resources
Resources are files of any type: images, documents, videos, or anything else you want to store and organize.

Uploading Resources
File Upload

- Navigate to Resources in the top menu
- Click the Create button
- Use the file picker to select one or more files
- Fill in optional metadata:
- Name - Display name (defaults to filename if left empty)
- Description - Text description of the resource. Type
@to mention and link to notes, groups, or tags (see Mentions) - Tags - Labels for organization
- Groups - Associate with groups
- Notes - Link to existing notes
- Owner - The group that owns this resource
- Resource Category - Classify the resource type
- Series - Group related resources into a series
- Meta - Custom key-value metadata
- Click Save to upload
You can upload multiple files at once by selecting them in the file picker.
URL Import
Import resources directly from web URLs:
- Navigate to Resources > Create
- Instead of using the file picker, paste a URL into the URL field
- Optionally check Download in background for large files
- Fill in metadata as desired
- Click Save
The URL field accepts multiple URLs (one per line) for batch imports.
Background Downloads
For large files or slow connections, enable Download in background:
- The download starts immediately but you can navigate away
- Progress is tracked in the Download Cockpit (a floating button in the bottom-right corner of the screen)
- Failed downloads can be retried from the cockpit
Paste Upload
Paste images or files from the clipboard to create resources:
- Copy an image or file to the clipboard (e.g., screenshot, copied image from a webpage)
- Press Ctrl+V / Cmd+V anywhere in the application
- A modal appears showing a preview of the pasted content
- Set optional fields: tags, resource category, series
- Click Upload
The paste upload modal supports:
- Batch uploads -- paste multiple items and upload them together
- Duplicate detection -- if a file with the same hash already exists, the modal shows the existing resource ID
- Context awareness -- when pasting on a group or note detail page, or a list view filtered by a single owner, the uploaded resource is associated with that entity automatically
- Auto-close -- the modal closes and the page refreshes after a successful upload
Viewing Resources
Resource List
Resources display as cards. Each card shows:
- Thumbnail preview (click to open in lightbox)
- Resource name (click for detail page)
- File size, owner, category with avatar
- Expandable description
- Tags with inline edit button
- Checkbox for bulk selection
Resource Detail Page

Click a resource name to view its detail page, showing:
Main Content
- Full description
- Metadata panel (name, original name, dimensions, timestamps) with collapsible technical details (ID, hash, location, storage location)
- Related notes
- Related groups
- Series siblings (if the resource belongs to a series)
- Similar resources (when the hash worker is running)
Sidebar
- File size
- Preview thumbnail
- Tags (with inline editing)
- Image operations (for image files)
- Custom metadata
Previewing Files
Click a resource thumbnail to open images in the lightbox, view PDFs in the browser, or download other file types. The lightbox supports arrow-key navigation across all visible resources.
Editing Resources
Edit Page
- Click Edit on any resource detail page
- Modify fields as needed:
- Name
- Description
- Tags
- Groups
- Notes
- Owner
- Resource Category
- Series
- Custom metadata
- Click Save to apply changes
Note: You cannot replace the file itself when editing. To update a file, upload a new version and use the versioning system.
Inline Name Editing
On the resource detail page, click the resource name in the header to edit it directly. Changes save automatically when you click away or press Enter.
Tag Management
Manage tags directly from the resource detail page:
- Click the + button in the Tags section
- Search for and select tags
- Tags are added immediately
To remove a tag, click the x on the tag label.
Image Operations
Image resources have additional operations available in the sidebar:
Rotate
Rotate an image by a specified number of degrees. The UI provides a Rotate 90 Degrees button in the sidebar; the API accepts any integer angle:
- Navigate to the image resource
- In the sidebar, find Rotate 90 Degrees
- Click Rotate
Rotation creates a new version with the rotated content and clears cached thumbnails.
Recalculate Dimensions
If image dimensions appear incorrect:
- Navigate to the image resource
- In the sidebar, find Update Dimensions
- Click Recalculate Dimensions
This re-reads the image file and updates the stored width/height values.
Finding Similar Resources
Perceptual hashing finds visually similar images. On any image resource's detail page, the Similar Resources section shows matches as thumbnail cards sorted by similarity. Click Merge Others To This to combine duplicates into one resource.
This requires the background hash worker (enabled by default).
Deleting Resources
Single Resource
- Navigate to the resource detail page
- Click the Delete button in the header
- Confirm the deletion
Bulk Deletion
- In the resource list, select multiple resources using checkboxes
- Click the Delete Selected button in the bulk editor
- Confirm the deletion
Deleted files are backed up to the /deleted/ directory before the database record is removed. Files are only physically deleted from primary storage if no other Resources or versions reference the same hash. The backup naming format is {hash}__{id}__{ownerId}___{basename}.
Resource Metadata
Automatic Metadata
Automatically captured on upload:
- Original Name - The filename at upload
- Original Location - Source URL for imports
- Content Type - MIME type
- File Size - Size in bytes
- Hash - Content hash for deduplication
- Dimensions - Width/height for images
- Created/Updated - Timestamps
Custom Metadata
Add custom key-value pairs using the Meta Data section:
- In the create/edit form, find the Meta Data section
- Enter a key name
- Enter a value (supports text, numbers, JSON)
- Click + to add more fields
- Save the resource
Custom metadata is searchable and can be used in filters.
Free-Form Metadata Fields
The metadata editor renders dynamic key-value input rows. Each row has a key name field and a value field. Values are automatically coerced to typed JSON values:
| Input | Stored As |
|---|---|
true / false | Boolean |
null | Null |
42, 3.14 | Number |
2026-03-05 | Date string |
{"key": "val"} | JSON object |
| anything else | String |
Existing keys from other entities of the same type appear as autocomplete suggestions in the key name field, helping maintain consistent naming across resources.
Thumbnails
Thumbnails are generated automatically for supported file types:
| File Type | Requirements |
|---|---|
| Images | Built-in (HEIC/AVIF require ImageMagick) |
| SVGs | Built-in (oksvg rasterizer) |
| Videos | Requires FFmpeg |
| Office documents | Requires LibreOffice |
Thumbnails are generated on demand when first requested and cached in the database. For video files, the background thumbnail worker can pre-generate thumbnails.
Download Cockpit
The Download Cockpit manages background URL downloads and plugin action jobs:
- Access it via the floating button in the bottom-right corner, or press Cmd/Ctrl+Shift+D
- View active, pending, and completed downloads
- Pause and resume active downloads
- Retry failed downloads
- Cancel pending downloads
Each download shows:
- Source URL
- Progress percentage
- Download speed