Philthy, the awful.systems fork of Lemmy, is seeking contributors

https://awful.systems/post/1311745

Philthy, the awful.systems fork of Lemmy, is seeking contributors - awful.systems

the software we use to run awful.systems, which @[email protected] [https://awful.systems/u/dgerard] suggested I call Philthy (and I agreed!), is seeking contributors. like upstream Lemmy, this consists of a Rust backend [https://codeberg.org/awful-systems/lemmy] and a Typescript+React frontend [https://codeberg.org/awful-systems/lemmy-ui]. contributions to both are welcome; use this thread to discuss ideas and collaborate. here’s some contribution ideas off the top of my head (but all reasonable contributions are welcome): - (frontend & backend) actually rebrand to Philthy, to prevent confusion between us and upstream Lemmy - (frontend & backend) rewrite README.md to emphasize that this is a fork - (frontend) make the page header and footer more configurable; remove various links that aren’t relevant to awful.systems - (backend) delete posts from Mastodon when they’re deleted on our end - (frontend & backend) implement The Firehose, a big admin-only list of the posts and content leaving our instance - (frontend & backend, ongoing) merge in changes from upstream Lemmy if there are features you wish our instance had or make suggestions in this thread! one major blocker preventing folks from contributing to Lemmy-related development I’ve seen is that a lot of people don’t know Rust. if that’s the case, I can offer the following: - the Lemmy codebase is the worst possible place to learn Rust, but I’d love to start a thread for Rust tutorials and shared learning. it’s honestly an excellent language in its own right, so I’d love to teach folks about it even if they don’t end up contributing to Philthy. - if you’re good with React and/or Typescript and the feature you want to implement has a backend component, I don’t mind handling the backend portion if I’m able.

I know rust and react/typescript, so I might be able to help out with this (time permitting).

Is the intention to stay fairly close to the upstream, or make the code less horrible? Also, I haven’t looked at it yet, what makes the lemmy code so bad? Not the first time I’ve heard this complaint.

Hmm the first sign may be that it doesn’t build. I think it’s expecting translations that don’t exist
oh god, they put all the structs in the same file and all the impl’s in different ones. Why?
it’s entirely possible they assumed C++’s compilation model applies to Rust
oh! I forgot to answer this one above but: while preserving upstream mergeability is desirable, you might already have seen an example where that would be a challenge; I’m leaning towards fixing what we can where we can
you know, @self has been mentioning things about the awfulness of the codebase and I hadn’t yet gotten to look, but … wow. that’s certainly a Choice.
@self - awful.systems

Lemmy