github.com/l0ji/piezo
main / published May 2, 2025 / repository
BBS/textboard written in crystal
piezo
BBS/textboard written in Crystal
Installation
- Clone the Git repo (
git clone https://github.com/needmorepaper/piezo && cd piezo) - Modify the
config.ymlfile to adjust your board's settings - Get the dependencies and run the program with
shards run piezo
Usage
All board configuration is done within the YAML config, sysops can moderate their board by going to /sys and logging in.
Development
Just keep the code clean
Contributing
- Fork it (https://github.com/needmorepaper/piezo/fork)
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request
Contributors
- penny - maintainer
API
- Ban
The
Banclass is a representation of a ban. - Config
The Config class reads the config from a given YAML file and creates appropriate getters for the expected fields.
- Database
The
Databaseclass contains various operations for interacting with the SQLite database. - PageGenerator
This module provides various classes for building the content of page templates.
- Piezo
The
Piezomodule initializes the application. - Post
The
Postclass is a representation of a post or comment.