Skip to content
This repository was archived by the owner on Dec 16, 2020. It is now read-only.
This repository was archived by the owner on Dec 16, 2020. It is now read-only.

[DEV] Keira3: the future DB editor for AzerothCore #21

@FrancescoBorzi

Description

@FrancescoBorzi

Introduction

We've already been mentioning and discussing this topic here and there, however I wanted to open this thread and make it official:

I and my brother Helias are planning to create a new DB editor application for WoW 3.3.5a, fully compatible with AzerothCore.

It will be of course inspired by its precedessor Keira2 that we previously created:

Keira allows the user to edit the database via GUI and generates automatically the SQL code for him/her. It is inspired by the old Quice/Truice database editor, originally developed by indomit, and by the Discover-'s SAI Editor.

Keira3 features and differences with Keira2

Keira3 will be built using web technologies (more details below), but it will be a cross-platform Desktop Application. We already felt that this would be better for our user base, and a poll on Discord confirmed it:

image

The initial version of Keira3 will have the same basic features of Keira2, that include:

  • Editor for SmartAI
  • Editors for Quest, Creature, Game Object, Item, etc...

In addition:

  • Execute SQL directly from the editor
  • No dependency on web APIs (the app installation procedure will be much simpler compared to the current Keira2)

Then we plan to introduce more features, but those will be part of later 3.x releases.

Technical details

We plan to create Keira3 using the Electron open-source framework, a tool written in C++ that allows you to build cross-platform desktop applications using web languages (HTML+CSS+JavaScript). Many modern desktop applications are built using this framework, including Discord, Visual Studio Code, Atom, Slack, Skype, etc...

Keira3 will be entirely written in TypeScript, a superset of JavaScript that allows you to build software using modern OOP techniques, and using the new Angular framework from Google (not to be confused with the old AngularJS framework).

Why not just updating Keira2 instead of creating a new app?

We created Keira2 in 2015 as web application using the old AngularJS framework which is no longer actively developed by Google. So that should be upgraded. The same can be said for other dependencies. Also Keira2 relies on a web API that I've created for TrinityCore just as a proof of concept, and it should be properly refactored and updated. It's just too much work and it's not worth it.

In addition, we want it to be an independent desktop application, not a simple web app. For these reasons a full rewrite is the best way to go. We will however benefit of our experience and some algorithms from Keira2.

When will Keira3 be released?

We plan to start the development soon, however we can't predict how much time we will take. We will work on Keira3 during our free time, just like any AzerothCore-related activity. But we are also busy in our RL with studies and jobs to maintain ourselves. If you want to support us, you can help with a donation.

The more donations we get, the more time we can invest on Keira3 development.

Metadata

Metadata

Assignees

No one assigned

    Labels

    developmentAny development-related topics

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions