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!

Round-up #17 – Fallow: Third time’s a charm

TL;DR: Luna 2.0 Fallow is in development. Ain’t that awesome?
For no “blast from the past”, skip first 6 paragraphs.

ModernBB 2 was an awesome release, the whole (or something around 95%) of the old FluxBB interface was rewritten in Bootstrap 3, making ModernBB one of the first forum engines to have a full responsive design without any compromises (that is, you won’t lose functionality just because you’re using a smaller screen). In future updates, we continued to refine that design and we nailed it with ModernBB 2.2 if I say so myself.

ModernBB 3 was mainly a rewrite on the back-end, but also contained a lot of improvements to our responsive design. It added quiet a lot of functionality and was refined in 8 subsequent updates (3.1 – 3.7 and 4.0). All bringing along new features that would eventually make up a part of the Luna feature set.

Luna was, just like ModernBB 3, a major jump in both the codebase and design. With Luna, we tried to reimagen forum software design from the ground up. We made – what we believe to be – the best management interface out there with Backstage 5 (sure the UX wasn’t on par with things like position numbers, it still isn’t). And we did away with the idea of individual forums and categories you needed to go look into to know what threads where updated thanks to the reworked index (as long as you had Fifteen as your theme).

These where the released versions of ModernBB/Luna and while we’re proud on these, we’ve had some projects in the past – 2 to be exact – that went beyond that. These 2 projects where named “Vanellope” and “Luna” respectively. Vanellope was a version we started developing during the beta stage of ModernBB 3 and was ment to be a full rewrite of ModernBB. It eventually got canceled but many ideas of it got inserted into ModernBB 3.1, 3.2 and 3.3.

The “Luna Project” was originally planned to be a major refactoring of our source code too. Rebuilding it from scratch. In stead, the project got cancelled once again and many of the ideas from this new project ended up in Luna 1.0 and following versions, the software you’re using today.

Twice we tried to rewrite our code, to break from the past and start anew with modern code. Twice we failed. Third time’s a charm, right? I hope so. In the past days and weeks, I’ve been asking for feedback on quiet a lot of things about Luna on our board. I’ve been showing of some design ideas and mock-ups of what could be “the future of Luna”.

Today, I’m pleased to announce that I am in fact working on a brand new piece of software that eventually will take the place of the then current version of Luna (which should be Luna 1.4 by then). This project is being written under the name “Fallow”, following on Aero, Bitterweet Shimmer, Cornflower Blue, Denim and Emerald, the codenames for the first 5 Luna releases. The version will – obviously – be “2.0”.

Fallow has been in development for a couple of weeks now and I think I’ve been making some nice progres. The codebase is being rebuild from scratch, we’ve got a shiny new core named Jewel, a framework developed by Studio 384 that contains some handy features, and a brand new database layer that has support for MySQL and anything based on that (MySQLi, MariaDB, etc.). SQLite support is coming soon!

Fallow is not only going to be a rewrite just for the sake of it. No, we want to build Luna from the ground up for a reason, or actually, a couple of reasons:

  1. Goodbye GPL. Our license has been holding us back, it has been holding the community back and I don’t like that. GPL is, despite being made by the Free Software Foundation, one of the most restricted open source Licenses out there. We’re currently looking into a new license and MIT or BSD(-like) are licenses we consider promising. Our we might ending up our very own license.
  2. Rewriting Luna means that we can start over again and use modern technologies at the core of Luna. Right now, it’s a hard task to mess with the true core of the project because it requires changes throughout the whole code and more often than not, that triggers unwanted side effects. A clean core is an important change, not only for that, but also because it is more future proof. Think extensions and so on. The PHP requirements won’t probably go up from PHP 5.3 (at this point).
  3. Rewritten markup, rewritten CSS. This might sound like something trivial and something we could easily do in other releases, but rewriting the whole interface is also a big plus for this. Our main focus for this point is to give Luna an overal more unified look. We got a lot of comments on the way Fifteen looked like in Luna 1.0 and 1.1 and fixed a lot of these issues in 1.2 and the upcoming 1.3, but we don’t feel like we’re done just yet. And Fallow is going to bring a much improved design, for both the Mainstage as Backstage. Oh, and we use Less now.
  4. Improved security. We’re taking the chance with Fallow to give our security a serious upgrade, make some serious improvements to encryption, limit the amount of login attempts that can be made within a certain period of time and more and ask new users a question to verify that they are in fact users and not bots.
  5. Very, very small. Luna has grown in size over the releases, now clocking in at over 1 MB when compressed. I’m quiet glad to tell you guys that at this point, the current core clocks in at just 70 kB. On a side note, by for not all features have been included yet, including the whole Backstage, but I have fait. Our goal is to keep Luna very small.

I’ll be talking a lot about the Fallow update for Luna in the near future, so keep an eye on our blog. Sneak peaks will be shown on our board most of the time, unless I’m going to do a serious blog post about that too. I hope you’re all up for some fun. It’s gonna be great!

I don’t have an ETA on when Fallow will land, or when even the first Preview will land, or when it will land on GitHub to begin with. The only target dates I can give right now are those of Luna 1.3 Denim and Luna 1.4 Emerald. And why do these releases matter? Well, Luna 1.4 is currently planned to be the final Luna 1.x release and thus it might be around for a long time. And both 1.3 and 1.4 will contain changes that prepare Luna for the Fallow update. Anyway, the release dates for both version are known for quiet some time now. Luna 1.3 is planned for a December 25, 2015 release, and Luna 1.4 will follow on April 13, 2016.

As mentioned above, SQLite support isn’t planned for the premiere release. And that might botter a lot of people out there. However, we’re planning to include it someday. 🙂 But this might not be something that will happen in Luna 2.0. That’s why Luna 1.4 will be a Long Term Support release, that’s the first time we do that since ModernBB 1.6. We’ll support Luna 1.4 for the then forseable future, until you guys can also migrate to version two point oh.

Round-up #16 – Our philosophy

There are a couple basic rules which we keep in the back of our head when developing Luna: our philosophy. And since this is actually nowhere ever explained in detail, let me do this right here. And yes, we’re doing another round-up, one year after #15.

First of all, Luna is supposed to be light. Light in that it has the basic features a board needs in 2015. We don’t want fancy features that are not essential to boards. Why? Because light means simple, simple is less and less is more.

No non-essential Javascript. Javascript is an amazing tool and it can make anything you could imaged dynamic. However, modern boards tend to over-use this and use Javascript anywhere, even when this is not needed. The result is a more bug-sensitive board and additional work for your browser. That is if you’re browser has Javascript enabled or even supports it (and Webkit-based browsers are horrible on this point, especially for the more advanced features). Luna uses Javascript, but only for the essential parts: making the Bootstrap framework work (with jQuery), improving the experience in tables and making sure notifications reach you whenever they are send to you.

No third-party influence. This is something a lot of our users have complained about, or actually, just some of them, but they did complain a lot to cover almost everyone: why is there no possibility build-in to login with your Facebook account? Well, that is because Facebook is a third-party. And we don’t do third-parties for a simple reason: you can’t possible predict whether or not that third party will continue to exist. Even Facebook will some day disappear. That might be a very distant future, but it could happen. A more possible issue is that third parties change their APIs rending your board unusable. And we’re only talking about registration and login here. That’s also the reason why Luna will no longer use CDNs – which where the one exclusion on the rule – and instead put all the packages in the core.

Simple code and simple installation. Another goal of Luna is to keep our code in the back-end simple too. It’s nice to have a simple-to-use piece of software, but its even nicer if you can also simply understand what makes all of that possible. That’s why we like to keep our code lean and simple, this will be something especially Luna 1.3 “Denim” will focus on with our reimaged coding conventions for CSS and PHP.

Another thing is that a lot of projects out there tend to become more and more confusing on what you need to install their packages (especially pre-release versions). And we don’t like that idea. That’s why we continue to use our drag-‘n-drop methode. Easy and simple: just put the files on your server with any FTP program out there and go ahead. And updating? It’s basically just installing: drag-‘n-drop the files on the server over your previous version and just hit the “Update” button that appears on your board and you’re ready to go. No complicated upgrade processes that require you to replace only certain files or require you to go into your database and change stuff or change files in the Luna core… Just make a back-up and get started.

Round-up #15 – Development and roadmap update

In the past couple of days, we’ve changed some stuff around the ModernBB and Luna project. Let me list them for you… Also, I want to say some stuff about development that goes on.

ModernBB 3.4, 3.5 and 3.6
First of, ModernBB. As you know, we’re working on ModernBB 3.5 (a rather minor release). We’re almost finished with this version, since the beta, we’ve made some little changes, including updating Font Awesome to version 4.2 (from 4.1). Further more, we’ve fixed 1 bug. Before 3.5 goes to stable next week, we have only 1 feature and 1 bug left to fix. Anyway, due to this timeline, we’ve decided to cancel ModernBB 3.4 Update 4 (version 3.4.4). We also have canceled ModernBB 3.6, instead, small enhancements will be added in future updates to ModernBB 3.5. For example, in ModernBB 3.5 Update 1 (we have a bi-monthly update cycle for 3.5).

Luna
For Luna, we’re making great progress, new features start getting  into the software, while most changes have been made to the Backstage for now, the user list is also worth taking a look at, as it too has been updated. We expect to ship our first preview, Luna 0.1, this fall. It will include some new features, and most notable of all, the new theme engine. There won’t be a plugin system, we leave that for Luna 0.2. We first want to get the current core extended and moved to the next level! Anyway, currenlty, we target Summer 2015 for the Luna 1.0 release. However, we do concider a marge up to Fall 2015.

People that have been testing the nightly builds from GitHub, are now using version 0.0.40.2979. Compared to version 0.0.35.2491. For that, by the way, does those version numbers make sense? Well, of course, you will know version 0.0.35.2491 better as ModernBB 3.5-beta, “0.0.35.xxxx” is the Core version, not the actual software version. In Luna, we made a jump to 0.0.40.2900. Why skip all those builds from 2491-2900? Well, those are for 3.5-updates reserved. The build number does make sense. Anyway, somewhere close before we finish Luna 0.1, the core version will be changed from “0.0.40.3xxx” to “0.1.3xxx”. Just for your information…

GitHub branches
For those keeping an eye on our GitHub repository, you might have noticed that the amount of branches dropped from 10 to 3. Which branches are gone? Well, first of all, we removed the old version1.6, version2.2 and version3.4 branches, as those do not belong to the current versions of ModernBB. However, we also decided to kill of version3.6. Further more, we killed of stable, as this branch is basicaly the same thing as master. Finaly, we also removed modernbb.be as a branch from the public eye. This leaves version3.5, luna1.0 and master as the only branches that are left.

Round-up #14 – Let’s do a round-up about round-ups & more useful stuff

Well, it’s a very active month, I guess. It has been quite in the round-up category for a couple of weeks, and now, we’ve posted 3 posts in less then a week in it. This time, I want to spend some time to round-up all round-ups and talk about some more recent changes.

ModernBB.be blog
First of all, you probably noticed our completely redesigned blog. This is done as part of the 384 Group design and code conventions. The style blends in way better then our previous one. That’s clear. Anyway, you can’t access all posts very easy now, and comments aren’t available either (so is a sidebar and pagination). Those are things we will add later on. For now, you’ll have to deal with the stuff we got. At least, it’s now responsive and faster.

ModernBB is a growing platform
Perhaps you noticed on the ModernBB Twitter feed, but the first tutorial about ModernBB that isn’t from the 384 Group was posted yesterday on YouTube. A nice “thank you” to the people over at Coder’s Guide. What does this mean to ModernBB, you ask? Well, since yesterday, the amount of downloads is growing faster then before, and I’m prety sure we can thank this video for that. The fact that ModernBB has now a third-party tutorial, is great. On the other hand, the people at Wikipedia think we are also worth to have a page there. So, if that thing is running behind, update it! All of this is proof that we are actualy getting somewhere, we’re growing, and that’s great and prety important for a community.

For the mather, as part of the 384 Group coding and design conventions, ModernBB is going to get some official brand assets. This means that, very soon, an updated to our website will add a new “Brand Assets” page to the “About” section, here, you can find all of our logos (which means, all color schemes). You will be able to use those logos wherever you think you want to mention us. As much as possible, ofcourse. 🙂

ModernBB 3.2, 3.3, 3.4, 3.5
In the 4 upcoming feature releases, we will spend a lot of time on modernizing the interface of ModernBB. 3.2, 3.4 and 3.5 will focus on the front-end. While 3.3 will focus on the Backstage. The 3.2 updated is planned for late May. 3.3 should be here early this summer. We hope to get 3.5 out before the end of the year. 3.6 and onwards will focus on making ModernBB a platform with modern features, as we will put some work in a better template system and a plugin system (again). Another feature that is being worked on right now, is a fancy new update system that allows you to update ModernBB right from the Backstage with a click on a button.

That doesn’t mean that 3.2 until 3.5 will only focus on design, we’re also adding new features and improving others, just no big feature updates, unless realy required, or if I finish the new styling system and plugin system before the time it was planned. The development of both those features will start shortly and have their own branch and milestone on our GitHub project.

Looking for developers
If anyone is intrested in developing ModernBB: good news. Since I’m the only developer, I’m looking for people that can join me in creating a better piece of forum software. How can you get started? Join our forum, create a GitHub account (if you don’t have one yet), push some nice improvements to our repository, etc. If you’re good at that, I’ll add you to our team so you can claim some tickets for yourself.

Round-up #13 – Redesigned experiences – UPDATE

4th blogpost in 3 days, we’re going hard in April! Anyway, I would like to talk about something you might have noticed in ModernBB 3.1 and in our announcement for ModernBB 3.2 and 3.3: we’re revamping some serious stuff in our forum software. Is this a coincidence or…

Well, no. It isn’t. As you know, we were planning a rebuilded forum software, named Vanellope. But we stopped development of it when we started working on ModernBB 3.1, which backported the new topic view. And that’s exactly what’s going to happen now everywhere else. Version by version, you will see ModernBB switch to a new design. Page by page. What version of ModernBB is going to redesign what? Here’s a list:

ModernBB 3.1 – Topic view (part 1)
ModernBB 3.2 – Profile
– Help
– User list (part 1)
– Topic view (part 2)
ModernBB 3.3 – Backstage
ModernBB 3.4 – Index
– Forum view
– Login
– Register
ModernBB 3.5 – Installation
– User list (part 2)

Why are we doing this? Because it’s time to reimagen the way forums are designed. Why not all at once? Because we simply don’t want to create one big redesign release. We want you guys to be able to play around with the new stuff whenever it’s finished. Are you guys going to be able to follow the above scheme? If you ask that, you don’t know us. Of course we wont. Through this is the planning now. Tomorrow it could be different.

In other news, expect ModernBB 3.1.1 to be released somewhere in the next 7 days.

Round-up #12 – Taking advance of the 384 Group design and code guidelines

The 384 Group, which we are part of, today announced that all websites and software that are part of this group, have to follow new guidelines for both design and coding (coding in case it’s a software product). This affects us prety hard, as the ModernBB Group is the only group inside the 384 Group that actualy provices software (simply because all software that is made by other groups, except for FluxSmile – who doesn’t has to aply to the new rules). What does this mean for us?

ModernCount
ModernCount is a piece of software, less known than ModernBB, that is developed by us. Through it’s available as download at the Studio 384 website. Anyway, it has been a while since the latest update (version 3.1) and this piece of software realy can use a big update. That’s why ModernCount 4 will be released soon. This version will follow the new design guidelines, through it’s the only piece of software that doesn’t has to follow the code conventions, for now.

ModernBB
ModernBB on the other hand, has to aply to the new design conventions starting 15 May 2014, this means that the next feature release after this date has to be designed according those rules. One month later, on 15 June 2014, the code has also to be conform the coding conventions. This means that ModernBB 3.3 will have the full design, and ModernBB 3.4 will have the refactored code. Through, of course, we are allowed to get things ready before then, so it’s highly possible that ModernBB 3.2 will already start following some of those new conventions.

Note that, since the front-end of ModernBB is clasified as a “public section”, it doesn’t have to follow the design conventions. Only the Backstage has too. The front-end has to follow the code conventions, through.

ModernBB.be and ModernBB Group Blog
The good news on this part is, that the new design and code conventions are based on the design en code conventions that are used to design and code ModernBB.be (and Studio384.be), thus both websites are already ready. Our blog, however, has to be redesigned so it fits better in (and this was planned for a while, but now we just have too). This should be done by 1 July. That same day, Studio 384 will also refactor their own blog.

Why do we have to do this?
For developing reasons, it’s important that the 384 Group delivers a great experience around all of it’s products and software. This is why we have to do this. We will later publish those conventions online.

Luna: A reference guide for planning

modernbb40p
So, I’ve got this fancy bundle of paper here next to me. It’s a information guide about our Luna project, perhaps better known as ModernBB 4. ou might would like to read it. Now, I’m still working on it (refinments), and will publish it tomorrow. Also, stay tuned for the 2nd alpha release of ModernBB 3 tomorrow.
WP_20140117_001
WP_20140117_002

Round-up #11 – Interfaces and databases

modernbb30d
It has been a beautiful week. This week, we released 4 new versions of ModernBB (1.6.4, 2.0.2, 2.1.2 and 2.2.02), and of course, we continue development of what’s next. And what IS next? Well, that ModernBB 1.6.5, 2.2.05 and 3.0.0. And it’s that last one we’ve worked on a lot. Let’s talk about that.

Database and DB Layers
Well, we’ve made some changes for the database layers. The first one is, we dropped support for PostgreSQL. Why? Because we think that this database type isn’t used enough to support. Another big changes that has happened, and where we’re still working on, in the support for SQLite 3. Finaly, FluxBB and so ModernBB (we where planning this earlier than them, but they took our idea!) will do the same (support for SQLite 3 comes also to ModernBB 1.6 and 2.2). However, we’re also thinking about removing support for MariaDB, which is supported since ModernBB 2.0. For the same reason as we stop supporting PostgreSQL, it’s still in considering, but it could happen.

The Backstage Interface
Something else we spend a lot of time on, is the Backstage interface. We’ve improved a lot! First (and most notable), the color scheme has changed. We’re now on a black-blue color scheme, instead of a blue one. The Backstage also uses more of the elements that are available in Bootstrap (like tables in this case). We’ve also worked on the consistency of the interface. All pages now have a title. Buttons are a lot more consistent, everything is.

We’re not done yet. The interface is still to change. We want the blue color to be more of an accent. This will be used to create a new option to change the color of the backstage. Awesome, isn’t it? However, for the once that liked the color scheme from the ModernBB 2.x series, we might concider adding a color scheme that sets back those things.

Other stuff
We didn’t stop there, not even close. The Bacstages “Forums” and “Categories” page has been removed. What? But that’s the place where we could manage our forums and categories!? Indeed, however, we’ve added a new page, “Board structure”, that contains both pages, to give you a better overview. The update message on the front page of Backstage also has been revamped, it doesn’t show buttons anymore, instead, there is a new button on the index that brings you to a special update page.

ModernBB 3 now also requires at least FluxBB 1.5 or higher to be able to upgrade. Other work has been done on the action bar in the topic view, however, this isn’t finished yet. ModernBB 3.0 is also using a development version of Bootstrap 3.1, and we are planning to update jQuery to version 1.11 beta 2 too. Now, we’ve done a lot of work already, but we are far from finished! The template system needs work, the Backstage needs work, the front-end needs work, everything needs work! Check our shiplist to see what’s coming!

Round-up #10 – Planning ModernBB “Odd” 3.0

modernbb30p
ModernBB 2.2 has been released! And, of course, we’re already planning the next version, for a while, to be exact. I mentioned ModernBB 3.0 a time ago in round-up #9, but now, it’s going to be serious. ModernBB 3.0 is the next big milestone for ModernBB. Let’s talk about ModernBB “Odd” 3.0.

Ambition: 100%
ModernBB 3 will be a very important release. Seriously. We’ve got a lot of thing planned. It won’t be a visual big release compared to ModernBB 2 (which turned out to be buggy, lots of issues have been fixed in ModernBB 2.2.1 and onwards). However, we do plan a visual rework of the Backstage, but not that much is planned to change on the other side of the software, our front-end. However, we’re planning to do a lot of work with ModernBB 3, that’s for sure.

ModernBB goes Modern
With our responsive design, we’re one of the first bulletin boards to have this by default. Compared to a lot of other forum software, we also have a prety good construction for our Backstage, where other forum software might be complicated (phpBB refference). However, there is still a lot to do that makes us even more modern. What about SQLite 3 support? We planned this already for ModernBB 2.0 and 2.1. This since support for it ended before the feature was finished, that didn’t turn out well. For now, it seems that this feature will only find it’s way to ModernBB 1.6, 2.2 and 3.0.

But that’s (of course) not everything. We’re planning to create a hook system, so no core changes need to be done. The editor will also be replaced with a more feature-rich WYSIWYG editor. Meanwhile, updating should be very WordPress-like: one click, and go! The parser will be updated once again, for example, support for syntax highlighting. And the login form will disappear and be replaced with a modal (in most of the cases, at least). The template system is also supposed to get a major reform.

Further, ModernBB 3.0 will use jQuery 1.11 and Bootstrap 3.1.0 (at least). Since development of ModernBB 3 will take a while, this might change to even newer releases, like jQuery 1.12 and Bootstrap 3.2 (or something like that). We’re also not yet sure if we stay in the 1.xx branch for jQuery, so we might upgrade to jQuery 2. That also means that support for Internet Explorer 8 will be dropped, however, that’s still a major browser. With Windows XP getting close to EOL, that might change before ModernBB 3 is released, but probably, this will be something for ModernBB 4.