Skip to content

A nerd-friendly web application for managing gift wishlists for families and friends

Notifications You must be signed in to change notification settings

balazs4/neliste

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Neliste - Gift List Management

A simple web application for managing gift wishlists for families and friends, written in Go. Originally designed to help grandparents and other family members coordinate gift-giving for birthdays, Christmas, Easter, and other occasions.

Architecture

Technology Stack:

  • Backend: Go 1.25.5
  • Database: SQLite (embedded)
  • ORM: sqlc (type-safe SQL)
  • Web Server: Standard library net/http
  • Templates: Go html/template
  • Testing: Hurl (HTTP testing tool)

Application Structure:

  • CLI-based administration tool
  • Simple web interface for end users
  • Single-file SQLite database
  • Stateless web server with cookie-based authentication

Getting Started

Prerequisites

Installation

# Clone the repository
git clone <repository-url>
cd neliste

# Build the application
make neliste

# Run end-to-end tests
make test

Usage

Environment Variables

The application supports the following environment variables:

  • NELISTE_DB - Database file path (default: neliste.db)
  • NELISTE_URL - Base URL for the application (used for generating invite links and determining cookie security)
  1. Setup Database

    neliste setup -title "Christmas 2025"
  2. Add Items to Wishlist

    neliste add -url "https://amazon.de/dp/XYZ123" -name "Wireless Headphones"
    neliste add -url "https://example.com/book" -name "Bestseller Book"
  3. Invite Users

    neliste invite -name "Grandma"
    neliste invite -name "Uncle John"

    Output: invite for 'Grandma' /invite/otp_abc123

  4. Start Web Server

    neliste serve -listen 127.0.0.1:4444
  5. User Flow

    • User visits /invite/{otp} link
    • Confirms their identity
    • Receives authentication cookie (14 days valid)
    • Views wishlist and clicks items they plan to buy
    • Clicks are tracked

Author

balazs4

Licensce

MIT

What does neliste mean?

a colloquial contraction of the German „ne Liste“ (short for „eine Liste“, “a list”).

Da wird jedes Mal (Geburtstag, Ostern, Weihnachten,…) ne Liste gemacht, an alle verteilt, jeder kann sich was aussuchen und dann muss man wieder schreiben wer was geklickt hat

-- https://github.com/arkasai

Notice: AI generated documentation; the code —and any defects— were written entirely by hand.

About

A nerd-friendly web application for managing gift wishlists for families and friends

Topics

Resources

Stars

Watchers

Forks