Files
website/README.md
T
2026-06-07 15:14:35 +02:00

1.9 KiB

tesoft website

This repository contains the source code of the tesoft.dev website.

The code is separated into a Go written backend and a Typescript frontend. Both can be built together in a Docker/Podman image via the usual build command:

podman build -t tesoft-website .

Once the image has been built, the website can be started as follows:

podman run -p 8080:80 \
  -e ROOT_PASSWORD=pwd \
  -v $(pwd):/db \
  -e DB_PATH=/db/tesoft-db.sqlite \
  tesoft-website

This command starts the website's web server on port 8080, sets the password to pwd and stores the backend SQLite database in the current folder.

The password environment variable is only required in the case when no database exists, yet and should be omitted on future calls to increase security.

Once the website is running the password can be used to upload and change blog articles and to display a preview of unpublished articles. To login on the webpage hit CTRL+ALT+P and type login followed by the password. Confirm with enter.

Blog articles can either be managed using direct api calls or via the ./tesoft.bash helper script. It supports the following operations:

tesoft.bash login

Asks for the password and performs a login.

tesoft.bash logout

Logout from the server.

tesoft.bash upload ./article-dir

Create a new blog article in draft state. The folder must contain at least a README.md file that contains the article content. The command prints the id of the created article.

tesoft.bash patch 123 ./aticle-dir

Changes a blog article with the given id. This does not change the article state.

tesoft.bash publish 123

Sets the state for the blog article with the given id to published.

tesoft.bash unpublish 123

Sets the state for the blog article with the given id to unpublished.

tesoft.bash drop 123

Deletes the blog article with the given id.