I know what you’re thinking. But Jay, you scream in disbelief, you’ve always told people that Kanka has a limited set of modules/entity types is the whole point of Kanka! By having well defined modules, you can build features that enhance each module!
And you are right. However, putting everything in the Notes module, bundled up, makes it messy. Unrelated things appear together, providing no clear separation.
Solutions were tried over the years with Bookmarks (shout out to those who remember when they were called quick links), parent notes to fake custom modules, but it still meant that you’d find a vehicle under the notes category, and the navigation was messy.
Custom modules
Custom modules (also known as Entity Types) can now be created on premium campaigns. This new interface is accessible in the campaign’s Modules management interface under Settings > Modules. The whole section is now split into Custom modules, Default modules, and Features at the end.

Currently, premium campaigns can create up to 5 custom modules, while we iron out the kinks in this massive new feature.
Creating a new module prompts the user to give a singular name, a plural name, and a fontawesome icon. An optional roles field allows the user to pre-fill permissions for those roles to have read access.

A bookmark to the new module is automatically placed in the campaign’s bookmarks section (which can be placed somewhere else by editing the bookmark).

Custom modules currently only support the grid view, not the old table view. We are investigating ways to include the table view, we’ll update you when we have more on this.

All custom modules come with the following familiar fields: name, type, parent, entry, tags, and gallery image. Custom entities can have attributes, permissions, reminders, inventories, assets, and mentions with other entities of the campaign. They also show up in the quick search!

Limitations
As with every major new feature, there are currently some limitations to new custom modules.
When copying a custom entity to another campaign, it will be saved as a Note in the target campaign.
Since custom modules can’t be rendered using the old table view, bulk actions are not currently available. We are bringing bulk actions to grid views in the near future.
Posts improvements
Posts can now be tagged! They appear as their “badges” but also in the post’s css classes, meaning they can easily be styled with CSS.

It’s also faster now to add permissions to posts, as the role and member field now accepts multiple selections at a time.

Lastly, posts can now be easily mentioned using the :: shorthand in the default text editor. This searches by entity name, since from our stats posts tend to have the same name, making a search by post name useless.

This injects a post mention. Behind the scene, this uses the [post:123456] syntax. This advanced post syntax can be retrieved by the “copy advanced mention” option in the post’s “…” menu.

This also allows us to introduce post transclusions using the [post:123456|transclude] syntax! This only works for posts of the default layout, not for special post layouts.
General Improvements
Campaigns get a new UI setting (Settings > Edit campaign > Permissions) to have mentions to private entities show up as the target entity’s name rather than the dreaded Unknown.


Mentions have a new field:attributes property to display the attributes or character sheet of the target entity directly in the current page.
Objects get a new weight property. The object quick creator form also now has weight, size and price fields.


Quests get a starting location.
When viewing a calendar, double-clicking on a day now brings up the new reminder interface. This interface no longer asks if you first want to link an existing entity or create a new event. Instead, the entity field allows entering a new event name instead.

When viewing the assets of an entity, we now include some icons for common file types to make it easier to know what is about to be clicked on.

Cancelled your yearly subscription but realised that we have the best worldbuilding tool? You can resume your cancelled subscription!
The dashboard’s random widget now includes options to select the display mode (preview, entry, attributes), similar to the preview widget.
When trying to access a private campaign as a guest, a new “private campaign” error page is shown, prompting the user to log in. If the user is logged in, it will also mention them not having access to the campaign.

Campaign admins can now add and remove multiple roles to members at a time, instead of having to do endless clicks. In the member’s interface, the + sign was replaced with a pencil, which brings up this interface.

If an entity has a header image that isn’t visible to all, the visibility icon will show up on the top right of the page.

Clicking on the icon brings up a new popup to edit the gallery image’s visibility. This same option was also added to the image dropdown.

Marketplace plugin creators can now cancel their version from being in review in case they realised that they missed something.
The colour picker now remembers your recently clicked colours.

A proper error is now displayed when trying to save multiple attributes with the same name, rather than deleting the oldest one.
The quick lookup panel now supports pressing the TAB key to navigate to the next option.

When exporting a campaign, the export progress now updates every 15 seconds.
Our roadmap’s done page is no longer “coming soon”, it’s here!
Text editor update
The team behind our text editor have released an update which should hopefully make it a lot less broken for the handful of Edge users.
Accessibility
We’ve made a lot of improvements again for screen readers. The various modals and dialogs are now properly marked when hidden, and many buttons have new and more detailed labels.
Bug fixes
Bulk-editing map markers is fixed.
Labels on maps now can use their opacity property.
The pronouns field now gets suggestions based on the other pronouns used throughout the campaign. Same for entity link icons.
That’s it for the overview of this 3.0 release. You can follow along what we’re working on next on our roadmap.
As always, thanks to our amazing subscribers for making this huge updates possible! Come join us on our Discord to get early sneak peaks of future updates.
