Skip to content

About

GolpoPhone: Anonymous Voice Messaging Platform

Resources

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

GolpoPhone: Anonymous Voice Messaging Platform

GolpoPhone is a platform that allows users to send and receive anonymous voice messages. This project is built with Go and HTMX.

Features

  • Generate temporary links (valid for 24 hours) to receive voice messages
  • Record anonymous voice messages up to 60 seconds
  • Receive email notifications when messages are received
  • Voice messages expire after 3 days
  • Clean, modern UI with voice waveform visualization

Technology Stack

  • Go (backend)
  • HTMX (frontend interactivity)
  • Templ (Go HTML templating)
  • Echo (web framework)
  • TailwindCSS (styling)

Getting Started

Prerequisites

  • Go 1.24 or later
  • Make

Running the Application

  1. Clone the repository
  2. Build and run the application:
make build
./main

Or you can use the development mode with live-reloading:

make run
  1. Open your browser and navigate to http://localhost:8080

How It Works

  1. A user visits the homepage and enters their email to generate a unique link
  2. The user shares this link with friends (e.g., via social media)
  3. Friends can visit the link and record a 60-second voice message
  4. The user receives an email notification when a message is received
  5. The user can listen to the message by clicking the link in the email

API Endpoints

  • GET / - Homepage
  • GET /health - Health check endpoint
  • GET /version - Application version information (production builds only)
  • Various other endpoints for voice message functionality

Development

This project uses the following directory structure:

  • cmd/api: Application entry point
  • internal/handlers: Request handlers
  • internal/models: Data models
  • internal/server: Server configuration
  • internal/view: UI components (using Templ)
    • components: Reusable UI components
    • layout: Page layouts
    • pages: Full page templates

License

This project is licensed under the MIT License - see the LICENSE file for details.

MakeFile

Run build make command with tests

make all

Build the application

make build

Run the application

make run

Create DB container

make docker-run

Shutdown DB Container

make docker-down

DB Integrations Test:

make itest

Live reload the application:

make watch

Run the test suite:

make test

Clean up binary from the last build:

make clean

About

GolpoPhone: Anonymous Voice Messaging Platform

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages