Skip to content

secretium/secretium

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

67 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

secretium logo

Secretium – A smart self-hosted tool for sharing secrets to your friends, colleagues, or anyone!

Go version Go report Code coverage License

The Secretium project is a self-hosted tool for sharing secrets to your friends, colleagues, or anyone. The Open Source (or Community) edition of the project is a fully community-driven solution for personal use.

It is installed on your server as an isolated Docker container and only you own your secrets. To share your data, all you have to do is login to the beautiful administrative dashboard, create a secret, share the link and tell your friend the access code so that he/she can unlock it and see the data.

Features:

  • 100% free and Open Source under the Apache 2.0 license;
  • For any level of developer's knowledge and technical expertise;
  • Well-documented, with a lot of tips and assists from the authors;
  • Powered by the Go programming language, Templ & htmx libraries and Tailwind utility-first CSS framework;
  • Works with AES encryption algorithm for secure your data before storing it in the database;
  • Does not depend on the host GNU/Linux system, it runs completely in an isolated Docker container;
  • Supported automatic switching between the light/dark UI themes.

⚑️ Quick start

Here's minimal steps to run the Secretium on your local machine.

First of all, install Docker with the Compose plugin.

For the security reasons, create the TXT files for the sensitive data to use them with the Docker Secrets:

  • secretium_key.txt for the secret key to encrypt your data in the database;
  • secretium_master_username.txt for the master username to login to the dashboard as admin;
  • secretium_master_password.txt for the master password to login to the dashboard as admin.

Open the TXT files and paste your sensitive data:

echo "this-is-my-secret-key-123" > secretium_key.txt
echo "this-is-my-master-username" > secretium_master_username.txt
echo "this-is-my-master-password-123" > secretium_master_password.txt

Run the official quick-start.sh script from the Secretium repository:

wget -O - https://raw.githubusercontent.com/secretium/secretium/main/quick-start.sh | bash

Note

This script will automatically create a minimal docker-compose.yml file, create a folder for the database, run docker-compose up -d command to start the Secretium container (from the official Docker image) on port 8787, and remove the TXT files with the sensitive data after running container.

Open your browser, visit http://localhost:8787 and login to the admin dashboard with your master username and master password, which are defined in the previous steps.

That's it! πŸ”₯ Your Secretium container is up and running!

πŸ“¦ Other ways to quick start

Download a ready-made deb (for Debian, Ubuntu) and rpm (for CentOS) packages from the Releases page.

πŸ“– Complete user guide

We always treasure your time and want you to start using a really great product as soon as possible! Therefore, to get a complete guide to use and understand the basic principles of the Secretium project, we have prepared a comprehensive explanation of the project in this πŸ“– Complete user guide.

secretium docs banner

It is highly recommended to start exploring with short introductory articles "What is Secretium?" and "How does it work?" to understand the basic principle and the main components built into the Secretium project.

Next steps are:

  1. Prepare your remote server
  2. Create files with sensitive data
  3. Run installation script
  4. Edit Docker Compose file
  5. Run Secretium container

Hope you find answers to all of your questions! πŸ˜‰

🎯 Motivation to create

Very often in the workflow there is a need to send some important information to friends or colleagues (access data, important messages and so on). Usually such data is sent in an open and unprotected form, in private messages in WhatsApp/Telegram/Slack or in a work chat room.

The data hangs around in these channels forever until someone deletes it, making it questionable whether it's safe to store. Also, you have no control over this data, you can't tell for sure if your data will be shared with third parties.

πŸ’₯ The Secretium project solves this problem! πŸ’₯

Each secret created by Secretium is stored in the database in encrypted format using AES encryption algorithm and has a time limit for unlocking. You no longer have to worry that some of your data can be accessed at any time. If you want the secret to become inaccessible immediately after the first unlocking, you have that option too!

We developed this product originally for ourselves and have been using it for a long time within our development team and for communicating with external customers. That's why we took special care with the security of data storage and the look and feel of the UI and usability.

We can't wait for you to start using Secretium! πŸŽ‰

Note

Earlier, we have already saved the world twice, they were Create Go App and Gowebly (yep, that's our projects too). The GitHub stars statistics of these projects can't lie: more than 2.3k developers of any level and different countries start a new project through these CLI tools.

πŸ† A win-win cooperation

If you liked the Secretium project and found it useful for your tasks, please click a πŸ‘οΈ Watch button to avoid missing notifications about new versions, and give it a ⭐️ GitHub Star!

It really motivates us to make this product even better.

secretium give star

And now, I invite you to participate in this project! Let's work together to create and popularize the most useful tool for developers on the web today.

  • Issues: ask questions and submit your features.
  • Pull requests: send your improvements to the current.
  • Discussions: discuss and share your ideas.
  • Say a few words about the project on your social networks and blogs (Dev.to, Medium, Π₯Π°Π±Ρ€, and so on).

Your PRs, issues & any words are welcome! Thank you 😘

⚠️ License

Secretium is free and open-source software licensed under the Apache 2.0 License, created and supported by Vic Shóstak and the True web artisans team with 🩡 for people and robots. Official logo distributed under the Creative Commons License (CC BY-SA 4.0 International).

About

❗️ UNDER DEVELOPMENT ❗️ πŸ” A smart self-hosted tool for sharing secrets. To your friends, colleagues, or anyone!

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published