https://github.com/eklairs/tlock
Two-Factor Authentication Tokens Manager in Terminal
https://github.com/eklairs/tlock
charmbracelet golang terminal unixporn
Last synced: 7 months ago
JSON representation
Two-Factor Authentication Tokens Manager in Terminal
- Host: GitHub
- URL: https://github.com/eklairs/tlock
- Owner: eklairs
- License: mit
- Created: 2024-04-19T11:35:33.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-09-01T13:57:58.000Z (about 1 year ago)
- Last Synced: 2025-02-23T16:07:57.202Z (8 months ago)
- Topics: charmbracelet, golang, terminal, unixporn
- Language: Go
- Homepage:
- Size: 849 KB
- Stars: 174
- Watchers: 2
- Forks: 5
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
![]()
# TLock
TLock is an open-source tool to store and manage your authentication tokens securely. It gives users a centralized solution to generate and maintain time-based one-time passwords (TOTP) and other token types for secure authentication processes. By consolidating multiple authentication tokens into a single application, this 2FA manager streamlines the process of accessing accounts while ensuring high security.
## ⭐ Features
- 🚀 Cross-platform - Works perfectly on Windows, Linux, and MacOS.
- ⚡️ Blazingly Fast app written in Golang.
- 👥 Supports multiple users, each protected optionally with a password.
- ⌨️ Traverse through the UI with customizable key keybindings (can have different keybindings per user).
- 📁 Supports organizing tokens inside of folders.
- 🌟 Supports industry-standard TOTP and HOTP-based tokens.
- 📷 Easily add tokens from the screen or the advanced token editor.
- 🎨 Supports multiple themes to sync the TLock theme with your favorite color scheme.
- 😀 Show icon of the issuer if it is supported.>[!NOTE]
>For showing the provider's icon, you must have Nerd Fonts installed>[!NOTE]
>To make screenshot feature work on wayland, you need to install grim## ⬇️ Installation
- **Arch Linux** (with AUR helper, like yay)
```fish
yay -S tlock
```- **NixOS** (with Flakes)
Try out before installing ✨
```fish
nix run "git+https://github.com/eklairs/tlock?submodules=1"
```Minimal configuration:
```nix
# flake.nix
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
tlock.url = "git+https://github.com/eklairs/tlock?submodules=1";
tlock.inputs.nixpkgs.follows = "nixpkgs";
};outputs = inputs @ { self, nixpkgs, tlock, ... }:
{
# Change hostname etc. as needed
nixosConfigurations.hostname = let
system = "x86_64-linux";
lib = nixpkgs.lib;
in lib.nixosSystem {
inherit system;
modules = [
{
environment.systemPackages = [
tlock.packages.${system}.default
];
}
./configuration.nix
];
};
};
}
```- **Windows** (with scoop)
```fish
scoop bucket add tlock https://github.com/eklairs/tlock
scoop install tlock
```- **Manually**
You can also download the binary based on your operating system to use TLock from [releases](https://github.com/eklairs/tlock/releases)
- **Docker**
```fish
docker run -it --rm ghcr.io/eklairs/tlock:latest
```## 🖼️ Screenshots
![]()
![]()
![]()
## 🏎️ Running
Open your terminal and type `tlock` to start using tlock!
## ❤️ Contributing
Did you come across a bug or want to introduce a new feature? Don't hesitate to open up an issue or pull request!
## License
[MIT](https://github.com/eklairs/tlock/raw/main/LICENSE)