Your files deserve better.

Phials turns the file manager into a real workspace: write like a modern notes app, organize like a personal database, preview anything. Local-first, extensible, and built for native performance.

Phials browsing the Downloads folder with date-grouped files and a macOS app installer preview

A note from the developer

I've been making software for over 7 years, the better part of 4 of them have been building this in my free time (and more recently, full-time). Phials is a passion project built on late nights, my partners infinite patience to let me ramble at her about code, and a lifelong obsession with productivity apps.

AI is a useful tool, and has definitely been a great help in getting Phials to this point, but vibes alone don't build great software. Every decision and every line of code has been thought through with a deep care about how it works and how it feels to use.

I hope it shows,
- Eli

Introducing Vials.

Turn any folder into a workspace.

  • Custom Properties
  • Global Tags
  • File Notes
  • Saved Views
  • Relations and Wikilinks
A folder today
Name
Modified
Size
Tag
meeting-notes.md May 248 KB
requirements.pdf May 221.2 MB
research-brief.docx May 20840 KB
timeline.md May 184 KB
action-items.md May 163 KB
vendor-contract.pdf May 122.4 MB
6 files, 0 folders
The same folder, as a Vial
Name
Type
Modified
Tags
Checkbox
meeting-notes.md MarkdownMay 24
Research
requirements.pdf PDFMay 22
Reference
research-brief.docx WordMay 20
Search tags…
Research
Draft
Reference
Client
timeline.md MarkdownMay 18
Client
action-items.md MarkdownMay 16
Research
vendor-contract.pdf PDFMay 12
Client
6 files, 0 folders

Add notes to your files.

Add documents with rich content to every file.

  • A real block-based document editor
    No more hand-written Markdown.
  • Wikilinks and embeds
    Reference other files, embed images, and more.
Website redesign requirements

The PDF holds the brief. This note holds everything around it: open questions, decisions, and the headings and lists the file itself cannot carry.

Travels with the Vial: notes are stored alongside your files. Back up or sync the folder and the context comes with it.

Empty - type / for blocks

Open fewer apps.

Rich previews and built-in editors.

  • Markdown
  • Spreadsheets
  • Images
  • Code
  • PDFs
  • and more...

Open to a markdown file

project-brief.md

Project brief

Editing the file itself, full size, in its own tab. The same block editor that powers notes, here on a plain .md file on disk.

  • Lock the launch date
  • Sign off on the hero copy
  • Final pass on the pricing page

Empty - press / for commands.

Crop photos, tweak code, or edit spreadsheets.

Built-in editors for the small fixes.

Image editor
City skyline at dusk with lit buildings
Code & Markdown
TS
import type { Pane } from './pane';
import type { ViewManager } from './view';

export async function saveActivePane(pane: Pane): Promise<void> {
  if (!pane.isDirty()) return;

  await pane.save();
  pane.markClean();
}

export function focusPaneAfterSave(view: ViewManager, pane: Pane): void {
  view.setActivePane(pane.id);
}
CSV editing
inventory.csv
100%
SKUQtyStatus
1CAM-042128In stock
2LENS-1112Low
3BAT-0964In stock
4TRIP-038Low
5BAG-1741In stock
6CARD-88256In stock
7MIC-0419Low

Thumbnails that look like the file.

City skyline at dusk with lit buildings
city-skyline.jpg

Browse & arrange

Arrange the folder around the task.

  • Six view modes
  • Filter, sort, group
  • Multiple panes
Details
Name
Modified
design-brief.pdf May 24
launch-deck.key May 22
hero-shot.jpg May 21
copy-v3.md May 20
walkthrough.mp4 May 18
budget.xlsx May 15
assets-final.zip May 12
Thumbnails
design-brief.pdf
launch-deck.key
City skyline at dusk with lit buildings
hero-shot.jpg
copy-v3.md
Portrait of a person outdoors
walkthrough.mp4
budget.xlsx
assets-final.zip
Column
Tree
Projects
2026
cover.jpg
Archive
Boards
To Do 2
city-skyline.jpg
city-night.png
In Review 1
portrait-01.jpg
Done 1
landscape.jpg
Calendar
MonTueWedThu
5
deck.key
6
7
notes.md
refs.zip
8

Stacked filters. Layered sorts. Group by anything.

Status · Review or Done AND Tags · has Client
Modified then Name then
Status
Name
Type
Modified
Tags
Checkbox
launch-deck.key KeynoteMay 22
Client
hero-shot.jpg JPEG imageMay 21
ClientAsset
copy-v3.md MarkdownMay 20
Draft
walkthrough.mp4 MP4 videoMay 19
ClientAsset
design-brief.pdf PDFMay 24
Research
assets-final.zip ArchiveMay 18
Reference
budget.xlsx SpreadsheetMay 15
Reference
app.js JavaScriptMay 14
Reference
8 files, 0 folders

Split panes.

Work multiple folders at once.

design-brief.pdf
launch-deck.key
City skyline at dusk with lit buildings
hero-shot.jpg
copy-v3.md
Portrait of a person outdoors
walkthrough.mp4
budget.xlsx
assets-final.zip
Name
Modified
design-brief.pdf May 24
launch-deck.key May 22
hero-shot.jpg May 21
copy-v3.md May 20
To Do 2
city-skyline.jpg
city-night.png
In Review 1
portrait-01.jpg
Done 1
landscape.jpg
Projects
2026
cover.jpg

Restore the whole tab.

Saved Workspaces

Keep the exact state of a tab to return to later for frequent workflows. Saves tab splits, selected view modes, and view overrides to a quick to access preset.

Name
Type
Modified
Size
Tag
References FolderMay 2412 items
Research
design-brief.pdf PDF documentMay 232.4 MB
Draft
hero-shot.jpg JPEG imageMay 221.8 MB
Asset
copy-v3.md MarkdownMay 2012 KB
Draft
walkthrough.mp4 MP4 videoMay 1845.2 MB
Asset
References
design-brief.pdf
City skyline at dusk with lit buildings
hero-shot.jpg
copy-v3.md
Portrait of a person outdoors
walkthrough.mp4

Customization

A workspace in your colors.

  • 37 built-in themes
  • Reactive icons
  • Community themes
Appearance
Dark Theme
Name
Type
Modified
Size
Tag
Projects FolderToday16 items
Media FolderToday16 items
hero-composite.psd ImageToday42 MB
Edit
release-notes.md MarkdownYesterday18 KB
Draft
walkthrough.mov VideoMar 12128 MB
Favorite
press-kit.pdf PDFMar 1016 items
4 files, 2 folders

Tech stack.

Native performance, local first.

  • Rust
  • Tauri
  • Svelte 5
  • Vite
  • PhoundryUI
  • Rust handles the heavy work

    File I/O, searching, parsing metadata, generating thumbnails, and most file operations happen in rust background threads, not in page javascript.

  • Tauri, not Electron

    Doesn't ship with whole chrome webview, gives full access to Rust, smaller application size, first-class mobile support (wink, wink). Tauri is a no-brainer.

  • Svelte 5

    'Insert proselytizing rant here'. Jokes aside, the primary reason for Svelte is it's been my main development framework for the better part of a decade.

  • PhoundryUI

    A bespoke, open-source, completely custom, and highly opinionated Svelte UI library built by me, specifically for desktop applications.

  • Phormat

    A source canonical realtime block-based editor for markdown. Open source release in the future.

  • Phials Icons

    400+ and growing handmade icons in monochrome and full color specifically made for Phials. Will be rolled into PhoundryUI in the future.

Plugins

Built to be extended.

  • Provider API
  • GitHub builds
  • Declared permissions

The provider toolkit

Each provider wires into a specific surface, the same ones built-ins use. Commands are context-aware with when clauses. Previews match by extension, MIME type, or custom logic.

Command
One action for toolbar, palette, shortcuts, and context menus. Users remap keys and placements.
Preview
Thumbnails, pane viewers, and fullscreen editors. Previews can be interactive, not read-only.
Metadata
Extract EXIF, ID3 tags, or frontmatter. Data becomes sortable columns and filter fields.
View
Reinvent the file browser: calendar, Kanban, gallery, or graph layouts in the view switcher.
Module
Dockable tools in the sidebar, bottom panel, or center area that stay open while you browse.
Theme
Light and dark palettes via CSS variables, ready for the app theme picker.
markdown-plugin.ts
export const plugin: PhialsPlugin = {
  id: 'markdown',
  name: 'Markdown',
  version: '1.0.0',
  providers: [
    {
      type: 'command',
      id: 'md.cmds',
      name: 'Markdown',
      commands: [{
        id: 'md.new',
        label: 'New markdown file',
        action: (ctx) => { /* … */ },
        defaultPlacements: [{ area: 'toolbar', priority: 10 }],
      }],
    },
  ],
};
Eli Wimmer

About me

My name is Eli Wimmer. I'm a 34yo software developer and computerphile who's been building stuff since my OG Runescape fansite I made when I was 12 years old. Phials is a passion project I've been building solo for the better part of four years out of a desire to have a file manager that doesn't suck. I also build Flylighter, a powerful web clipper for Notion.