Blargboard is a messageboard software developed by me. It's based off ABXD by Kawa, Dirbaio, etc... ABXD itself is inspired by Acmlmboard.

Official website: http://blargboard.kuribo64.net/
Github: https://github.com/StapleButter/Blargboard

And you can download Blargboard from our downloads page.


Here are screenshots of a default Blargboard install, with a set of forums added. There are two themes provided: Dark and Bright. Of course, users are encouraged to make their own themes to make their board unique.

* Blargboard Dark
* Blargboard Bright


Requirements

* PHP 5.3 or more recent
* MySQL, recent enough


Now, a quick tour through Blargboard's main features.


Post layouts and HTML support

This feature comes from Acmlmboard. Basically, you get to enter HTML that will surround each of your posts, giving them a unique look on the board. Needless to say that it makes it very easy to recognize a user from their layout.

Since the first day I've been on Acmlmboards, I fell in love with the concept, and especially the post layout feature. However, not everyone loves it, and some people will find that post layouts make threads harder to read. Thus, there are several features in place to prevent abuse of this feature: ability for users to block individual post layouts or all layouts, ability for admins to nuke someone's post layout and/or block them from having a layout...

It is also possible to enter HTML in posts. This can come in handy. Javascript and that kind of stuff is filtered for security reasons, though. Blargboard has two layers of filtering: first layer ensures proper nesting so you can't break out of post tables, and removes tags that aren't in the whitelist. Second layer filters out malicious tags should they make it through the first layer. (I want to see you defeat the first layer, though )

Oh and unlike old Acmlmboards, Blargboard doesn't require you to strip all newlines from your HTML. It tries to handle them intelligently, which works well in most cases.

Blargboard also allows admins to specify how much post customization is available. The default is full layouts (postheader + signature + sidebars customizable via CSS), but that can be changed to postheader+signature only, or signature only (thus disabling post layouts board-wide).


Templates

This feature is currently in the works. In the Blargboard 1.1 release, about 90% of the board uses templates.

Templates should make it easier to customize the look of your board, by separating logic and presentation. Blargboard uses Smarty as its template engine. You can refer to the Smarty documentation when editing templates.


Permission system

Blargboard uses a flexible permission system for everything, from regular user tasks to administration.

Users can belong to one primary group, and additional secondary groups. By default, Blargboard comes with 6 primary groups that match the ABXD powerlevels: banned, normal user, local moderator, global moderator, administrator, owner.

Users' permissions are resolved as such: first, the primary group permissions are applied. Then, if any secondary groups are defined, their permissions override the primary group's. Finally, if the user has user-specific permissions defined, they override the previous permissions.

With that, for example, if a given user is abusing a certain forum, you can block him from posting in that forum. But you can also block a user from editing their own posts, sending private messages, posting profile comments, editing their bio, or anything else.

Or hell, if you're insane, you could also allow a normal user to edit other users' profiles.

Plugins can also add their own permissions to it.


Security

Blargboard will operate fine no matter if magic_quotes is on or not. It will refuse to operate if register_globals is on, though, but who is actually insane enough to have that on?

Blargboard is also invulnerable to SQL injection attacks, and mostly protected against CSRF attacks.

But uh, rule number one in security is: never assume your system can't be hacked. So should your board get hacked, Blargboard makes it impossible to destroy data such as users, threads or posts. Deleting threads will send them to a 'hidden trash' forum configured by the board owner (this is optional). Deleting posts hides them, causing a placeholder to be shown instead. Moderators can enter a reason as to why they deleted the post, which appears in the placeholder.

Blargboard also features a 'rereg radar', that logs IP address matches and password matches. It proves handy in detecting duplicate accounts and such.

It only stores the information that passwords matched, and the corresponding users. It does not store plaintext passwords. Stored passwords are hashed using SHA256, with global salt and per-user salt.



So, what else is there to say? There are many other fun little features in Blargboard which I didn't mention here, I'll let you discover them.

Blargboard is still a work in progress, though. There may be bugs or missing features. But the same holds true for any forum software out there, really.

If you want to see a demo board, there's not really one. There is Kuribo64, which hosts the Blargboard support forum, though.


I give credit to the ABXD team (Kawa, Dirbaio, Nina, xfix, and myself), without whom Blargboard wouldn't have been possible.


Have fun