Skip to content

Noamismach/ChemTools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 

Repository files navigation

🧪 ChemTools

A Hebrew-first Chemistry Toolkit for Students and Professionals

Built with HTML, CSS, and JavaScript — a single-page web app (SPA) packed with powerful calculators and lab tools.
No backend. No setup. Just open and explore.

Live Demo


Overview

ChemTools is a modern chemistry toolkit designed entirely in Hebrew (RTL).
It offers a smooth, responsive interface with a wide set of calculators, laboratory tools, and data files — all running locally inside your browser.


✨ Key Features

  • Modern UI (RTL) — responsive Glassmorphism design, dark/light themes, and smooth animations.
  • Powerful Calculators
    • Molar Mass (supports hydrates)
    • Equation Balancer
    • Mass–Mole–Particle Conversions
    • Percent Composition
    • Concentration and Dilution Tools
    • Ideal Gas Law (PV = nRT) with unit conversions
    • pH / pOH / Ka / Kb / ICE Table Generator
    • Reaction Enthalpy (ΔH°) from dataset
    • Empirical & Molecular Formula Finder
  • Laboratory Tools
    • Chemical Inventory Manager (stored in localStorage)
    • Solution Preparation Assistant
    • Experiment Report Generator (print/export ready)
  • Fully Offline — includes local datasets (elements.json, enthalpy.json).
  • Smart UX — modals, toasts, saved preferences, and input validation for error-free work.

Folder Structure

The project is organized for clarity and modularity:

ChemTools/ │ ├─ index.html # Main single-page application (SPA) file ├─ README.md │ └─ assets/ ├─ css/ │ └─ style.css # Main stylesheet: layout, themes, responsiveness │ ├─ data/ │ ├─ elements.json # Periodic table data (symbol, name, atomic mass) │ └─ enthalpy.json # Standard enthalpy (ΔH°) values for reactions │ └─ js/ ├─ app.js # Core initialization and UI management ├─ utils/ # Shared logic: math, chemistry, toast, data loader └─ modules/ # Independent calculators and lab tools

Each calculator or tool is self-contained inside the modules/ directory,
and utility scripts in utils/ handle shared features such as parsing, validation, and UI feedback.


🚀 Quick Start

  1. Clone or download the repository:
git clone https://github.com/noamismach/ChemTools.git
cd ChemTools/chem
  1. Open index.html in any modern browser (Chrome, Edge, Firefox).

Optional: Local Development Server

# Requires Node.js
npx serve .

Then open the URL shown in the terminal (usually http://localhost:3000) for live reload. 💡 Usage Tips Select a calculator card to open its modal.

Toasts appear for input errors or successful actions.

Theme defaults to your device/browser preference on first visit. When you flip the toggle it locks in that choice, and if you switch back to match the device it automatically returns to following the system.

ΔH reaction calculator auto-fills standard ΔHf° from the built-in dataset (with state-specific suggestions) and lets you override values when needed.

Chemical inventory and reports are stored locally and exportable.

🔧 Extending ChemTools Each tool is an independent module under assets/js/modules/.

Shared utilities in utils/ handle parsing, matrices, toast notifications, and data loading.

All labels and texts are defined in index.html and fully optimized for RTL and accessibility (aria-labels).

🐞 Troubleshooting

Problem Possible Fix
Blank or missing data Some browsers block local JSON — launch a local server (npx serve).
Wrong calculation Check element case (uppercase for elements). Input validation helps but does not auto-correct.
Modal stuck open Use the close button, click outside, or press Esc.

📜 License ChemTools is provided “as is” for educational and laboratory use. You may copy, modify, or adapt it for internal purposes. Please credit the original source when redistributing externally.

Developed by Noam Ismach Made with ❤️ for chemistry, clarity, and clean code.

About

ChemTools – Interactive Hebrew chemistry toolkit with smart calculators and lab tools.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors