Git Product home page Git Product logo

cshare's Introduction

cShare

cshare Logo

A command-line tool to share sensitive text data across devices owned by you.

๐Ÿ’ก Motivation

With my old potato PC, I was converting it into my home server for streaming, remote development, and experimenting with random stuff. For this installation, I decided to go with Manjaro as my base OS.

Manjaro is a free and open-source operating system based on Arch Linux. It uses the same package manager (Pacman) and build system (AUR) as Arch. It is considered a secure operating system as it uses the Linux kernel and a variety of security-focused software and practices. Manjaro also follows the Arch Linux security policy and actively monitors it; overall, it's very secure.

I wasn't able to SSH to my home server because of Manjaro's security. I needed to share some security keys from my Mac with the server. I tried everything I could to copy my key but couldn't.

I needed a simple tool that I could instal just like curl (pacman -S curl). I didn't even know aboutscp or maybe I needed to tweak some firewall settings. Ultimately, I decided to build cShare. This is how I was inspired to make this app.

โš™ Working

  • It can be installed using a single command, "go instal github.com/JammUtkarsh/cshare," just like any other CLI app.Behind the scenes, it fetches the source code from the repository temporarily, builds it, and stores the binary in $GOROOT/bin. If this path is added to your shell, then you can access it like any other command.
  • The data is centrally stored on the server. cShare queries the database via HTTP requests.
  • in $HOME/.cshare/config.json which contains the JWT token required for each subsequent request.

๐Ÿ”ง How we built it

  • Cobra is used to build the app's basic structure and subcommands.
  • Viper manages the configuration and its storage mechanisms.
  • The standard library is used for other operations such as making an HTTP request and displaying the test.

cshare's People

Contributors

jammutkarsh avatar

Stargazers

Roman avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.