|
||
---|---|---|
.github | ||
crates | ||
example | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
justfile | ||
LICENSE | ||
README.md | ||
rustfmt.toml | ||
SECURITY.md |
🐇 tetratto!
Tetratto is a super simple community-oriented website where users can create various communities and share posts in them!
Usage
Everything Tetratto needs will be built into the main binary. You can build Tetratto with the following command:
cargo build -r --no-default-features features=redis,sqlite
You can replace sqlite
in the above command with postgres
, if you'd like. It's also acceptable to remove the redis
part if you don't want to use a cache. I wouldn't recomment removing cache, though
You can then take the binary and place it somewhere else (highly recommended; the binary will create a fair number of files!). You can do this to move it to a directory just called "tetratto" in the parent directory:
mkdir tetratto
mv ./target/release/tetratto ../tetratto
cd ../tetratto
Your first start of Tetratto might be a little slow as it's going to download all icon SVGs required for the HTML templates to render properly. These icons will be stored on disk, so there's no need to worry about this time every restart.
Configuration
In the directory you're running Tetratto from, you should create a tetratto.toml
file. This file follows the configuration schema defined here!
Usage (as a user)
Tetratto is very simple once you get the hang of it! At the top of the page (or bottom if you're on mobile), you'll see the navigation bar. Once logged in, you'll be able to access "Home", "Popular", and "Communities" from there! You can also press your profile picture (on the right) to view your own profile, settings, or log out!
All Tetratto instances support reports for communities and posts through the UI. You can just find the ellipsis icon on either and then press "Report" to file a report!
Updating
When bumping versions, you might need to run a few SQL scripts in order to get your database up to what the next commit expects. It is recommended to only update from GitHub release, which will list the SQL scripts you need to run to migrate your database.
Developing
All you really need to develop Tetratto is Rust and Just.
You can fix a lot of weird style issues and stuff using just fix
. You need Clippy for this
You can also automatically bump all dependencies and point out unused ones with just clean-deps
! You need cargo-edit and cargo-machete for this
Contributing
Read the "Contribution Guidelines" before contributing!
License
Tetratto is licensed under the AGPL-3.0.