Luna 2.0.12, 2.1 Preview 5 and Typography are here

A new Luna, a new theme

We’re happy to announce the availability of Luna 2.0.12 and 2.1 Preview 5. 2.0.12 is a security release, but has a few other minor improvements too. In Preview 5, we continue to move forward with modernizing Luna. And this preview does that in some major ways. Not only are we introducing a fresh looking new default theme, we’re also working hard on modernizing the logic below. Preview 5 is a major update compared to the previous previews, so let’s get started!

Luna 2.1 Preview 5

Typography

First of all, meet our new default theme Typography! Typography, as the name implies, heavily leans on typography as its main design element. For the first time since 2015, we’re introducing a new default theme (and the fourth time since our first release with ModernBB 1.6 (from Air to Random to Fifteen to Typography).

Fifteen has served its purpose well and even got a major redesign in Preview 4 to support Bootstrap 4, but with Luna 2.1 we are deprecating it, as well as Sunrise. This means that both themes won’t be included in the next major version of Luna.

Note that this is still an early version of Typography and there are still plenty changes coming.

Fifteen & Sunrise

With the major redesign for Fifteen and Sunrise in Preview 4, we also spend some time on refining the updated themes with Preview 5. This includes some more design refinements to better match with the new Bootstrap 4 framework and updates to support the new theming APIs that are part of Preview 5.

Earlier we announced that Fifteen and Sunrise would ship with Preview 5 in an entirely broken state, this is no longer the case. Fifteen and Sunrise should work as expected (at least, for as far as it is to be expected in an alpha).

Developers: easier theming

Preview 5 introduces a bunch of new tools for theme developers. Most notable is the fact that Luna now provides themes with raw data rather than info put in HTML and CSS. This allows for better customization and less reliability on Bootstrap.

  • Pagination is now returned as an array of Page-objects instead of a variable with pre-written HTML and CSS with Bootstrap classes.
  • Notifications are now returned as an array of Notification-objects instead of a variable with pre-written HTML and CSS with Bootstrap classes.
  • The usermenu is no longer generated by Luna, themes now have to take care of it by themselves, complex URLs are now provided through the Menu object.
  • The menu is now passed to the theme as an object with an array of objects, the menu items can be acced by calling $menu->getItems(), which will return an array of items.
  • Anything that isn’t a Luna config item that is relevant to the footer can now be found in the $footer variable for the footer template. The $footer variable returns a Footer-object with relevant statistics about your board.

This is just a small revamp of the theming engine, and more is to come in Preview 6.

Theme settings

When changing the theme, there is a chance that your new theme has a different number of accent colors available. This is not a problem if there are more accent colors, but if there are less, it becomes an issue: your board’s default setting and your user’s custom setting may be set to use a higher accent color than the theme provides. Starting with Preview 5, Luna will now reset any setting that might violate the number of available accent colors for the new theme. Right now, Luna will reset this number to 1, in a future preview it will be possible for themes to set a default value.

Emoji

Todays preview also continues the emoji improvements. This time around, we’re updating our emoji support to use the more modern notations like “:smile:” as can be found on other platforms like GitHub. If your forum is running Luna 2.1 Preview 4 and earlier and upgrades to Preview 5 or later, your board will continue to support the old “:)” notation, etc. The new notation is the only notation for new installations, however.

Additionally, Preview 4 required emoji like “:p” to be declared as both “:p” and “:P” to work as expected, in Preview 5, emoji are case insensitive which means you can get away with a single declaration.

Censoring & emoji

Up until now, you had to change each censored word or emoji individually then do the next. With Preview 5 you can now update all lines at once and save them all together.

Profile & settings

Today’s new preview also includes a major rewrite of the profile section in the front-end. We’ve rewritten entire thing to use the User object, including all validations and storage functions. The Profile is only one of the first pages to start using a more OOP-minded structure and more is to come. This will also help in our move to PDO.

MySQL & PHP support

Luna 2.1 is dropping both the MySQL and MySQL InnoDB drivers. MySQL has been considered deprecated for a while now and PHP 7 removed it entirely. Given that MySQL Improved and MySQL Improved InnoDB should be available on any system, these old drivers have now been dropped.

Additionally, Luna 2.1 will require PHP 5.4 or higher, this is up from PHP 5.3 for Luna 2.0.

Other changes

  • A bunch of icons in the Backstage have been changed to better represent their page
  • Bootstrap has been updated to version 4.1.2
  • Font Awesome has been updated to version 5.1.1
  • A number of emoji have been remapped to better represent their meaning
  • Luna now correctly redirects you after setting a new theme
  • Proper HTTP errors during maintenance and errors
  • When updating, fields are now correctly dropped from the database
  • Cleans up a number of old PHP checks
  • Removes a number of checks and function fallbacks designed for PHP 5.3 and or lower
  • Fifteen’s “online users” list now works properly again

Known issues


  • Fifteen, Sunrise and Typography have a number of visual issues
  • Luna will reset the theme to Typography
  • First Run will be enabled for everyone who disabled it and disabled for everyone who enabled it

More to come

We still have plenty more changes to come in the new previews. Here is a short list:

  • Further revamp of the theming APIs
  • Allow themes to set a default accent color
  • Support for local videos in comments
  • More Typography improvements
  • Icon packs
  • (Investigate) moving to PDO
  • Font Awesome 5.2
  • Bootstrap 4.1.3

Luna 2.0.12

We’re also releasing Luna 2.0.12 today. This update contains a number of fixes and enhancements, including one security fix. We highly recommend you update to this version.

  • Introduces support for modern emoji shortcodes as found in Luna 2.1-alpha.5
  • Some emoji have been remapped to better match their textual counterpart
  • Proper HTTP errors during maintenance and errors
  • Luna no longer returns the password when a registration error occures
  • When updating, fields are now correctly dropped from the database

Final remarks

As always, make sure you have a back-up before updating to Luna 2.1 Preview 5 or Luna 2.0.12. We test these versions but of course we can’t test for every single possible outcome.

Website updates

And yet again, we’ve made more adjustments to the documentation for Luna. You’ll find that we’ve begun expanding the “Extend Luna” section for both themes and translations. Many more minor changes have been made throughout the documentation and for Preview 6 we will further expand on theming, and we will begin expanding the Mainstage documentation as well as preparations for future versions of Luna.

Luna 2.0.11 is now available

A quick fix and a 2 week hiatus

Well then… Looks like I made a mistake with Luna 2.0.10 and 2.1 Preview 4.

Both releases are shipping with old translations. Luna 2.0.10 is using the 2.0.9-beta translation (so is 2.0.9) while 2.1 Preview 4 is using the translation of an early Preview 4 build.

This is why we’re releasing 2.0.11 today with a fix. 2.1 won’t be fixed until Preview 5. This mistake should not impact anyone using the English translation of Luna or who generates the translation files of any other language through scanning the software with Poedit.

This is only an issue for those who

  • Use the Dutch translation that is shipping with Luna
  • Use the empty English translation as a base for their own translations

If you are using Luna 2.1 Preview, we kinda expect you to be aware that this thing is buggy, so it isn’t that essential to fix to us.

A hiatus

While we are not even a month into the rebirth of Luna, it is already time for a break. Like back in the day, I’ll be gone for a couple of weeks to recharge. This year around, I’ll be gone from the 3rd of July until the 15th. Unlike other years, I’ll check back in with you guys in the night of the 9th to the 10th.

Luna 2.0.10 and 2.1 Preview 4 are here

The patch and the Bootstrap 4.1 update

We originally said that it wasn’t going to happen in Luna 2.x but here we are… Luna 2.1 Preview 4 replaces Bootstrap 3.3 with Bootstrap 4.1. We also have a couple of other changes to tell you about. We’re also releasing a minor update for Luna 2.0 today.

Bootstrap 4

Preview 4 is very much ment to focus on just Bootstrap 4. And if you think “isn’t that just replacing the Bootstrap 3 package with the Bootstrap 4 package?”, you’d be wrong. Bootstrap 4 has some major changes compared to Bootstrap 3 and thus what followed was days of work.

Because we didn’t just update Boostrap 3 to 4 and changed a number of classes. No. We redid the entire markup and (S)CSS of Luna. For the Backstage as well as Fifteen and Sunrise. Yes, the Backstage’s design and Fifteen and Sunrise are rewritten. Completely.

Now, what does that mean for you? First of all, you’ll notice a number of small and big visual differences in both designs. One of these is the adaptation of a larger default font (16px instead of 14px) and some of the light fonts turning bolder.

For the Backstage specifically, it means that the hamburger menu is now gone as the navigation now fits on all screen sizes. It also means that we have an updated “About” page (the website also got a new design there). We also fixed a whole bunch of UI inconsistencies.

Meanwhile, Fifteen got a redesign too (and as a result, so did Sunrise). Both themes now use Bootstrap 4.1 and while the goal was to keep them mostly the same as the Luna 2.0-versions of these themes, there are a number of key differences:

  • Like Backstage, the design is now wider
  • The Editor has an entirely different design
  • Fonts, especially normal text, is now larger

We are still working on the UI for Backstage, Fifteen and Sunrise, expect minor adjustments to come as part of Preview 5.

Font Awesome and Prism

Font Awesome 5.1 was released during Preview 4’s development, and thus we’ve updated our included version of Font Awesome to version 5.1 (up from 5.0.13). Additionally, if you set Luna to use CDNs to get Bootstrap and jQuery, for Font Awesome a CDN will now be used as well as long as the Font Awesome Pro setting isn’t enabled (but that will likely change in the future).

Prism.js is the package that stands in for the syntax highlighting in code and this update bumps its version to 15.0 (up from 14.0). We’ve also added support for JSON and TypeScript to the package, as well as support for extended PHP.

Fluorescent Blue

You’ll also notice that this preview drops the “Fallow Preview” branding and insteads is called “Fluorescent Blue Preview”. We made this change because we want Luna 2.2 and onwards to be smaller updates that don’t necessarily need their own letter (G and so on) and wanted 3.0 really to be called Glitter.

So why “Fluorecent”? Well, turns out you can put 4 different colors behind it and still end up with an “official” color: Blue, Orange, Pink and Yellow. So there are the names of the (maximum) 4 next updates of Luna. These will be minor releases while most focus will go to Glitter and I honestly don’t even want to promise that we will get to Pink, never mind Yellow. Orange will most likely happen, though.

Other changes

  • The default user group can now be changed again
  • Pruning threads will no longer prune pinned threads by default
  • Some emoji have been updated to better represent their text counterpart (including ūüôā and :(, among others) – this will also come to Luna 2.0.11
  • When updating, Luna will now update the cookie bar url if it still uses the old default value
  • Enabling debug mode now works correctly for PostgreSQL
  • Updating to Luna 2.0 no longer causes ‘o_custom_css’ to start with “NULL” as value
  • Fixes a spacing issue with Inbox’s paper plane icons
  • Resolves a PHP error due to receivers in Inbox not being countable
  • Fixes a number of markup violations

Luna 2.0.10

Luna 2.0.10 introduces a number of fixes, these are the same bugfixes that are in Luna 2.1 Preview 4 that are not specific to Fluorescent Blue. Thus, here is what’s changing:

  • When updating, Luna will now update the cookie bar url if it still uses the old default value
  • The default user group can now be changed again
  • Enabling debug mode now works correctly for PostgreSQL
  • Updating to Luna 2.0 no longer causes ‘o_custom_css’ to start with “NULL” as value
  • Fixes a spacing issue with Inbox’s paper plane icons
  • Resolves a PHP error due to receivers in Inbox not being countable
  • Fixes an issue with Inbox’s paper plane icons

As always, make sure to make a back-up before upgrading!

More website and documentation updates

And to close it off, we paid some attention to the website. Today’s update includes our brand new “Release notes” page. This was one of the pages that still used the design from the old website, now we updated it and each release has gotten its own page as well (we also updated the sidemenu to make more clear that these are subpages).

And of course, we also updated our documentation yet again. Our focus was basically spread everywhere.

Luna 2.1 Preview 3 now available

Look at all that documentation

Today we are very happy to announce the availability¬† of Luna 2.1 Preview 3 (no 2.0.10, at least not today). This is our third alpha release for Fallow and we have got some pretty exciting things to talk about. First off, something that isn’t really about the release itself.

Documentation revamp

As mentioned when we released Luna 2.0.9 and 2.1 Preview 2, we made a major change to the way our website handles documentation. Today, we’ve pushed the first major update to our documentation to our website. This gets the documentation up-to-date with Luna 2.1 Preview 3. At least, for as far as we have refreshed these pages. Right now, that is mostly all about the Backstage and our Theme developer documentation. This is just the start of our journey to improve the documentation, and to keep it that way. We’ll have more to share with the next release.

Themes

Today’s update makes some important changes to themes. First of all, themes no longer use the faux “information.php”-file with an XML in to tell Luna what they exactly are. Instead, we now have the “theme.json” file. This is a much simpeler structure, a more polished approach and allows for easier extension if it’s ever required.

Also, themes now have to define which features they support of which Luna is depending on the theme to support it. If a theme does not support a certain feature, a red warning will be shown in the Backstage next to the relevant setting. This way you know why a feature may not change anything on your board. Features need to be defined in “theme.json”.

Accent colors now have to be defined in the “theme.json” file. This way we could make the whole thing much more dynamic for the Backstage. Themes can now show their actual accent colors in the Backstage, heck, if they want, they can even show a gradient now.

For more information about the new theme.json file, I highly recommend you read the brand new documentation on theme development.

With todays update, the “Theme” setting is also moving back to its own page called “Theme”, the current “Theme” page has been renamed “Appearance”. On the new Theme-page, you can install and uninstall themes (yes, they require installation now) and if you want, you can delete a whole theme right from the Backstage now.

Installing a theme adds it to a new “themes”-table in the database, but themes can now define some of their own configurations in the new theme.json file, and by installing the theme, these configurations are put into the database.

Fifteen & Sunrise

In Preview 2, we moved Fifteen and Sunrise’s source over from plain old CSS to SCSS. This makes these themes easier to manage and is one of the many steps we’re taking to improve our theming support. However, you might have noticed that Preview 2 crippled Fifteen and Sunrise in a number of places. Well, get ready for it to get worse.

Fifteen and Sunrise should have “working” accents again in this version, but on numerour places, the styling will be broken. We are not planning on fixing this as we’re working on major updates for both Fifteen and Sunrise, essentially rewriting both themes, to support Bootstrap 4. Fixing these broken things just feels like a waste of times. So yeah… now you’re warned.

Emoji

Preview 1 removed the capability to switch between the emoticons included with Luna or use the emoji font present in the system. This preview also removes the support for changing the size of emoji. Starting with this release, emoji will take the size of their parent element.

Under Backstage > Settings, you’ll find a new page titled “Emoji”. Here you can manage which emoji are available on your board. You will no longer have to dive into the parser to manually add emoji to the list of supported emoji.

Other changes

  • The duality between “e-mail” and “email” has been cleaned up, Luna will now always refer to it as “email”.
  • The Backstage’s page title now contains the name of the page.

We’re very excited with all these changes and we’re not done yet. Luna 2.1 is shaping up to be a nice update, and you, our users, deserve it after more than 1,5 year of silence! Go get it if you’re running Preview 2, but make sure to make a backup first. You never know…

Known issues

  • You have to select an accent color every time you want to save profile settings or the Backstage’s Appearance settings, otherwise, the accent color will be reset to 0 (which isn’t an accent).
  • Fifteen and Sunrise have various visual issues.
  • The category name and position in Board is missing some styling.

Luna 2.0.9 and 2.1 Preview 2

Also… documentation announcement

I know that it hasn’t even been a week, but we’re happy to say that the next update to Luna, version 2.0.9, is now available to download! And to make sure that people the 2.1 Preview are not missing out on all the fixes and enhancements we’re releasing 2.1 Preview 2 as well with the same fixes as 2.0.9 and a number of other improvements.

Luna 2.0.9

Luna 2.0.9 is just a minor update with a bunch of bugfixes and other minor improvements. Here’s what to look out for:

  • More improvements for PHP 7.2 support
  • A number of fixes for localization
  • Site descriptions can now be 300 characters (up from 255)
  • Improved error for invalid search queries
  • Fixes the in 2.0.8 introduced bug where a space was missing between a name and “wrote” in a quoted comment
  • Updates references to GetLuna.org to match our updated website (see below)
  • Updates the “Check for updates” feature
  • A set of bug fixes

Since Luna 2.0.8 we use the by Git (and GitHub) generated zip-files as downloads from our website. However, we didn’t think this one through since Git also includes a number of irrelevant files (like .gitignore) that should not be part of production versions. Today’s update rectifies that and Git will now leave such files out of the download.

Another GitHub-related change is the inclusion of a number of files in our repository for issue templates, pull request templates, etc. But also the GPL v2 license. Except of the license, non of these files actually make a difference to the package you download, but it does make reporting issues and requesting features easier on GitHub.

For more details I would like to refer to the release notes.

Luna 2.1 Preview 2

Luna 2.1 Preview 2 contains the same set of fixes and improvements as Luna 2.0.9, but of course it also bring a number of other features and enhancements to the table. The most notable changes since Preview 1 are:

  • Forum icons can now be set to be either Solid, Regular or Brand icons from Font Awesome Free, if you enabled Font Awesome Pro, you can also choose the Light icons
  • Improved night mode with better contrast and a darker design for the mainstage
  • Fifteen and Sunrise have been rewritten in SCSS and the CSS file included in the download is now compressed resulting in smaller stylesheets and thus faster loading times, this also makes these themes easier to maintain
  • Fifteen has an updated sidebar design in threads to take less vertical space on small devices
  • Spoilers now use the Bootstrap collapse plugin instead of a custom implementation
  • General enhancements to the Backstage design update, including the start of using bolder fonts
  • Fixes an issue in Preview 1 where the Backstage accent color selector in profile was broken
  • Fixes a number of icons that didn’t exist in Font Awesome 5
  • Branding update, because Luna’s logo got a little bit bolder
  • MySQL 5.5 is now the minimum required version if you are using a MySQL database
  • We updated the Backstage logo to use our new, bolder typeface
  • Like with Luna 2.0.9, irrelevant files are now excluded from the generated download, for Luna 2.1 this includes the LESS and SCSS files used to generate the CSS for the Backstage and Mainstage

For Luna 2.1 Preview 2 I would also like to redirect you to the release notes for more information. We still have some more things to come for Luna 2.1. This includes, but is not limited to:

  • User avatar as profile menu icon (instead of the generic user-icon)
  • Font Awesome Pro system icon set selection
  • Converting the Backstage stylesheets from LESS to SCSS
  • Typography
  • Backstage night mode improvements
  • A big update to our documentation (see below)

As always it is recommended to update, but make a backup!

Website and documentation updates

Now, there is one more thing I’d like to talk about. And that is the documentation. Our documentation has always lagged behind, in true FluxBB-fashion. However, I’m making moves now to change that. And step one was dropping the whole HTML-mess that was the documentation and rewrite it in Markdown. “Rewrite” as in “I changed all html-tags to Markdown”, not “The whole thing has new content”. The documentation is available on GitHub for everyone to collaborate on!

Additionally, the website got updated to dynamically show the sidebar menu and the page content depending on what page you visit. As a result, the documentation can fully be managed from the GitHub repository’s content. This should make maintaining the documentation a lot easier for 2 reasons: Markdown is much better fit for writing documents than HTML and much less prone to markup errors, and updating the documentation no longer requires directly messing with the sites code.

Everyone is free to help out with the documentation now. If you want, of course. And “helping out” doesn’t mean you have to write it, if you see an error or would like to see some documentation about something in Luna, you can also create a new ticket on GitHub.

Before Luna 2.1 goes out the door, I really want to spend some serious time on the documentation and start maintaining it properly from there on out. This has lacked for years, and it is really time to change that.

And to close it all of: we made a number of improvements to our website’s design, mainly for small screens. We also fixed the broken download buttons for the Luna 1.0 preview releases.

Luna 2.1 and 3.0: where to next

It has been¬†5 months since our last feature update – Luna 2.0 Emerald – and in that time, development has come to a stand-still for a while. Earlier this month, we released Luna 2.0.4 and 2.0.5 to fix a number of issues.¬†However, just to reassure you guys that we’re still working on this project – yay – I would like to tell you guys how it is going in our 3 development branches right now (being 2.0, 2.1 and¬†3.0).

Luna “Emerald” 2.0 Update 6

We’re currently investigating a number of bugs that have been reported over the month and will provide a new release somewhere later this month to address those issues. Version 2.0.6 will probably be the last pre-2.1 patch for Luna 2.0. 2.0.7 will likely coincide with the 2.1-release. As¬†used to be the case with Luna 1.x, the Luna 2.0.x-series will continue to receive bug fixes until¬†the release after 2.1 is made available.

Luna “Fallow” 2.1

Fallow is our next minor update, it will be mostly some more polish, bug fixes and minor new features. Fallow might turn out to be our smallest feature-update yet. Don’t expect to much from this update. We currently are planning to improve the spoiler-tag and are giving the thread-view in Sunrise a new design. Other new features might join in later as well as¬†development continues.

Luna 3.0

Luna 3.0 is our next major¬†milestone and as always, we want to rewrite most, if not all, of the core¬†of Luna to give ourselves a more modern¬†codebase to build upon. I currently do not have an ETA on when the first alpha release will be made available.¬†There is a¬†“version3.0”-branch available on GitHub, however, I do not recommend you to download that code, let alone use it (in a production¬†environment) as it will remove a lot of features and data from your database. We’ll have more to share later.

2015: A year in review and a year in preview

So… I wrote this post at the end of 2016, but forgot to post it. So here¬†we go…


2015 was a big year for us. We release Luna 1.0, a major update to our software. And we also released the final ModernBB release. Let’s take a look at what we did this year:

We released 19 development versions (alphas),¬†13 pre-release versions (betas and RCs), 4 final versions (Aero, Bittersweet Shimmer, Cornflower Blue and Denim) and 19 updates (x.x.1-releases). In total, we released¬†55 versions of Luna. We also had 2 ModernBB-releases (version 3.7 and 4.0). This brings us on a total of 57 releases in 1 year. That’s up 17 from last year’s 40 releases and quiet a bit up from 2013’s 23 releases.

I’m also very happy with our download count. Compared to last year, we had a 60% year over year growth for the counted downloads. The bad news is, in the period of June to early November, we – sadly – didn’t count all downloads, so this could have been more.

But what will 2016 bring? Well…

First of all, I hope we’ll be releasing less updates. Sure, updates are fine, but some of the past year’s updates shouldn’t have happened. I hope that Luna 2.0 will bring along a more stable platform then 1.0.0, 1.1.0 and 1.2.0 have been so far (Luna 1.3.0 is doing just fine, though). I’ve also noticed that well, I should be a little bit more critical about contributions made by the community. Don’t get me wrong: I love that people help out with Luna and that’s more then welcome. But some commits shouldn’t have happened either and I’m not to happy about some of the directions Luna has been going into the past year (and Luna 2 will revert these directions).

What I do hope is that 2016 will bring Luna 2.0. This won’t be for the coming months, I can tell that already. The first preview might, though. Luna 2.0 is probably going to be the final major update. Future updates will probably be more focused like the x.1-updates. Don’t worry, we’ll eventually get to Luna 3.0, but I’m hoping to adapt a more rolling-release-ish scheme for updates after the Luna 2.0-update is done. More on that later. I hope we’ll have a great 2016. I’m actually certain of it.


So now that I failed to put this one up on January 1st, 2016, I actually can reflect on what I said back than already. Where we’ve released 57 builds in 2015 in total, this year, we’ve only released 3 versions so far (1.3.1, 1.4-alpha.1 and 1.4-alpha.2). So to that matter, we’re on the right track. I hope 1.4 to be a very stable update from the get-go, despite it having some changes that are potentially dangerous.

Round-up #18 – Backstage 6: managing categories and forums

When building forum software, one of the most important pages in an admin panel – or Backstage in our case¬†– is the page that actually contains the settings to manage the forums and categories you make available to your users. Today’s Backstage doesn’t do a really good job at that, so with the next major revamp coming up as part of Luna 2.0, I would like to take a look with you guys to how the new management page will work.

luna13

Above, you see a screenshot of how the state is today. The above screenshot comes from our official board. And while it is in theory fine to work with, there are in fact more than just one usability issue.

First off: you can’t edit categories and forums at once. If you would change the position of your forums and the position and name of your categories and hit either “Save” in “Edit forums” or “Edit categories”, only the changes in the panel you would click “Save” on would be saved. And that’s bad.

Secondly, and this is more important to touch-enabled devices, the “Edit” and “Remove” buttons are next to each other, without any space in between. While hitting the “Remove” button will trigger a confirmation, this is once again bad design.

Then there is the inconsistency of what you can edit in the overview: why can you only change the position of the forums within their own categories, yet you can change the name and position of categories? Why can’t you change the name of a forum too? Why can’t you change even more than that?

Another issue we’ve heard complains about is that child forums aren’t indicated at all. In fact, in Luna 1.3 it is possible to assign a parent to a forum and put that same child into another category and this overview would actually display it as such. Finally, the current design isn’t responsive either, which brings problems on small screens.

And all of that is actually kinda bad news. So we set out to do better with Luna 2.0 and the result was us redesigning the whole thing. The result is this:

luna20

And above you can see the result (as it stands now). First things first, these category titels “General” and “Browsers” are editable. They are text fields designed to not look like text fields. Below these category titles, you see an actual text field with numbers in. These are the position fields. As you can see, individual forums have them too. These fields will be present in the first couple of Previews of Luna 2.0 but we hope to kick them out of the software before the final release gets out, replacing it with a drag and drop system.

Anyway, to the forum settings, as you can see, the forums are now listed as colored bars (these colors are the colors you assign to them) and we’ve included their icons in the names if set. The edit button now appears in the bar too. If you want to edit just basic settings, you can click on the titles of the boards and their card will open, showing you settings for the name, position, icon and color. You’ll also see an option to remove a board and one that shows the forum is enabled. That later one is a new settings that allows you to temporary hide forums without the need of changing all permissions. You will be able to change it in Preview 1, but it won’t do anything just yet (because we’ll wait with that until the Mainstage gets its revamp).

As you can see, the “Bootstrap” and “Font Awesome” forums aren’t aligned to the left as all the others. This is because they are children of “Announcements”. There is now a visual hint! Additionally, even if you would put these forums before “Announcements” or in another category, they will still appear under “Announcements”.

And finally, you can now save both category and forum settings at once. It sounds like a small changes, but it is big and a serious leap ahead in managing your board. It’s all these enhancements that make Luna 2.0 already a better place to be. Menu management has actually a similar interface (only there aren’t categories and sub forums, of course).

We’re really looking forward to ship the first version of Luna 2.0 somewhere later this winter. We don’t have an ETA at this point, but the progress is promising and it would be awesome if we could get out our first preview somewhere in February. Stay tuned for more details and more looks into the next version of Luna!

Once upon a time, there was a Backstage

With Luna 2.0 Preview 1 coming along nicely, I found it kinda fitting to go over the history of the Backstage. We’ve done this before, prior to the launch of ModernBB 3.3, but this time around, there is so much more to say about the Backstage. So let’s take a look at how we got from¬†Dashboard 1.6 in ModernBB 1.6 to Backstage 6.0 “Astrid” in Luna 2.0.

Dashboard 1.6/1.7

adminpanel1.6

Framework: None / Icon set: None / Awesomeness: 11%

As ModernBB 1.x was more of a maintenance release to continue where FluxBB failed, the Dashboard that could be found in these early ModernBB versions wasn’t anything different from FluxBB. What you see above is an interface that isn’t responsive and not optimized for management at all. It’s actually quiet boring. Moving on…

Dashboard 2.0

dashboard2.0

Framework: Bootstrap 2.3.2 / Icon set: None / Awesomeness: 24%

Similar to Luna 2.0, the first beta of ModernBB 2.0 focused on revamping the Dashboard – and only the Dashboard. This is where the basic structure that is still in use today, is introduced. Not only that, but for the first time in ModernBB’s history (which includes PunBB’s and FluxBB’s) a framework is introduced. In this case, it was Bootstrap 2.3.2. It’s the first time it appears, and also the last. But I’m gonna be honest with myself, the UI was a mess. Let me illustrate:

dashboard2.0bis

That’s the Settings-page. The very same page we’re now getting very positive feedback on. Let me be clear: this version… not that positive. And I can only say that I agree. Somehow, I found it a good look back in the day, now I don’t.

Backstage 2.1

dashboard2.0bis2

Framework: Bootstrap 2.3.2 / Icon set: None / Awesomeness: 27%

In beta 2 of ModernBB 2.0, not that much changed about the design, however, a notable change in functionality was that the index now included features instead of just a list of things you could do. And another obvious change was the introduction of the word “Backstage”.

Backstage 3.0

backstage3.0

Framework: Bootstrap 3.0.0 / Icon set: None / Awesomeness: 43%

Then ModernBB 2.0 beta 3 happened. Not only did this release revamp the front-end completely – something that’s totally besides the point for this blog post – but it also revamped the Backstage. Big time. We kicked Bootstrap 2 out, and included Bootstrap 3 instead. Thank god, you might say, because for the first time, the Backstage was finally taking shape.

Beyond a visual refresh – as you can see below – not that much changed to the Backstage in ModernBB 2.0’s releases after beta 3. It didn’t change a thing in ModernBB 2.1 either. The only notable difference was that Bootstrap got updated to version 3.0.2, and even that isn’t that notable at all.

backstage3.0bis

Backstage 3.1

backstage3.1

Framework: Bootstrap 3.0.3 / Icon set: None / Awesomeness: 51%

Little note: so far, non of the versions of Backstage where actually responsive. Backstage 3.1 did bring a responsive design. A poor implementation, but one nonetheless. This puts ModernBB in history as one of the first forum software to have a fully responsive design, thanks to Bootstrap. Version 3.1 also introduced the now much used panel-button (as can be seen in the “New reports” panel). For some reason, we also made the design wider. I don’t know why, but we did.

Backstage 4.0

backstage4.0

Framework: Bootstrap 3.1.1 / Icon set: Glyphicons / Awesomeness: 59%

ModernBB 3.0 introduced a less colorfull design (though it did introduce the idea of accents). It is however notable for Рwhat I believe to be Рthe first good implementation of Bootstrap in ModernBB. The result was a properly functioning responsive design and a much cleaner interface overall. Through later versions would still improve on that, it was a major improvement. Also, we started using icons in the Backstage in version 4.0 too. ModernBB 3.1 and 3.2 also used Backstage 4.0 with some minor adjustments.

Backstage 4.1

backstage4.1

Framework: Bootstrap 3.1.1 / Icon set: Glyphicons / Awesomeness: 49%

And this is the point where we got into a personality crisis. Backstage was redesigned with a more colorful interface once more. And a bright on. A little to bright (but the worst has yet to come). This version of Backstage did introduce the accent system we use today (that is, setting the accent). ModernBB 3.4.3 would upgrade Bootstrap to version 3.2.0, but did not bring any other visual changes. It was a release I am particulary proud of, the Backstage design? Not so much.

Backstage 4.2

backstage4.2

Framework: Bootstrap 3.2.0 / Icon set: Glyphicons / Awesomeness: 56%

As if Backstage 4.1 wasn’t bright enough, version 4.2 made the navbar white. White! It did make the design look more professional and all, but it certainly was a downgrade for people working often in dark spaces with not enough light.

Backstage 4.3

backstage4.3

Framework: Bootstrap 3.3.1 / Icon set: Glyphicons / Awesomeness: 64%

The good news is that that light design didn’t last that long. ModernBB 3.6 started to introduce design aspects that could be found in the Luna Preview 0 builds from that time. This time, the Backstage did gain a functional update: touch-friendly dropdowns for tablet users. Backstage 4.3 is basically the last iteration of the Backstage 2-based series. ModernBB 3.7 used the exact same code for it’s Backstage and after that, it was Luna all the way. But ModernBB had one last update…

Backstage 4.9

backstage4.9

Framework: Bootstrap 3.3.5 / Icon set: Font Awesome 4.4 / Awesomeness: 83%

ModernBB 4 brought Backstage 4.9 along. This version of the Backstage was a back-port of the Backstage that could be found in Luna 1.1. It brought Font Awesome as the icon set to ModernBB and was the final ModernBB release.

Backstage 5.0

backstage5.0

Framework: TrentUI 1.0 / Icon set: Font Awesome 4.2 / Awesomeness: 71%

So, now we go backwards. Backstage 5.0 is older then version 4.3 and 4.9. This is the first itteration of Backstage since version 4.2. It introduced a brand new design and 2 noticable framework changes: Bootstrap was set aside for TrentUI (a Bootstrap fork) and Font Awesome took over the Glyphicons usage. Perhaps more important: this update changed the menu and required less navigation within the hamburger menu on small screens. Later revisions did put Bootstrap 3.3.0 back in place.

Backstage 5.1

backstage5.1

Framework: Bootstrap 3.3.1 / Icon set: Font Awesome 4.2 / Awesomeness: 82%

Luna 1.0 Preview 1 brough along a familiar design if you’re used to todays versions of Luna. The interface was made darker and flatter.

Backstage 5.2

backstage5.2

Framework: Bootstrap 3.3.1 / Icon set: Font Awesome 4.2 / Awesomeness: 84%

Luna 1.0 Preview 2 made panel headings more distict and stand out and brought minor visual changes. It was basically the last major itteration of the Backstage for the Luna 1.0-branch. 1.0.7 brought the “brand”-update, which included our lighter blue brand color, the one still in use today.

Backstage 5.3

backstage5.3

Framework: Bootstrap 3.3.5 / Icon set: Font Awesome 4.3 / Awesomeness: 87%

Which brings us to todays Backstage. While both Bootstrap and Font Awesome have been updated since the original Backstage 5.3 release (as part of Luna 1.1), the design has remained the same and no big changes where applied. It’s our best Backstage yet that’s publicly available. But we have one version that’s even better: Backstage 6 “Astrid” right now in development.

Lessons learned

After a little less then 3 year of iteration changes and 2 major revamps (Backstage 2 and 5), you might think that we’ve learned our lessons on how to make a great administration interface. And yes, we did. And all of that is going to come together in the 6th version of the Backstage, and the third major revamp (though, since it is a rebuild from scratch, you might say it’s the first major revamp). It’s going to be gorgeous. We’ll have a blog post up about Luna 2.0 Preview 1 early next year, so stay tuned!

Luna 1.3 nearing beta

For the past couple of weeks, I’ve been working on both Luna 1.3 and 2.0. While more attention has gone to the 2.0 update, there is also work being done for the 1.3 update. So now that this update is nearing the beta stage, I think it’s a nice idea to talk a little bit about what’s in it. So, first the stuff that is already in:

Themes and Backstage design
Luna 1.3 will be a rather minor update on the surface. The obvious things first: we will bring along a major revamp for the Sunrise 2.0 theme, making it look more like the classic Random themes from ModernBB. Another major Рalso theme related change Рis the Fifteen 1.3 update. The theme will now show categories and filter options in the sidebar on the index. Further, we made serious improvements to the mobile interface of the theme. Idem dito for the Backstage.

Features
We’re introducing the “important” label. It’s a lot like the “pinned”-label, but it simply doesn’t stay put on the top of the forum list. Talking about labels, we’ve also changed the “new”-label to match all the others.

System changes
We’ve done some major work on timezones. First of all, we’ve included a serious amount of new timezones that where missing prior to the 1.3-update. Secondly, we’re now also taking care of Daylight Saving Time ourselves, instead of the user needing to change it manually in the profile and admins in the Backstage. Further, this update includes a couple of minor developer changes.

Preparing for Luna 2.0
However, the biggest change in the codebase is probably the major renaming work that has been done to the database. We changed a couple of things to match our terminology – much – better and that includes the database update. This is done to make sure that we can keep Luna 2.0 as clean as possible. We’ve also included some brand new coding conventions for our CSS files.

However, the changes won’t stay limited to just those. Here are the features we’ve yet to include but are planned to land in the coming days:

BBCode enhancements
Luna 1.3 will include 2 new tags for BBCode: center and size. However, because we’re well aware that if you give users freedom, they will abuse it, the size-tag will be disabled by default. Additionally, we’re also planning to update the video-tag to use Bootstraps responsive video embed class instead of our own fixed widths. These 2 options will disappear from settings in that update.

High-DPI support
Luna is a rather High-DPI-compatible platform as we don’t use much that isn’t scalable. However, the things that can’t scale, are horrible. The default avatar, test image and emoticon set will receive an upgrade to work better with High-DPI screens. Additionally, I would like to recommend you to use emoji’s instead of emoticons. As of Luna 2.0, emoji’s will be enabled by default once more (after we decided to disable it by default during Luna 1.0s test phase due to complains about Chrome not using emoji’s, but honestly, I don’t care much anymore and I’m getting sick about Chromes weird behavior; so that’s that)…

So these are 2 of the major additional changes that are coming. We’re planning some other minor changes beyond these. In case you didn’t notice, Luna 1.3 is more of a minor refresh that focusses more on details than that it is a major update 1.1 and 1.2. Most of my focus for major features has now shifted to 2.0; and I think that – if you guys see the result of that – you’ll be very happy that I did.