phy1um / mycloud-go

Human-scale file management and sharing using a TUI over SSH

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MyCloud GO

Human scale file management and sharing

Very WIP. Created by Tom Marks

My Links: website | youtube | twitch

What

  • Single-binary distribution
  • Upload files over SCP
  • Manage files over a text interface over SSH
  • Generate keys to share files with HTTP links
  • Login solved by using existing public key authentication with SSH
  • Tag files for easier searching, state is stored in a sqlite database

Why

I wanted a solution to manage files and sometimes share them with people or download them easily. Simple text interfaces are cool, so this was an experiment rather than building a webapp. Doing all file management over SSH meant that some problems were solved out the gate.

Status

  • Simple file management over SSH (tag files, make access keys)
  • Download files using access keys over HTTP
  • Pretty thorough logging using zerolog (except for a few log.Println statements left)
  • Make it not look ugly (experimenting with charmbracelet/lipgloss)
  • Paginated file view (currently limited to 10 files :D)
  • More options for HTTP access keys

About

Human-scale file management and sharing using a TUI over SSH

License:MIT License


Languages

Language:Go 96.2%Language:Makefile 1.3%Language:Shell 1.3%Language:Dockerfile 1.2%