An open API service indexing awesome lists of open source software.

https://github.com/jack5341/super-dollop

Encrypt your files or notes by your GPG key and save to MinIO or AWS S3 easily!
https://github.com/jack5341/super-dollop

amazon-s3 cobra golang gpg hacktoberfest minio-server

Last synced: 3 months ago
JSON representation

Encrypt your files or notes by your GPG key and save to MinIO or AWS S3 easily!

Awesome Lists containing this project

README

          














# Super Dollop
**Super Dollop** can encrypt your files and notes by your own [GPG](https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) key and save them in [S3](https://docs.aws.amazon.com/sdk-for-go/api/service/s3/) or [minIO](https://docs.min.io/docs/golang-client-api-reference.html) to keep them safe and portability, also you can use **Super Dollop** for encrypt your file quickly to print it. So with **Super Dollop** you'll solve your keep your notes with security problem easily with Gopher.
By the way if you want to encrypt your file you can print it directly to your terminal with `-p` easily.

| | |
|-- |-- |
![list-command](https://user-images.githubusercontent.com/53150440/132383823-3970f586-1281-4bde-8f9d-6e6463263b48.gif) | ![print](https://user-images.githubusercontent.com/53150440/132392553-6189f7bc-494f-472e-b6b4-335e45d539cf.gif)

```sh
dollop list
```

# Requirements
- [Go](https://golang.org/) `>= 1.16
- [MinIO](https://docs.min.io/docs/minio-quickstart-guide.html)
- Core dependencies: `gnugpg`, `gpgme>=1.7.0`, `libgpg-error`

# Installation

Install [gnupg](https://www.gnupg.org/)

```sh
sudo apt-get install gnupg
```

Set your environments to your terminal

> .zshrc
```sh
# Environment variables for MinIO
export MINIO_ENDPOINT=127.0.0.1:9000
export MINIO_ACCESS_KEY=admin
export MINIO_SECRET_KEY=secretadmin
export MINIO_GPG_ID=GPG-ID
export MINIO_BUCKET_NAME=dollop-files
```

Get your [MinIO](https://docs.min.io/docs/minio-quickstart-guide.html) container.

> docker-compose.yml
```yaml
version: "3"
services:
s3:
image: "minio/minio"
hostname: "storage"
restart: "no"
volumes:
- data:/data
ports:
- "9000:9000"
- "9001:9001"
entrypoint: ["minio", "server", "/data","--console-address",":9001"]
networks:
- local
volumes:
data:

networks:
local:
```

```
// Pull minio/mc
docker pull minio/mc

// Run pulled image with docker-compose.yml file
docker-compose up
```

Give first gas to **Super Dollop**

```sh
// clone the super-dollop repository
git clone https://github.com/jack5341/super-dollop && cd super-dollop

// try to run list command
go run . list
```

# Usage
```sh
dollop [FLAGS] [OPTIONS]
```

```sh
COMMANDS:
completion generate the autocompletion script for the specified shell
dec List your all encrypted files and notes.
enc A brief description of your command
help Help about any command
list List your all encrypted files and notes.
```

# Cli Schema

| Commands | Flags |
| :-------- | :------- |
| `dec` | `-n --name` |
| `enc` | `-f --file -n --note -p --print` |
| `list` | `-d --delete` |

## Feedback

If you have any feedback, please reach out to us at nedim.akar53411@gmail.com

## License

[Apache-2.0](https://choosealicense.com/licenses/apache-2.0/)