What is a Workspace?
A workspace in Opal is a complete project environment that includes:- File system: Directory structure with markdown files, images, and assets
- Git repository: Integrated version control (optional)
- Build configuration: Settings for static site generation
- Storage: Local browser storage or native file system access
- Edit history: Automatic tracking of content changes
- Thumbnails: Cached image previews
Creating a Workspace
You can create a workspace in multiple ways:- Start from Scratch
- Import from GitHub
- Upload Files
Create an empty workspace with default files:
Storage Options
Opal supports two storage backends:Browser Storage (OPFS)
Browser Storage (OPFS)
Origin Private File System storage runs entirely in your browser:
- No installation required
- Works offline
- Isolated per browser/origin
- Fast read/write performance
- Data persists across sessions
- Cannot access from other applications
Native File System
Native File System
File System Access API connects to a folder on your computer:
- Files stored on your local disk
- Access from other applications
- Survives browser cache clearing
- Requires permission grant on each session
- Works with existing git repositories
- Changes sync to disk immediately
Native file system access requires a modern browser with File System Access API support (Chrome, Edge)
Managing Files
File Tree Operations
The file tree sidebar provides full file management:- Create: Right-click to add new files or folders
- Rename: Right-click and select Rename or press
F2 - Move: Drag and drop files between folders
- Delete: Move files to trash with right-click or
Deletekey - Duplicate: Right-click and select Duplicate
- Copy/Paste: Copy files and paste in different locations
Trash System
Deleted files are moved to a.trash folder:
Workspace Settings
Each workspace can be configured independently:Build Strategy
Choose how your workspace content is built:- Freeform: No build step, files are published as-is
- Static Site: Generate a static site from markdown and templates
File Uploads
Opal supports multiple upload formats:- Markdown:
.md,.mdxfiles - Images: JPEG, PNG, GIF, WebP, SVG (auto-optimized)
- Documents:
.docxfiles (converted to markdown) - Assets: CSS, JavaScript, JSON, HTML files
Document Conversion
Document Conversion
When you upload
.docx files, Opal automatically:- Extracts text content and formatting
- Converts to markdown syntax
- Preserves headings, lists, and basic formatting
- Extracts embedded images
- Creates a
.mdfile in your workspace
Complex formatting may not convert perfectly. Review converted files for accuracy.
Multi-Workspace Management
You can create and manage multiple workspaces:- Switch between workspaces from the home screen
- Each workspace is completely isolated
- Workspaces can have different storage backends
- Git repositories are per-workspace
- Import/export workspaces independently
Workspace Metadata
Each workspace stores:- Name: Unique identifier (slugified)
- GUID: Internal unique ID
- Created timestamp: When the workspace was created
- Build configuration: Build strategy and settings
- Remote connections: Git remotes and deploy destinations
Performance Considerations
Exporting and Backup
Protect your work by exporting workspaces:- Git sync: Push to GitHub regularly (recommended)
- Manual download: Download workspace as ZIP
- Native storage: Files are already on disk if using native file system