Use XAMPP and Knowledgeroot to build your own knowledge base

Have you ever found yourself in the following situations:

– You find a great tip on the internet or in an email and you know that if you don’t record it somewhere right now, you will loose it.

– You get a certain Error message, and you know this is not the first time you had it.  You just know you have solved this error like a year ago, but you just don’t know where to look for for the solution you found before.

If you have Iron-bullet-proof memory, you don’t need to read any further.

I used to have a nice Visual Basic 6.0 application I created myself where I recorded all my notes in TreeView, a rich textbox and an Access Database, but this was when VB6.0 was my first language. nowadays with web, Java and zillion more programming languages, VB6 is considered to be out-of-hype choice.

So I decided to look for myself for a modern solution, I had the following requirements:

  1. I could upload my Access Database into the new solution database (database migration).
  2. Has to be in TreeView where I could categorize things under Domains and Sub-Domains.
  3. Has to be searchable.
  4. Preferably a web solution.
  5. Can easily handle files and images.
  6. Has to be OpenSource, so maybe I could modify it for my own purposes.

I found several good alternatives like personal-Wikis and several other tools which were desktop tools, but the one I layed my final choice on was KnowledgeRoot (Screenshots).

I like mostly the TreeView and it provides also a security model for multiple Authers and Groups.

KnowledgeRoot is an opensource PHP/MySQL application which you could download and install on your Web-server.

At the beginning I wasn’t considering a dedicated web-server, so I used a WAMP tool  instead.

WAMP tools are personal web-hosting-stack of tools which you can install in windows  (stands for Windows, Apache, Mysql and Php). You can search the internet for WAMP and you will find lots of them. My final choice was XAMPP, which has also Perl, and some extra plugins for FTP , Email and TOMCAT serving.

You can download XAMPP and install it  on your Windows machine and in One-Click you will have Apache server with PHP and MySQL up and running in no time.

Then you download KnowledgeRoot and follow the instructions to install it and create the database for it.

You will need to record you usernames and password while you are installing XAMPP and KnowledgeRoot.

I don’t want to get into details about installing either packages -because the web is full of it- but don’t forget to harden the security for XAMPP and KnowledgeRoot.

Worth noticing that XAMPP applications do not have a great memory footprint, so you can install it on your work or home machine without worries of slowing down your machine.

Once everything is in place, start building your database of know-how’s and tips. And don’t forget to create an export of your database and back-it-up somewhere separate and safe. (maybe put it in a job Scheduler ).

You could use it to store:

  • Useful SQL’s from your daily job.
  • Useful Unix command
  • Code snippets from the internet.
  • Code snippets you create.
  • Workarounds for error messages you encounter.
  • Upload files of your work (sort of version control)
  • use it to administrate your to-do list.
  • He-Said, She-Said database.
  • Favorites database.

If you are in a team which likes to keep a reposatory of SQL’s , Unix commands, short notes ..etc  in small text files on the shared network drive; you could open your Apache and KnowledgeRoot to the team members and start building your own Team-Wiki instead of sparse know-how-in-text-files. Just create the root nodes as an Admin and create some accounts and groups for your friends and colleagues.

If you are installing this tool at a home-PC, you could register and use no-ip.org to make it reachable from Office PC using a free web domain. Just don’t forget to :

  • Open Router firewall
  • Open windows firewall
  • Harden your Apache and KR well enough for the Inetrnet.

I have been using this solution for about 4 years now; and turned out to be very useful in many situations. I consider it the most important productive-tool I’m using today at work.

I do not recommend you to store passwords there (use Keypass instead).

Have fun and hope it is useful.