/nuntius-go

Go + HTMX version. Nuntius is an interactive anonymous messaging webapp with a dare game.

Primary LanguageGo

Nuntius Go

Nuntius is an interactive anonymous messaging webapp with a dare game. Built with Go, HTMX, Templ and PostgresQL. This is a clone of the original nuntius built with NextJS... Goal of this project was to experiment with the golang, htmx and templ stack.

Explored Features

  • Templ + HTMX for server side rendering and client side interactivity
  • Google oauth2
  • Session storage with gin and postgres
  • Send and receive anonymous messages
  • Clean architecture pattern

Development

Ensure you have docker and the compose plugin installed and setup on your machine

Run the following command to start the server

docker compose up

Navigate to localhost:8080 on your browser to view the app

Architecture Overview

cmd/ # Main application entry point
config/ # Application configuration ( env variables )
internal/
   |-- app/
   |   |-- components/ # Htmx + Templ components
   |   |-- db/ # Database connection
   |   |-- drivers/ # External services ( HTTP client )
   |-- core/
   |   |-- domain/ # Core domain data models
   |   |-- service/ # Core business logic

TODO

  • Containerize with docker
  • Websockets implementation

Contact