https://github.com/enthought/apptools
https://github.com/enthought/apptools
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/enthought/apptools
- Owner: enthought
- License: other
- Created: 2011-01-27T23:49:03.000Z (over 15 years ago)
- Default Branch: main
- Last Pushed: 2024-10-14T11:49:15.000Z (over 1 year ago)
- Last Synced: 2025-03-28T11:06:06.524Z (about 1 year ago)
- Language: Python
- Homepage:
- Size: 42.1 MB
- Stars: 37
- Watchers: 54
- Forks: 24
- Open Issues: 29
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGES.txt
- License: LICENSE.txt
Awesome Lists containing this project
README
===========================
apptools: application tools
===========================
Documentation: http://docs.enthought.com/apptools
Source Code: http://www.github.com/enthought/apptools
The apptools project includes a set of packages that Enthought has found
useful in creating a number of applications. They implement functionality
that is commonly needed by many applications
- **apptools.io**: Provides an abstraction for files and folders in a file
system.
- **apptools.logger**: Convenience functions for creating logging handlers
- **apptools.naming**: Manages naming contexts, supporting non-string data
types and scoped preferences
- **apptools.persistence**: Supports pickling the state of a Python object
to a dictionary, which can then be flexibly applied in restoring the state of
the object.
- **apptools.preferences**: Manages application preferences.
- **apptools.selection**: Manages the communication between providers and
listener of selected items in an application.
- **apptools.scripting**: A framework for automatic recording of Python
scripts.
- **apptools.undo**: Supports undoing and scripting application commands.
Prerequisites
-------------
All packages in apptools require:
* `traits `_
Certain sub-packages within apptools have their own specific dependencies,
which are optional for apptools overall.
The `apptools.preferences` package requires:
* `configobj `_
The `apptools.io.h5` package requires:
* `numpy `_
* `pandas `_
* `tables `_
The `apptools.persistence` package requires:
* `numpy `_
Many of the packages provide optional user interfaces using Pyface and
Traitsui. In additon, many of the packages are designed to work with the
Envisage plug-in system, althought most can be used independently:
* `envisage `_
* `pyface `_
* `traitsui `_
Installation
------------
To install with `apptools.preferences` dependencies::
$ pip install apptools[preferences]
To install with `apptools.io.h5` dependencies::
$ pip install apptools[h5]
To install with `apptools.persistence` dependencies::
$ pip install apptools[persistence]
To install with additional test dependencies::
$ pip install apptools[test]