Karmen aims to give its users a single place for monitoring and managing multiple 3D printers. While existing solutions such as Octoprint excel in controlling a single printer, there does not seem to be an open source platform for a multi-printer setup or even a large scale printer farm.
Our solution is a perfect fit for a shared makerspace, small batch part factory or a public school that offers multiple printers to various users.
If you would like to take part in this project, hit us up on [email protected] or leave us a note on Gitter. You can read more in our contributing rules.
If you are interested in a more in-depth documentation, go visit our docsite.
Check our documentation for up to date instructions.
While it is possible to run both the Python backend and Javascript frontend as standalone projects, the most comfortable way is again with docker compose.
$ git clone [email protected]:fragaria/karmen.git && cd karmen/ # get the repo
$ mkdir tmp && docker-compose up --build
# GO VISIT http://localhost:3000/
The network autodiscovery via ARP does not work at all in the dev mode. The mDNS resolution
also does not work in the dev mode due to the networking configuration. (You can enable these two
features by altering the network settings of the containers, check docker-compose.release.yml
for inspiration).
On the other hand, two fake virtual printers are automatically added to your envirnoment, so you have a few things to play with.
Note: If something suddenly breaks within this setup, try to clean docker with docker system prune
, it might help.
If you are making a new release, you need to tag this repository and Travis does the rest. You also
want to bump the version numbers in the appropriate places in source code, such as package.json
, Python
modules etc. That's exactly what the make-version.py
script does. So the release procedure would be:
$ VERSION=1.2.3
$ python make-version.py $VERSION
$ git add src/ docs/ && git commit -m "Version $VERSION" && git tag "v${VERSION}"
All of the code herein is copyright 2019 Fragaria s.r.o. and released under the terms of the GNU Affero General Public License, version 3.