GuestNo new alerts

Features Introduction

- Announcements1409
Gosora has a number of features, some of which fall through the cracks, so I may miss a few, but here we go:

Basic Personalisation - Users can choose whatever username and avatar they wish to distinguish themselves from other users. They can also change these whenever they want.

Staff are capable of changing other people's usernames.

Administrators are also capable of resetting their passwords, if a problem arises and they end up locked out of their accounts.

Group Permissions - Gosora like many of it's cousins has a role based permission system where you can assign users to what we call a "group" and control what they're capable of.

For instance, an administrator group may have the ability to manage site settings, while a moderator group may be capable of banning troublemakers on your site.

Per-Forum Permissions - In Gosora, users can post in multiple categories known as "forums" and an administrator can control who can access what category and what they can do in there.

For instance, in an area designated for announcements, you may only want an official member of staff to be making posts to avoid things from getting messy, while letting users posts everywhere else.

Or you may setup a section that is only visible to staff to discuss what actions to take against particular users and to collate reports sent by users.

Pinned Topics - You can pin a specific discussion so that it's displayed prominently in a specific category. You may use this to highlight important discussions or to direct users to a set of guidelines which you want them to follow.

Word Filters - You can replace certain words you don't want users to say or certain URLs with whatever you want automatically.

Templates - You can customise the templates provided with Gosora to better suit your site's look and feel and to add additional functionality as you see fit.

There are two ways of doing this. You can either drop down a file named the same as a file in /templates/ in /templates/overrides or you can override the template on a per-theme basis by dropping a file down in /themes/themeName/overrides

Please replace themeName with the name of whatever theme you want to override the templates for.

Also, note that if it's a default theme, then you may want to "fork" it by creating a copy, so that your templates aren't overriden or end up in a conflicting state when Gosora is updated.

You will also want to note that we use minifiers to reduce the effective footprints of templates, so please try to avoid use of whitespace which are not aren't non-breaking space entities.

For information on certain innovations which have gone into the templates, please consult: https://gosora-project.com/topic/why-are-the-templates-so-fast.49

Plugins - You can customise parts of Gosora's behaviour by writing Go. We're also thinking of letting you do this via other languages like JavaScript or Lua, although this is currently on a backburner.

Database Engines - We support MySQL and MSSQL, although MSSQL support is sliding in the latest versions. We're also working on adding support for PgSQL.

Analytics - We have a powerful yet quick and largely privacy friendly analytics system which allows you to gather anonymous statistics about users and to see trends across your site and historic usage levels.

We have graphs showing the influx of particular user agents (including bots), which languages users speak (e.g. English), the number of views the topics in a particular category have gotten, the number of views you have gotten across the entire site, etc.

In the future, we plan to expand this even further by allowing you to see which specific topics have received the most views as-well as letting you restrict the time ranges, so that a viral topic three years ago doesn't take all the attention away from more recent successess.

WYSIWYG - This varies depending on which theme you're using, but the Cosora Theme has a WYSIWYG Editor for easy use by users. This may be expanded to other themes in the near future.

Emojis - You can use any emoji provided that it's supported by browsers. We also have a parser that will automatically convert a hundred shortcodes to emojis on the fly.

We plan to expand the selection of shortcodes and to add a client side emoji selector, however right now, you can use Windows' native emoji keyboard by right-clicking and clicking on the Emoji option in Chrome or by holding down the Windows key and the . key 😉

Customisable Homepage - You can use any path as the homepage including custom pages, a specific topic, the list of topics, the list of forums, etc.

Audit Logs - We currently have three types of logs. They are the moderator, login and registration logs.

The moderator logs show what moderative actions moderators have taken against users and discussions, such as locking a topic or banning a user.

The login logs show you who has logged into your account. We plan to expand this to attempted logins too and already collect some related data.

The registration logs are for administrators and developers to be able to analyse trends among attempted registrations from machines and to spot over-aggressive anti-spam filters.

We plan to add mechanisms for automatically destroying this data in the future to help avoid over-collecting private information about users.

Quick Topic - Unlike other systems which often require you to jump through a number of hoops, you can create topics directly from the topics and forum pages. Reference: https://twitter.com/GosoraProject/status/952413046244179968

Live Alerts - Whenever someone likes or responds to one of your posts, you will get an instant alert in the corner of your window notifying you of this.

You can opt out of this and get regular alerts in the header by declining to give Gosora permission for this. We plan to add a more flexible mechanism for managing your notifications in the near future.

Profile Comments - You can comment on user profiles to have conversations without necessarily having to go through the usual channels. Please note that this is wholly public.

Live Dashboard - The moment you enter the control panel for managing your site, you get a live dashboard which shows your server's CPU usage, RAM usage, number of users online, etc. in real-time.

Live Topic List - As users reply to topics, the items on the main topic list will update without you having to refresh periodically.

User Tiers - This system is largely being phased out in favour of permissions, however there are five tiers of users: Guest, User, Super Mod, Admin and Super Admin.

Guests are incapable of posting in topics at all, even if they have the permission to do so, while super moderators and higher are capable of accessing the main control panel.

What users are capable of doing on the site and super moderators are capable of in the main control panel are subject to the permissions system.

Only super admins can access backups, access the debug page and perform some sensitive tasks. We don't plan to add permissions for these sections in the near future for security reasons.

Please note that the backups system is largely incomplete and is currently intended to be used as a folder you can drop backup files into via SSH to download via the Control Panel.

Timed Bans - You can ban users from your site for limited durations rather than for eternity. While we would all love to throw certain troublemakers into purgatory for all eternity, we sometimes need to be a little more lenient.

Bulk Moderation Actions - You can lock, delete, move, pin, etc. multiple topics from the topics page at once.

Built-in Anti-Spam - We have a few features for tackling spam like staff approval and email activation.

With staff approval, every new user must be approved by a staff member before they're able to post on a site, while with email activation, an email will be sent to them to confirm that they're really a human, or something close enough to fool that test.

We also have a few algorithms for reducing the number of machines which get through the registration page in the first place and we plan to improve these as time goes by.

IP Search - We have a simple utility for looking up a specific IP Address across every user, topic, post, etc. to help administrators find users who have created multiple accounts to stir up trouble.

We hope to maybe expand the search results to show whether a specific user is using Tor or a proxy or to search by a specific email.

In-memory Caching - We have simple caches, so that topics, forums, settings and a few other things can be puleld directly out of memory without having to hit a memcached instance or the database on every request.

This is not only faster, but it can also help cut down on some of the unnecessary infrastructure like Redis and what-not which sites immediately resort to using to provide a decent level of performance.

Custom Pages - You can create simple pages via the Page Manager in the Control Panel and more complex ones by dropping down a template file in the /pages/ directory.

BBCode / Markdown Support - In addition to basic HTML, you can also use BBCode and Markdown in Gosora, although this will require enabling the associated plugins.

Two-factor Authentication - We have global 2FA as an option for all users, so even if you fall for a phishing scam or other issue, then the chances of your account getting compromised will drop. There are other security benefits too.


Please note that this topic may be updated at any moment as I collate more items which have already been implemented and implement new features in Gosora.

I will usually post an update in this topic when I make a significant change to this post, so that everyone knows that it's changed.

Note: This page is still under construction, so I'll likely update this every now and then.
That post was a monster, it took ages to finish adding all of that ;_;

Anyway, this post should stay largely the same for now, until I come back to attack it some more.
can post images?
You can post images, yes.

You can do it with the "Add File" option next to Create Reply.

For example:


If the file is an image, then it'll automatically add it to the bottom of the post.