Panels

Code, Git & files

The editor, Git and file-explorer panels are the heart of the build loop in Deska — write code, see your changes, stage and commit, all without leaving the canvas.

The code editor

The editor panel is built on Monaco — the same editor that powers VS Code — with a file tree on the left and a tab bar across the top. Click a file in the tree to open it; tabs show a dot when there are unsaved changes.

  • Preview vs. pinned tabs — a single click opens a file in a temporary (italic) preview tab; double-click to pin it.
  • Save with Cmd/CtrlS. Saving an untitled buffer prompts for a location. Turn on Format on save in Settings to tidy files automatically.
  • Markdown preview.md and .mdx files get a preview toggle in the top-right corner.
NoteIf a file changes on disk while you have unsaved edits, a banner offers to reload or keep your version, so external changes (like a branch checkout) never silently overwrite your work.

The Git panel

The Git panel gathers version control into three tabs:

  • Changes — your working tree grouped into Staged, Unstaged and Untracked, each file tagged with a status badge. Click a file to open its diff; use the section buttons to stage or unstage everything.
  • Log — the most recent commits with author, date and message.
  • Branches — switch branches with a click, or create a new one. The header has Fetch, Pull, Push and Refresh.

A commit box sits at the bottom of the Changes tab. Write a message and press Cmd/CtrlEnter (or click Commit) once something is staged.

The file explorer

The file explorer is a git-aware tree of your project. File names carry small status badges — modified, untracked, deleted, conflicted — and ignored files appear dimmed.

  • Single-click to preview a file; double-click to pin it as a tab.
  • Right-click for the full menu: new file or folder, rename, copy, cut, paste, delete, or reveal in your system file manager.
  • Filter the tree with the search field, or flip to a Changes view that mirrors the Git panel.

A typical edit → commit loop

  1. Open a file from the file explorer and make your edits in the editor.
  2. Save with Cmd/CtrlS.
  3. In the Git panel’s Changes tab, click the file to review the diff, then stage it.
  4. Write a commit message and press Cmd/CtrlEnter.
  5. Push from the Git header — pull first if the remote is ahead.

Diff panels

Clicking a changed file opens a read-only, side-by-side diff in a new editor panel: original on the left, your working copy on the right, additions in green and removals in red. To edit, open the file normally instead of through the diff.

💡 Ideas+🐛 Bugs