CCID library and tool
Getting Started
We require Python >= 3.6 and corresponding pip3
command.
We intend to support Linux, Windows and macOS. The requirement pyusb
depends on libusb
, which is likely pre-installed on Linux systems. On Windows, you may need to install a driver.
To get started, run pip3 install ccid
, this installs both the ccid
library and the ccid
command-line interface.
For development, we suggest you run make init
instead, which
- sets up a virtual environment
- installs development requirements such as
black
- installs
ccid
as symlink using our packaging toolflit
, including all runtime dependencies listed inpyproject.toml
One way to ensure the virtual environment is active is to use direnv.
CCID Tool
For help, run ccid --help
after installation. The tool has a hierarchy of commands and subcommands.
Example:
ccid version # outputs version of installed `ccid` library and tool
Library Usage
Work in progress, example usage:
import ccid
(...)
Comprehensive documentation coming, for now these are the main components
-
ccid.reader
: connect to and interface with CCID devices -
ccid.cli
: implementation of theccid
command-line interface
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contributing
Any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Code is to be formatted and linted according to Black and our Flake8 configuration
Run make check
to test compliance, run make fix
to apply some automatic fixes.
We keep a CHANGELOG.