Skip to content

chunkhang/simple-totp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

simple-totp

A simple TOTP CLI

Tired of fumbling around with Google Authenticator just to generate a simple TOTP token? Well, simple-totp is the simplest TOTP CLI you will ever need. Just set it up once, and you are ready to go. simple-totp offers nothing fancy beyond printing out TOTP tokens on the terminal.

Demonstration

demonstration

Installation

It should be quite easy to install simple-totp, provided you have python >= 3.

pip install simple-totp

Usage

Running simple-totp cannot be simpler.

otp

Configuration

simple-totp reads from the configuration file in ~/.otp.yml to generate TOTP tokens. All secrets are stored there as plain text, so just be mindful about it.

Here is the minimal configuration needed to verify that simple-totp is working properly:

totp:
  - secret: 7TO66UM5PZ2M5CB2GWZMYZX5YAVWATQX

To generate multiple TOTP tokens with proper namespacing:

totp:
  - issuer: google
    name: test@example.com
    secret: 7TO66UM5PZ2M5CB2GWZMYZX5YAVWATQX
  - issuer: facebook
    name: test@example.com
    secret: HXDMVJECJJWSRB3HWIZR4IFUGFTMXBOZ

By default, simple-totp generates 6-digit TOTP tokens where the refresh interval is every 30 seconds. If you need to override this behavior, you may try the following:

totp:
  - issuer: google
    name: test@example.com
    secret: 7TO66UM5PZ2M5CB2GWZMYZX5YAVWATQX
    digits: 10
    interval: 60

Development

Before developing, make sure just is installed. This project uses just as the command runner instead of the usual make.

Start a virtualenv if needed. It is highly recommended for development.

Install the dependencies for the project:

just setup

After that, install simple-totp in editable mode:

just install

Now, you can start developing. You can run the CLI directly:

otp

Distribution can be done with:

just publish