Skip to content

arush361/MacAuthenticatorApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Desktop Authenticator

A Minecraft-themed desktop authenticator app for macOS, built with Electron. This application provides a secure and stylish way to manage your two-factor authentication (2FA) codes with a unique Minecraft-inspired interface.

Desktop Authenticator Screenshot

Features

  • 🎮 Minecraft-inspired UI with pixelated fonts and block-style elements
  • 🔐 Secure TOTP (Time-based One-Time Password) generation
  • 📱 Multiple QR code input methods:
    • File upload
    • Drag & drop
    • Clipboard paste (⌘V)
    • Screenshot support
  • 🌙 Dark mode support
  • 💾 Local encrypted storage using SQLite
  • 🖥️ Native macOS integration

Installation

Prerequisites

  • macOS 10.12 or later
  • Node.js 14.0.0 or later
  • npm (usually comes with Node.js)

For Users

  1. Download the latest release from the Releases page
  2. Choose either:
    • .dmg installer: Double-click and drag the app to your Applications folder
    • .zip archive: Extract and move the app to your Applications folder
  3. When first opening the app, right-click (or Control-click) and select "Open" to bypass macOS security

For Developers

  1. Clone the repository:
git clone https://github.com/yourusername/desktop-authenticator.git
cd desktop-authenticator
  1. Install dependencies:
npm install
  1. Run in development mode:
npm start
  1. Build the application:
npm run dist

The built application will be available in the dist directory.

Usage

  1. Launch the Desktop Authenticator app
  2. Click "Add Account" to add a new 2FA account
  3. Add accounts using one of these methods:
    • Scan a QR code (drag & drop or paste from clipboard)
    • Manually enter the secret key
  4. Your 2FA codes will automatically update every 30 seconds

Security Features

  • Local data encryption using electron-store
  • Secure secret key storage in SQLite database
  • No cloud sync or external data transmission
  • Memory-safe implementation with better-sqlite3

Development

Project Structure

desktop-authenticator/
├── main.js           # Main Electron process
├── renderer.js       # Renderer process
├── index.html        # Main application window
├── package.json      # Project configuration
└── README.md         # This file

Technologies Used

Building

To build for different platforms:

# Build for macOS
npm run dist

# Build specific format
npm run dist -- --mac --dmg  # DMG only
npm run dist -- --mac --zip  # ZIP only

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Acknowledgments

  • Minecraft for UI inspiration
  • VT323 font by Peter Hull
  • The Electron community for excellent documentation and examples

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published