Skip to content

userkace/truevoice-web

Repository files navigation

TrueVoice - AI Voice Authenticator

🎵

License: MIT React Vite Tailwind CSS

A powerful AI-powered voice authentication system that helps detect AI-generated voices with high accuracy.

🔗 Live Demo

Check out the live demo: https://truevoice-web-txdh.onrender.com/

🛠️ Backend Repository

The backend for this project is available at: GitHub - left-no-crumbz/thesis-backend

✨ Features

  • 🎤 Upload audio files for AI voice analysis
  • 🔍 Detect AI-generated voices with high accuracy
  • 📊 View detailed confidence scores
  • 📱 Responsive design for all devices
  • 🔐 Secure file handling and processing

🚀 Getting Started

Prerequisites

  • Node.js 20+ & npm/yarn

Installation

  1. Clone the repository:
    git clone https://github.com/userkace/truevoice-web.git
    cd truevoice-web

🧭 User Manual

Overview

TrueVoice is a Vite-powered React web application for vetting audio recordings. You can upload local .wav, .mp3, and other audio formats or browse predefined samples pulled from a public GitHub repository.

Prerequisites (Windows)

  • Docker Desktop with the WSL2 backend enabled and running.
  • Git for Windows for cloning the repository.
  • PowerShell or Windows Terminal for running commands.
  • (Optional) Node.js 20+ if you intend to run npm scripts without Docker.

Running Locally with Docker

  1. Ensure Docker Desktop is running.
  2. From the project root, build the image:
    docker build -t truevoice-web .
  3. Start a container that serves the production build through Nginx:
    docker run --rm -p 5173:80 --name truevoice-web truevoice-web
    • Port 5173 on your machine maps to the container’s port 80.
    • Add -d to run the container in the background if preferred.
  4. Navigate to http://localhost:5173 in your browser to access the app.
  5. Press Ctrl+C (or docker stop truevoice-web) to stop the container when finished.

Optional: Running Vite Dev Server (No Docker)

If you have Node.js installed and prefer hot module reloading:

npm install
npm run dev

Then open the URL shown in the terminal (defaults to http://localhost:5173).

Using the Application

  • Upload your own audio

    • Click inside the drop zone or drag audio files directly onto it. Only files with MIME types that start with audio/ are accepted.
    • Each upload triggers a request to the prediction endpoint configured in VITE_API_BASE_URL; results surface in the Recent Activity list with confidence scores.
  • Explore predefined samples

    • The “Audio Files” panel lists assets from the left-no-crumbz/truevoice-audio-files repository.
    • Click a directory to drill down or select a file to download it locally for further evaluation.
  • Review recent activity

    • Successfully analyzed files remain in the activity list until you select Clear All. Status indicators show whether a file is processing, completed, or encountered an error.

Troubleshooting

  • Port already in use: Stop any service listening on 5173 or map Docker to another host port (e.g., -p 8080:80).
  • Docker image rebuild: Run docker build --no-cache -t truevoice-web . if static assets appear outdated.
  • GitHub sample fetch errors: Verify outbound internet access—the audio library relies on unauthenticated GitHub REST calls and may hit rate limits on unstable connections.