Skip to content
Knowledge Shaper. The editor to share your knowledge.
Branch: master
Clone or download
puria 🔀 Merge pull request #114 from puria/dependabot/pip/ksweb/libsass-0.18.0
⬆️ Bump libsass from 0.17.0 to 0.18.0 in /ksweb
Latest commit 6845e59 Mar 14, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
ansible ⚡️ Enhancing outdated ansible syntax Dec 21, 2018
data 🐳 Docker setup Dec 2, 2018
.codecov.yml codecov config Apr 1, 2018
.out 🔧 Autoenv deactivation and install file Aug 23, 2018
.travis.yml 👷 Nov 15, 2018
Dockerfile 🐳 Docker setup Dec 2, 2018
LICENSE Licensing with AGPL Jun 12, 2017 Adding NOTICE file with mentions and obligations for 💼 and 👮s Apr 21, 2018
docker-compose.yml 🐳 Docker setup Dec 2, 2018
nose 🎨 adding nose test to commit hooks Dec 28, 2018


Build Status Coverage Status FOSSA Status License: AGPL v3

The KS (Knowledge Shaper) is a Document Automation digital product that enables the shaping and reuse of Knowledge Bases. Our effort is to allow and facilitate the creation of wizards that easily outputs documents just by answering to simple questions with an extra effort to a functiona design and UX.

You can try the demo online available on Some example of Knowledge Bases are:

🚩 Table of Contents (click to expand)

🐳 Getting started

The easiest way to run ksweb is inside a docker container. just run

git clone --recursive
cd ksweb
docker-compose up

For instructions about how to install docker-compose please refere to the official documentation

💾 Manual Installation (for advanced users)

Checkout the project

git clone --recursive


Before install KSweb you need to have an instance of 🍃mongodb up and running, the python development headers and python3-virtualenv packages NB you need python3 >= 3.6 and pip >= 18.1


run the installer:

🍎 macosx

brew install python3
cd ksweb

🐧 debian derivatives

apt install python3-dev python3-virtualenv
cd ksweb

Manual installation


Install ksweb using the script

    # Enter into the first project folder
    $ cd ksweb
    # Create a virtual environment for python2 (important)
    $ virtualenv -p python2 venv
    # Activate your virtual environment (very important)
    $ source venv/bin/activate
    # Enter the subproject folder
    $ cd ksweb
    # Install all the dependencies
    $ pip install -e .
    # Populate the mandatory data (TO RUN JUST AT THE FIRST USAGE OF A DATABASE)
    $ gearbox setup-app

Start the http server

 # Start a local webserver (NOT SUITABLE FOR PRODUCTION) 
 $ gearbox serve --reload

Then you are ready to go 🎉

🎮 Usage

To run the webapp activate your virtualenv and run the server:

cd ksweb
source venv/bin/activate
gearbox serve

and head your browser to http://localhost:8080

Default accounts (username - password):

Administrator: admin 🔑 adminks

Lawyer: lawyer 🔑 lawyerks

User: user 🔑 userks

🔧 Configuration

The conf files are development.ini and test.ini.

The most effective way is to edit the file and tweak stuff. Salient info are reported below.

🍃 MongoDB

The url of the database connection is ming.url find it in development.ini and change it per your needs.

🌐 I18n

The UI of the knowledge shaper is already translated in English and Italian. If you need othe languages, please indicate us someone who wants to help, and open and issue. The extensive documentation about how the translation works is available on this section of the Turbogears official site.

In briefe allows to:

  • Create a new language (also called Catalog)
  • Extract the strings from the software
  • Update and Compile existing language/catalog

The catalogs are simple .po files that anyone can open with a translation software (eg. Poedit)

📝 Notes

🐛 Troubleshooting & debugging

To run the app in debug mode launch the server with the following flags

gearbox serve --debug --reload

😍 Acknowledgements

Copyright (C) 2018 by

Designed, written by and currently maintained by Puria Nafisi Azizi.

👥 Contributing

  1. FORK IT
  2. Create your feature branch git checkout -b feature/branch
  3. Commit your changes git commit -am 'Add some fooBar'
  4. Push to the branch git push origin feature/branch
  5. Create a new Pull Request
  6. Thank you

💼 License

Knowledge Shaper, Collaborative knowledge tools editor
Copyright (c) 2017-TODAY <>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <>.

FOSSA Status

You can’t perform that action at this time.