Skip to main content

For easily making chemical buffers and solutions

Project description

-------------------
Project Description
-------------------

Welcome to buf!
***************
Buf is a command line based toolkit for making chemical buffers/solutions. Tired of calculating \
how much of each chemical you need to weight out when making solutions? Buf can help. Specifically, buf:

#. Allows you to develop a chemical library, saving the molar masses of frequently used chemicals.
#. Allows you to use those chemicals to define recipes for your buffers/solutions, in which you specify the concentration of each ingredient required to make the buffer.
#. Will 'make' those recipes for you, calculating how much of each ingredient you require to produce the volume of buffer you specify.

Installation
************
To install the buf toolkit, simply use ``pip install buf``.

Getting Started
***************
To introduce you to buf, let's imagine that we want to make a solution containing 50mM NaCl, is 10% glycerol by volume, and contains a \
constant 5g of KCl, regardless of the volume of our solution. We want to make 5L of this solution.

Developing Our Chemical Library
++++++++++++++++++++++++++++++++
In our recipe, we specify the concentration of NaCl with molarity. Before buf can calculate the mass of NaCl we will need to add to
our buffer when we make it, we must first tell buf the molar mass of NaCl (58.44 g/mol) by adding the chemical \
to our library. This can be done with ``buf chemical -a 58.44 NaCl``. We don't need to tell buf about \
the molar masses of glycerol or KCl, since the amounts of those chemicals we will add to our buffer aren't dependent \
on their molar masses.

Defining Our Recipe
+++++++++++++++++++
Now that our chemical library has been defined, it is time to do the same with our recipe library. Here \
we will tell buf what we want to make. We define our recipe by giving it a name and listing its contents, \
using ``buf recipe -a best_recipe 50mM NaCl 10% glycerol 5g KCl``. Now buf knows the ingredients of our \
solution; it's finally time to make it!

Making Our Solution
+++++++++++++++++++
To calculate how much of each chemical we'll need for our 5L solution, all we need to use is ``buf make 5L best_recipe``. Buf \
will use our stored chemical and recipe libraries to calculate the required amounts of each ingredient, and display the results.

Learning More
*************
This tutorial only provides a brief overview of buf; for more details about the toolkit's usage and functionality, see ``buf help``. \
For specific information about a subcommand, see ``buf help <subcommand_name>``. Happy buffer making!

Version History
***************

- 1.0.0a10: Deleting old buf/library directory (since library files are now stored outside the package), \
updating README to describe new changes.
- 1.0.0a9: Chemical/recipe libraries no longer reset when upgrading the package. To those using older version of buf \
who want to keep their libraries before upgrading, the library files can be accessed in the buf/libraries directory.
- 1.0.0a8: Bug fixes.
- 1.0.0a7: Improved documentation.
- 1.0.0a6: First release to PyPI proper.
- 1.0.0a1: First release of buf to Test PyPI!


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

buf-1.0.0a10.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

buf-1.0.0a10-py3-none-any.whl (20.5 kB view details)

Uploaded Python 3

File details

Details for the file buf-1.0.0a10.tar.gz.

File metadata

  • Download URL: buf-1.0.0a10.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.12.4 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.0 CPython/3.6.0

File hashes

Hashes for buf-1.0.0a10.tar.gz
Algorithm Hash digest
SHA256 5fe9cbb9262937fbafd696afdb644a7748dcdaf011fe6dd1a2d7f2967c92693f
MD5 d5b18f0f77852406ee80420230b544b3
BLAKE2b-256 fb4dfc567ff732d1d99fa915687443c8ef4647ea1090009a17123b43ad5f6733

See more details on using hashes here.

File details

Details for the file buf-1.0.0a10-py3-none-any.whl.

File metadata

  • Download URL: buf-1.0.0a10-py3-none-any.whl
  • Upload date:
  • Size: 20.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.12.4 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.0 CPython/3.6.0

File hashes

Hashes for buf-1.0.0a10-py3-none-any.whl
Algorithm Hash digest
SHA256 a72cca712d8b633a385f5215a902e968b9d4afeec7e6c6b3111d6ad8166f8239
MD5 c1c291953eb633bfef6b5d0862f50209
BLAKE2b-256 dd7b46066486ff977d801e24fde5582f92a818383a79695f107c9a7a6eb4cd78

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page