GoBlog’s storage system
GoBlog stores all data that must be persistent in the subdirectory
data of the current working directory. This directory contains the SQLite database file and the directory media that contains all uploaded files.
GoBlog uses a SQLite database for storing most of the data (posts, comments, webmention, sessions, etc.). The database is accessed using the Go library mattn/go-sqlite3. With each startup it is checked if there are schema migrations to be performed on the database.
Currently there are the following database tables:
To prevent data duplication, GoBlog stores files with the filename of the SHA-256 hash of the file.