Settings

Theme

Show HN: Thredded Forums Engine

thredded.org

5 points by glebm 9 years ago · 4 comments

Reader

glebmOP 9 years ago

We wrote the Thredded forums engine focusing on these things:

1. Client-side performance. Little JavaScript and lean CSS. Even the KaTeX math plugin renders math server-side.

2. Clean but discoverable UI. The focus is content. Not a single dropdown nor a hamburger menu.

3. Extensible, but critical features are built-in to provide a foundation for plugins. Features such as notifications, moderation, permissions system, and full text search.

4. Pleasant on mobile for both browsing and content creation. This means a textarea instead of a rich text editor (by default).

5. Everything degrades gracefully when JavaScript is off. For example, preview-as-you-type becomes a "Preview" button if JavaScript is disabled.

6. The relational database for everything, including full text search. Data integrity is easy, no out-of-sync elasticsearch databases here. Runs on Postgres, MySQL, and SQLite.

Boring technology => easy to deploy and run in production.

The codebase is written in Ruby, has slowly developed over the years, and has extensive test coverage.

I am very curious to hear what you think, and whether you've ever felt a need for a forum like that.

  • detaro 9 years ago

    > 1. Client-side performance. Little JavaScript and lean CSS. Even the KaTeX math plugin renders math server-side.

    > 5. Everything degrades gracefully when JavaScript is off. For example, preview-as-you-type becomes a "Preview" button if JavaScript is disabled.

    Especially those sound great!

    Some feedback from poking around the demo a bit (on Desktop):

    * It has a lot of whitespace, to the point that it forces a lot of scrolling. The "front page" with the list of existing boards is particularly bad, with only 4 cards fitting on my 1080p screen, where a typical phpBB fits 10 or more. And the layout of the cards is still quite busy, with 5 text styles close to each other. Your demo hasn't got any posts with long texts, so it is hard to judge how big an issue this is in the threads themselves. Still, on a desktop you have the space to the side, maybe put the name besides the post instead of on top?

    * A lot of elements have dynamic positions (e.g. the date, the author) which makes it quite hard to quickly scan the overviews for them.

    * Image support? Something a lot of forums have issues with, which leads to various hacks, images not visible to visitors, and often broken images from external hosts. This is an area where you easily can be better than many existing boards.

    • glebmOP 9 years ago

      Thank you for your feedback!

      > It has a lot of whitespace [...]

      Whitespace can be reduced across the board by adjusting a variable:

      https://github.com/thredded/thredded/blob/1a60bcc7618270afeb...

      For the homepage, I'm going to try removing the vertical spacing between the cards.

      > on a desktop [...] maybe put the name besides the post instead of on top

      Definitely going to try that!

      > A lot of elements have dynamic positions (e.g. the date, the author) which makes it quite hard to quickly scan the overviews for them.

      I didn't realize there is a use-case for scanning through these. No good ideas yet on how to improve this.

      > Image support?

      By default only externally referenced images are supported, but integrating with third-party uploading services is easy. For example, here is how to do it with Shubox.io:

      https://shubox.io/blog/2016/08/05/how-thredded-uses-shubox

    • glebmOP 9 years ago

      > The "front page" with the list of existing boards is particularly bad

      A possible solution: https://github.com/thredded/thredded/pull/525

      What do you think?

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection