Archived
This repository is archived, please go to https://github.com/otentikapp/authenticator for future development.
Feeling bothered about having to switch devices when you want to enter an OTP code when logging into a website or service? Now you can use Otentik Authenticator to manage your OTP code. Otentik is a secure app to manage your 2-step verification (2FA) tokens for your online services. This app compatible with Google Authenticator.
Watch the demo video to see how it works.
This project is an Open Source project for contributing to The Supabase Open Source Hackathon.
Is this application finished yet? Yes and no. The main functions (OTP code generator and synchronization) are completed. I want this app to be available in multi-platform and on mobile devices.
You can download the binary at the release page. Currently only supports macOS with Intel chipset. Windows, Linux, and mobile versions are included in the roadmap.
This app was created during the Supabase Launch Week 5 Hackathon. The idea is based on my personal problem, everytime I want to log in to a website I have to reach for my phone just to get the OTP code. So I thought that having an application to manage OTP code that could sync to the desktop would be helpful.
This app uses Supabase for storing the collections and authenticating the user. Users can signup and log in using their email addresses. I have no plan for using social authentication. The sensitive data such as 2FA secret and backup code are encrypted with AES256 encryption before storing at Supabase.
- Supabase: auth and database.
- Tauri: for the desktop app.
- Rust: Tauri is using Rust.
- TypeScript: for type checking.
- React: for the UI frontend library.
- Vite: for the frontend tooling.
- Tailwind CSS: for the styling.
- Headless UI: create interactive UI.
The simple answer is: the binary file size is smaller rather than Electron.
At least you will need Nodejs >=16
and Rust >= 1.63
to develop this project, and your favorite IDE or code editor.
Use rustup to install Rust on your machine. Also, if you want to run Supabase instance at your
local machine, you will need Docker >= 20.10
and Supabase CLI.
Create .env
file (you can copy from .env.example
) then fill the VITE_SUPABASE_URL
and VITE_SUPABASE_ANON_KEY
values with yours.
For detailed explanation on how things work, check out Supabase documentation and Tauri documentation page.
- Account management
- Export & import collections
- Offline synchronization
- Create mobile version
- Create Windows version
- Create Linux version
If you discover any security-related issues, please send an e-mail to aris@duck.com instead of using the issue tracker.
Thank you for considering contributing to this project! If you want to start contributing or discover a security vulnerability within Otentik Authenticator, please send me a direct message on Twitter.
In general, I'd like to thank every single one who open-sources their source code for their effort to contribute something to the open-source community. Your work means the world! 🌍 ❤️
Currently, Aris Ripandi (@riipandi) is the only maintainer.
This project is open-sourced software licensed under the Apache License 2.0.
Copyrights in this project are retained by their contributors.
See the license file for more information.