What I’d like to do: Convert my wikimedia into a markdown formatted knowledge base.
Things I have tried - nothing yet
Did a search, but found nothing pertinent.
I’ve been using my own locally hosted wikimedia site for years. I mostly keep notes about my tech world, my home lab, maker faire events where I document my home automaton projects, and so forth. It is a labor of love, but it’s been helpful to remember what I’ve learned, what I’ve done, and to outline notes for future projects. It’s time to upgrade the system, for bout the 4th time, so looking at alternatives.
I’ve been developing my own web site for archiving family photos which go back to the 1870s; for family and friends. It uses express, some mongodb, bootstrap, etc. All the photos are stored in directories; no database (although I might set up some indexes for search) and part of the reasoning is for long term thinking, a somewhat low tech approach to accessing the files if the web site fails to function. All the meta-data of each image, besides EXIF, is stored in a sidecar file. So in some future, someone could reasonably repackage into a tech of the times.
I also added a story section in which each story is captured into markdown formatted files and I treat them more or less like I do with the photos; in directories associated with the user who wrote them.
Anyway, I’m wondering if anyone has any experience with converting a wiki (years worth) into markdown files and somehow treating internal links similarly to the wiki but for associated markdown files.
Also, I use my wiki mostly for myself but I’d like to have it shareable for family and friends; perhaps about a dozen users. I currently host my apps on a home lab KVM virtual exposing some to the WWW. Are there logins and user management built in to Obsidian? Not really interested in syncing.
Any thoughts appreciated. Thank you,
I’ve been working on something similar, expect with a third-party wiki that I’m scraping myself. Having access to the backend should make things much easier because MediaWiki actually includes a script to export everything to an XML file. Here’s their page on the subject.
From there, it’s a matter of converting the XML file into individual Markdown pages, and with a quick online search, you’ll find many tools to do so. I’m curious to read any responses from others, because so far, converting everything in a manner that does not require cleaning up every page by hand is proving to be a challenge!
I used the giant XML approach where we get a list of all the mediawiki pages, then run that through the XML export. After that I ran the whole thing (about 150 pages) through a python script that used pandoc to “convert” those pages into markdown. As it is just a personal informational wiki site I’m not too worried about the messy aftermath. It isn’t very pretty.
Over the weekend I built an express site (with pug templates) that wraps around the markdown directory and gives me a linkable list of all my pages. I can now list my pages, edit them (with simplemde), save them, and add them. Now, more cleanup needed.
Images - I’ve downloaded the images into a single dir and will likely parse all the links in each .md file into simple html tag for basic sizing
add login management so my friends and I can share
Do some basic dress up with bootstrap
And, of course, the cleanup is more tedious than the original framing.
BTW, I’ve been consistently using a See Also: set of links at the top of most of my wiki pages for cross linking related ideas. All those have translated perfectly.
Pandoc can convert wiki syntax to Markdown. You may be able to preserve the wikilinks now that those are becoming more popular in Markdown — I don’t know. I recommend looking at Obsidian’s options for link formats and choosing the one that seems easiest to convert to. Obsidian supports wiki or Markdown style for internal links, and absolute (from vault root), relative, or shortest (name only unless path needed to distinguish) links.
This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.