server

module
v0.0.0-...-7b21f04 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 27, 2026 License: MIT

README ¶

🚀 Serving gopl.dev

templ live watch & reload

go tool templ generate --watch --proxy="http://localhost:8080" --cmd="go run ./cmd/server/main.go"

tailwind watch

tailwindcss -i ./frontend/assets/input.css -o ./frontend/assets/output.css --watch

linting

https://golangci-lint.run/docs/welcome/install/local/

golangci-lint run

openapi & swagger

https://github.com/swaggo/swag
swag fmt --dir server/handler
swag init --parseDependency --parseDepth 1 --dir server/handler -g handler.go -o server/docs

internal devtools

go run ./cmd/cli/main.go rde
Reset dev environment (recreate DB, apply migrations & create default user). Useful during active development when you messed with the DB or need a clean state.

go run ./cmd/cli/main.go sd
Will seed data to the database. By default, it seeds all available data. You can specify an entity and a count, for example: go run ./cmd/cli/main.go sd users 1000. Run go run ./cmd/cli/main.go ? sd to see available options and a detailed description.

Directories ¶

Path Synopsis
app
Package app ...
Package app ...
ds
Package ds (Data Structure) All data models belonging to the app are stored here.
Package ds (Data Structure) All data models belonging to the app are stored here.
ds/prop
Package prop provides property type definitions and utilities for handling different kinds of properties .
Package prop provides property type definitions and utilities for handling different kinds of properties .
repo
Package repo ...
Package repo ...
service
Package service ...
Package service ...
session
Package session provides primitives for managing user sessions using JSON Web Tokens (JWT).
Package session provides primitives for managing user sessions using JSON Web Tokens (JWT).
Package cli provides a lightweight CLI framework with support for positional arguments, named parameters, and flags.
Package cli provides a lightweight CLI framework with support for positional arguments, named parameters, and flags.
cmd
cli command
Package main is the entry point for the CLI application.
Package main is the entry point for the CLI application.
cli/commands
Package commands ...
Package commands ...
new_db_migration command
New DB migration.
New DB migration.
server command
Package main is the entry point of the server application.
Package main is the entry point of the server application.
Package diff provides word-level diff visualization with context-aware hunk merging.
Package diff provides word-level diff visualization with context-aware hunk merging.
Package email ...
Package email ...
Package file ...
Package file ...
Package frontend handles the application's user-facing elements, such as serving static files and rendering HTML templates
Package frontend handles the application's user-facing elements, such as serving static files and rendering HTML templates
component
templ: version: v0.3.960
templ: version: v0.3.960
component/icon
templ: version: v0.3.960
templ: version: v0.3.960
layout
templ: version: v0.3.960
templ: version: v0.3.960
page
templ: version: v0.3.960
templ: version: v0.3.960
oauth
provider
Package provider manages OAuth identity provider types and their validation.
Package provider manages OAuth identity provider types and their validation.
Package server ...
Package server ...
docs
Package docs Code generated by swaggo/swag.
Package docs Code generated by swaggo/swag.
endpoint
Package endpoint ...
Package endpoint ...
handler
Package handler contains HTTP handlers for the app's API endpoints.
Package handler contains HTTP handlers for the app's API endpoints.
middleware
Package middleware ...
Package middleware ...
request
Package request ...
Package request ...
response
Package response provides structures and utilities for API responses.
Package response provides structures and utilities for API responses.
Package test ...
Package test ...
factory/random
Package random provides utility functions for generating various types of random data.
Package random provides utility functions for generating various types of random data.
seed
Package seed provides helpers for seeding test and development data.
Package seed provides helpers for seeding test and development data.
Package tracing provides OpenTelemetry tracer initialization utilities.
Package tracing provides OpenTelemetry tracer initialization utilities.
Package worker provides a background job scheduler for running periodic maintenance tasks.
Package worker provides a background job scheduler for running periodic maintenance tasks.
cleanup_change_email_requests
Package cleanupchangeemailrequests ...
Package cleanupchangeemailrequests ...
cleanup_deleted_books
Package cleanupdeletedbooks provides a worker job for permanently removing soft-deleted books from the database after a retention period defined by ds.CleanupDeletedEntitiesAfterDays.
Package cleanupdeletedbooks provides a worker job for permanently removing soft-deleted books from the database after a retention period defined by ds.CleanupDeletedEntitiesAfterDays.
cleanup_deleted_users
Package cleanupdeletedusers ...
Package cleanupdeletedusers ...
cleanup_expired_password_change_requests
Package cleanupexpiredpasswordchangerequests ...
Package cleanupexpiredpasswordchangerequests ...
cleanup_expired_user_sessions
Package cleanupexpiredusersessions ...
Package cleanupexpiredusersessions ...
cleanup_files
Package cleanupfiles ...
Package cleanupfiles ...
delete_temp_files
Package deletetempfiles ...
Package deletetempfiles ...
delete_unconfirmed_users
Package deleteunconfirmedusers ...
Package deleteunconfirmedusers ...

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL