Thomscoder Harmony Save

An experiment with WebAssembly ✨ Harmony brings Git in your browser! Create and/or modify local files, on the fly, in your browser. Use git branches and commits to track them.

Project README

Harmony

Quickly upload, create, open, read, modify and download files, on the fly.

Harmony also keep tracks of your changes or "workspaces" through git branches and git commits, all in-memory in your browser.

Just me experimenting with WebAssembly.

Harmony implements via WebAssembly a virtual file system and a in-memory version of Git, written in Go, (a revisited version of my Nova project) where all the file operations happen.

Save and switch between your "workspaces" in few clicks or even quicker with shortcuts.

Harmony supports git commits and branches.

https://user-images.githubusercontent.com/78874117/193465430-7a76e848-1e5b-406a-b2b0-99869a031f3a.mp4

https://user-images.githubusercontent.com/78874117/194714002-f6ec20c5-c7cc-4144-85e1-0bdb65097b7d.mov

Create branches, create files, upload files, change them, save them, commit them, switch branches, repeat.

Simply refresh the page to restart anew.

Run it locally

Requires pnpm, `go

  • Install go packages -
$ pnpm dev

This will compile Nova via make, and also spin up a reverse proxy

Important

Prepend http://0.0.0.0:5000 to the repo url in nova/virtual/functions.go (to not incur in CORS errors - in Development)

Open Source Agenda is not affiliated with "Thomscoder Harmony" Project. README Source: thomscoder/harmony

Open Source Agenda Badge

Open Source Agenda Rating