About the program:

General purpose: The program is designed to allow users to perform many non-graphical computations of general chemistry problems and chemistry related processes, and to provide an explanation of each process - the program is not a black box.

What the program does:

It aids the user in solving basic non-graphical problems found in a first year chemistry textbook/class. Some of these involve automatic calculations and conversions. The graphical user interface (GUI) allows the user to select substances and units and input quantities manually without any automatic calculations -- thus the user does not need to write everything on paper.

What the program does not do:

It does not do graphical problems such as Lewis structures or calculations involving energy which do not use the substances depicted in the GUI.

Current state and future development:

This is the first version of the web-based program. The intent is to let users see some of the basic processes and calculations that can be done with the program. The initial version is very basic. If there is enough interest in paid versions of the program, a chemistry instructor or chemist, and a programmer will be hired to develop the program to its full potential. Some of the near-term improvements will include decomposition of compounds such as AlCl3 into AL and CL or AL and CL2 -- so the program will eventually be able to do complete molecular equations, complete ionic equations, and net ionic equations -- CME, CIE, and NIE. Also, after an equation has been balanced, the user can change a quantity or a mole quantity and that change will cascade through the rest of the formulas changing all the other quantities. Note that full calculated values are displayed. Since the program does not know when the final process has been completed, or the rules a specific user has for determining significant digits, the program does not round numbers. Note that displayed temperature quantity and units are changed to a calculated temperature in K, and displayed pressure quantity and units are changed to a calculated pressure in atm.

Some functions do not always work and shouldn't work. For example, if user inputs a substance and calculates molarity (or molality) and then wants to change a quantity or mole quantity, the program doesn't know whether to change the quantity of liters or the molarity. So, the user needs to specify the kind of change desired by selecting the appropriate minor process, .eg. moles to liters. Also, some functions may require a reset of units in order to work, e.g, liters(l) to killograms and back to liters(l) for molarity changes. Some functions may also require user to click on the "Continue" button to complete the function.

At the top of the form, there is a section that will allow paid users to save a record of the process. At the bottom of the form there is a section that will allow users to add additional information about a process. Both of these sections will only be developed if there is sufficient interest and funding. Paid users will also have access to additional functionality and to a larger database of substances. This will all take time to implement. Users are encouraged to critique the program, to provide suggestions for future improvements and to comment on willingness to fund future development with a monthly fee or a donation. Do so by sending comments and suggestions to me at

Known issues: data errors cause an incorrect or no display of a property. There is a normal sequential flow for most processes. Some processes can handle some steps out of sequence, but others can't; so, if you enter data out of sequence, a process may not produce the correct results.

Explore the settings:

If you have preferences, they will be saved if you register

Contact us:


Check out the setting options at the top right corner of the form. Users can set font sizes used on the form. Registered users, including users with free accounts, can save their settings.

To get an idea of how to use the program, find the label 'Select Substance 1 type from ComboBox' and select 'element' as the type of substance. Selecting a substance type will fill in the comboboxes below it with formulas and names. Next, under the label Substance 1, select any formula. The program will find the associated name and insert it in the combobox below the formula. Selecting a substance name will likewise fill in the formula. Also, the program will initially set the substance units to 'grams', fill in the atomic or molecular mass in the quantity field and set the mole quantity to 1 and units to 'moles'. Now, change the mass quantity and the mole quantity will change. Change the mole quantity and it will change the mass quantity. Finish by setting the mole quantity back to 1. Now, change the units to 'liters(g). It will access the displayed quantities and units for temperature and pressure and convert them to calculated quantities and units and use the displayed mole quantity to calculate the volume of the gas using the standard gas formula. Note that the program will allow the user to make mistakes! So, if you select a substance that is a solid at the temperature and pressure displayed, the program will not complain about your mistake. Next, change the temperature or pressure quantity and the new volume will be calculated and displayed. Next, Note try other pressure options -- such as selecting 'torr.' After you have completed the above process, try it with another substance. Check out some of the major and minor process descriptions to get an idea of what they do. The display and calculations should work for all substances and in all six substance containers. There are some actions that set 'properties' but don't and shouldn't update or call other functions. For example, if the main units are set to grams, and user changes the temperature or pressure quantity or units, the program will store the changes, but won't and shouldn't change the quantity of grams. However, if user then selects units to be liters(g), the displayed and stored quantities and units should be applied to the gas law calculations and the form should show the correct results. Also note that when a substance type or specific substance is selected, the form should reset the units and quantities. A current bug is that it doesn't always work. User is encouraged to exlpore and experiment with other 'widgets' on the form but most of the ones outside the substances containers are not yet functional. They are on the form so users can see the potential of the processes that can be performed by the program.


The program is not a black box. When you select a process, a substance, units, etc. or when you input a value, the program will display what you selected or input, any equations and calculations that were performed, and the results. This part of the program is still being developed. When the first selection or input is made, this text will be deleted.