An electronics parts management software
Project description
E707 Electronics Parts Database (E7EPD)
Database Rev 0.5, Backend and CLI Rev 0.5.1
Still a Work-In-Progress
This project attempts to create yet another open-source electronics parts management system. While there are some out there, I wasn't satisfied with them.
Philosophy and Goals
- Simplicity: The core application should remain simple to allow for ease of adding features. This is partially why only a CLI will be created for this instead of a webpage or a GUI application, and why the language this program will use is Python.
- Modularity: The core application will be made in such a way as to allow ease of adding new parameters for example. Mostly will be accomplished with configuration lists
- Parameterization, Kind of: The only components that really need parameterization are things like resistors, capacitors, etc. Things where the specific part number doesn't matter for a project. In contrast to a microcontroller, a project can't really say: I don't care which micro as long as it's 8-bits.
- Interoperability: This database specification will use a common database (SQL like), and be documented so that migration from and away from this specific program shall be possible.
Installation
From Rev0.4 and onwards, e7epd
can be installed with
pip install e7epd
To install from the GitHub repository, run the following command inside the cloned repository:
pip install .
Security:
As of Rev 0.3, this project uses sqlAlchemy, without directly creating SQL commands like before. This should make it more secure than previous revisions in terms of arbitrary SQL code issues.
NOTICE: The password for a mySQL user is stored in a json file in plain format. Make sure the mySQL account only has permission to the parts' database.
CLI Application
To start using this application/database, simply launch e7epd
from the command line. Prompts should show up, allowing you to interact with the
parts database. Some of the things you can do with it are:
- Add a part
- Delete a part
- See the entire part's database table
- Add and/or remove stock to a part
Docs
The documentation for this project can be found in the project's readthedocs.
The documentation is for the latest released version. For the non-released master docs, see here.
Database specification and Interface
For more details as to how parts are stored in the database, see database specification
The python file e7epd.py
includes a E7EPD
class, which is a wrapper for the database.
To add the database wrapper e7epd.py
to your project, you will need Python>3.7 with their pre-installed packages as well as the following extra packages:
The following packages are required to run it:
Changelog and In-Progress
For the changelog and in-progress additions, see the project's master changelog for more details on that.
License
The license for this project is the GNU General Public License v3. The full text can be found at LICENSE.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file e7epd-0.6.0.tar.gz
.
File metadata
- Download URL: e7epd-0.6.0.tar.gz
- Upload date:
- Size: 35.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc278527c61a091ee392783a5d126a7cd21e3f7319e6a9908b8c821a9795a053 |
|
MD5 | 3f476939f7ee7b40f385f264f141c9ca |
|
BLAKE2b-256 | d5069077a182d6ee4e75fafd763d5f271a1f7863c08e59c56cb4aaebf46ff137 |
File details
Details for the file e7epd-0.6.0-py3-none-any.whl
.
File metadata
- Download URL: e7epd-0.6.0-py3-none-any.whl
- Upload date:
- Size: 35.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ba9e473b088a56b62358666eef00c638cf2c1373323346f21238c87097de435 |
|
MD5 | b9b1ba8cde1e616c60aea9eac7588d64 |
|
BLAKE2b-256 | 64cf81d15dae1bfcf12bc2afbf40b547adb4cc75ef714ce7ffcbcf0042bdf2de |