MDX SDK

i wanted to create a mdx SDK in c++ and i think this is the right place to ask.
i dont know much about the mdict format, but i know that some people have done for reverse engineering in it, but the knowledge is too distributed, and it’d be better to collect everything into a single place.

that SDK proposal would help the future generations to have access to mdict dictionaries, preserving the format and the work of those who make dictionaries in that.

the mdx SDK would be able to:

  • get information about dictionaries
  • retrieve html
  • get css
    and much more.
    please notice that this is different from mdict-utils for example, which aims to be a helper for those who want to build dictionaries, our SDK will instead enable programmers to develop more dictionary apps for a lot of platforms, by using our SDK they dont need to hold any previous knowledge about how the mdict format works, they can just read the API documentation and choose which functions to use.

Q. why c++?
A. because it’s timeless, if the code gets to work today, it will work basically forever, as long as a standard is set. (C++23 for example)

Q. why is that important for programmers to have a mdict library?
A. because then you can basically develop dictionary apps for the future platforms, or even some non-popular ones

Q. why care about preservation?
A. because i think that the work of those who make mdx/mdict dictionaries must be valued and the next generations would benefit from it

what do you guys think about that proposal? and if you have any resources for me to study about the mdx/mdict format, please cite it down below

edit: in addtion to what was sent here in the comments, there’s a quite clear explanation for the mdict 2.0 format

writemdict/fileformat.md at master · zhansliu/writemdict · GitHub

that file contains all the necessary explanations from a “from scratch” implementation

5 Likes

As far as I know, mdict-utils and Mdxbuilder are both compression tools. And MDX format is basically HTML, so maybe SDK for MDX is the same as SDK for HTML, with snippets libraries.

It will be great if someone could create a C++ version of mdict-utils, or an executable one like .exe file.

1 Like

as i said in the post, it’s more like a library, rather than a standalone program.
the library would help other people to use mdx in their projects

1 Like

https://bitbucket.org/xwang/mdict-analysis/src/master/

1 Like

不知道有没有Dart版本的sdk

thank you!