Track chemical inventories and produce inventories and door warnings.
Project description
Chemdb is a chemical inventory system written in Python using the Django framework. It makes it easy for us to keep track of what we have in the lab. It also generates the required safety information automatically (door warnings and inventories).
Installation
Packages
Gentoo
I’ve packaged chemdb for Gentoo. You need layman and my wtk overlay. Install with:
# emerge -av app-portage/layman # layman --add wtk # emerge -av dev-python/chemdb
Dependencies
If you’re installing by hand or packaging calibcant for another distribution, you’ll need the following dependencies:
Package |
||
---|---|---|
python-django |
dev-python/django |
|
dev-python/django-grappelli [1] |
Installing by hand
Chemdb is available as a Git repository:
$ git clone git://tremily.us/chemdb.git
See the homepage for details. To install the checkout, run the standard:
$ python setup.py install
Usage
Setup
If you don’t have a Django project and you just want to run chemdb as a stand-alone service, you can use the example project written up in example. Set up the project (once):
$ python example/manage.py syncdb
See the Django documentation for more details.
You may also want to load some example data, to make your initial browsing more interesting:
$ python example/manage.py loaddata example_data
Running
Run the app on your local host (as many times as you like):
$ python example/manage.py runserver
You may need to add the current directory to PYTHONPATH so python can find the chemdb package. If you’re running bash, that will look like:
$ PYTHONPATH=".:$PYTHONPATH" python example/manage.py runserver
Hacking
This project was largely build following the Django tutorial. That’s a good place to start if you’re new to Django.
Other resources
You can search CAS Registry numbers at NIST. This is useful for decoding MSDS information.
NFPA fire diamond
These are the meanings of the various NFPA warnings:
Blue: Health Hazard
Hazard no greater than ordinary material
May cause irritation; minimal residual injury
Intense or prolonged exposure may cause incapacitation; Residual injury may occur if not treated
Exposure could cause serious injury even if treated
Exposure may cause death
Red: Fire Hazard
Will not burn
Must be preheated for ignition; flashpoint above 200°F (93°C)
Must be moderately heated for ignition, flashpoint above 100°F (38°C)
Ignition may occur under most ambient conditions, Flashpoint below 100°F (38°C)
Extremely flammable and will readily disperse through air under standard conditions, flashpoint below 73°F (23°C)
Reactivity hazards:
Stable
May become unstable at elevated temperatures and pressures. May be mildly water reactive
Unstable; may undergo violent decomposition, but will not detonate. May form explosive mixtures with water
Detonates with strong ignition source
Readily detonates
Special Hazards have the following codes:
OX strong oxidizer
W̶ water reactive
SA simple asphyxiants (The only gases for which this symbol is permitted are nitrogen, helium, neon, argon, krypton, and xenon.)
Licence
This project is distributed under the GNU General Public License Version 3 or greater.