Skip to content

eklairs/tlock

Repository files navigation

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)

    yay -S tlock
  • NixOS (with Flakes)

    Try out before installing ✨

    nix run "git+https://github.com/eklairs/tlock?submodules=1"

    Minimal configuration:

    # 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)

    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

  • Docker

    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

About

Two-Factor Authentication Tokens Manager in Terminal

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project

 

Languages