welcome to the open source software itom. It allows operating measurement systems with multiple hardware components, like cameras, AD-converters, actuators, motor stages as well as handling your lab automation. The graphical user interface provides a quick and easy access to all components, complex measurement tasks and algorithms can be scripted using the embedded python scripting language and self-defined user interfaces finally provide a possibility to adapt itom to your special needs. External hardware or algorithms are added to itom by an integrated plugin system.
In order to learn more about itom, see the official homepage itom-project.github.io or read the user documentation
- This repository is the main access to the itom core itom repository and it's affiliated side repositories designerplugins and plugins.
- Clone this repositoriy and initialize the submodules and checkout the latest master them:
git clone --recursive --remote git@github.com:itom-project/itomProject.git
cd itomProject
git submodule foreach --recursive git checkout master
- To Clone a specific Tag please enter:
git clone --recursive --remote --branch <tag_name> git@github.com:itom-project/itomProject.git
For more specific information how to build itom, please take a look at the itom core submodule.
You are welcome to use and test itom
. If you want to you are invited to participate in the development of itom
or some of its plugins. If you found any bug, feel free to post an issue.
After the first cloning of the repositories, the pre-commit hooks should be installed once.
pip install pre-commit
It's usually a good idea to run the hooks against all of the files when adding new hooks (usually pre-commit
will only run on the changed files during git hooks).
Tehrefore got to the main folder of the respective itom repository (e.g. itomProject, itom, plugins or designerplugins), which includes the pre-commit
configuration
file .pre-commit-config.yaml. Then run:
pre_commit run --all-files
The core components and the main application of itom are covered by the GNU Library General Public Licence (GNU LGPL). All components belonging to the SDK of itom
(e.g. dataObject, pointCloud, addInInterface,…) are additionally covered by an itom
exception. The main idea of this exception is to allow other libraries (e.g. plugins) to include and link against components of itom SDK independent on the specific license model of the respective "other" library. All files belonging to the itom SDK are included in the folder SDK that is shipped with any setup or included in the build directory (when build from sources).
The full text license of LGPL and itom exception is also included as file COPYING in the source distributions and setups.
All plugins and designer-plugins that can be integrated into itom can have their own licensing. Therefore the user is referred to the specific licensing documents or statements of each external library (plugin).
itom is being developed since 2011 by
University of Stuttgart
Stuttgart
Germany
in co-operation with
Stuttgart
Germany