summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-05-28VERSION.txt: Add `-dev` suffixxengineering
This makes clear this is not a release.
2026-05-24Release version 0.1.0v0.1.0xengineering
This release allows to get started with packaging and deployment in a very early stage. All features can be added incrementally.
2026-05-24VERSION.txt: Remove `v` prefixxengineering
The content of this file should contain the version string of the software. There is no need to label it with a prefix `v` since this is redundant.
2026-05-24Add missing `.` to log messagesxengineering
2026-05-24README.md: Add public API declarationxengineering
This is required to properly use Semantic Versioning.
2026-05-24Disable log timestampsxengineering
Many logging systems provide timestamps on their own. To avoid duplication it is disabled by default.
2026-05-24README.md: Add build instructionsxengineering
2026-05-24systemd: Add finserv.servicexengineering
This file can be used to package for systemd-based Linux distribution. It creates the finserv system service running the server. That way automatic startup on system start can be implemented.
2026-05-24systemd: Add finserv.tmpfile.dxengineering
This file can be used to package for systemd-based Linux distribution. I configures the data directory of finserv. This notably includes setting the proper access permissions to protect the saved data.
2026-05-24systemd: Add sysuser.confxengineering
This file can be used to package for systemd-based Linux distribution. It creates the `finserv` system user which runs the server.
2026-05-24frontend: Add work in progress text to indexxengineering
This explains the users the current state of this project.
2026-05-24frontend: static: Add simple.css symlinkxengineering
This allows to develop the frontend with `hugo server` and its built-in page refresh on file change. For the actual build the file is copied to the build directory by Meson.
2026-05-24Use simple.cssxengineering
This enables the use of simple.css as CSS framework.
2026-05-23Add `run` targetxengineering
This allows to easily run the server with a single `meson compile -C build run` during development.
2026-05-23frontend: Add simple.css submodulexengineering
This is the CSS framework which should be used for this repository.
2026-05-23Add global Meson build systemxengineering
This commit fully introduces Meson as a build system for this repository. It makes sure the frontend page is built with Hugo before the Go executable is built and embeds the frontend.
2026-05-23frontend: Add Meson build systemxengineering
This is a first step towards using Meson for the whole repository. Having one central build system allows many things like ensuring that the frontend page is build before embedding it into the Go executable or like transpiling TypeScript to JavaScript before building the frontend page.
2026-05-23Embed frontend to server executablexengineering
This makes use of the `embed` package of the Go standard library to embed the full Hugo static website as a global filesystem variable inside the executable. This effectively makes all files of the static website part of the Go executable. That way it is always possible to just copy the server executable to a host, make it executable and run it without any other dependencies.
2026-05-23Hook up frontend in Go web serverxengineering
This makes the Hugo-built static website part of site hosted by Go which also contains the dynamic API under /api.
2026-05-23frontend: layouts: Add baseof.html and home.htmlxengineering
These two files are the starting point for the front end.
2026-05-23frontend: Add .gitignorexengineering
Hugo produces files which should not be committed.
2026-05-23frontend: Reduce to explicitly wanted filesxengineering
Hugo by default generates output files which are not yet needed.
2026-05-23frontend: Add hugo.tomlxengineering
This is the starting point of a Hugo[1] based web frontend. [1]: https://gohugo.io/
2026-05-23Move to /api/versionxengineering
The old /version endpoint was moved. It should be part of the API and it is intended that everything not part of /api/* is a static web site which is also served by the Go server.
2026-05-23Remove / and hello() handlerxengineering
This was just for demonstration purposes.
2026-05-23Split run() arguments into multiple linesxengineering
One line per argument makes the code more readable and also diffs in case arguments are changed.
2026-05-23Run go fmtxengineering
2026-05-23Make run fully configurablexengineering
This makes the run() function compared to main() useful at all since all parameters can be changed to test e.g. with unit tests.
2026-05-23Add handlers.goxengineering
This keeps the HTTP handlers in a separate file which registers the routes in an init() function. The main execution flow is still maintained in a now minimal main.go.
2026-05-23Rename srv to serverxengineering
This improves readability.
2026-05-23Register routes with init()xengineering
This makes the used *mux.Router from github.com/gorilla/mux a global variable. A new router is created in the line where the global variable is created. Handlers can be added across the code base in init() functions.
2026-05-23Add /versionxengineering
2026-05-23Log HTTP URLxengineering
2026-05-21Fix stop messagexengineering
2026-05-21Add HTTP-based hello worldxengineering
This demonstrates the HTTP server is working.
2026-05-21Add github.com/gorilla/mux v1.8.1xengineering
This should be used for the HTTP routing.
2026-05-21Log start and stop of serverxengineering
2026-05-21Introduce run() functionxengineering
This function should be called by main but can also be called by a unit test to run a server which might have different arguments which will likely be added.
2026-05-21Add Go hello world programxengineering
This is a starting point to build the server.
2026-05-21Add go.mod filexengineering
This makes the repository a Go module which is required to fetch dependencies.
2026-05-21Add README.mdxengineering
This explains the purpose of the project.
2026-05-21Add Mozilla Public License 2.0xengineering