Cute calculations for serious science.
Morkulator is a mobile-first, offline-friendly laboratory calculator playground for researchers, students, lab technicians, and scientists. It combines transparent deterministic calculations with a warm, glove-friendly interface that is practical at the bench.
Morkulator provides calculation support and educational decision support only. Verify every result against your lab SOP, validated protocol, SDS, primary literature, and institutional requirements.
Lab math is often performed under time pressure, across mixed units, and on interfaces that hide the work. Morkulator keeps the formula, inputs, assumptions, warnings, and result together. Core calculations run locally in the browser and saved calculations stay on the device.
- Mixed-unit
C1V1 = C2V2dilution calculator with small-volume warnings - Serial dilution builder with tube visualization, protocol copy, and CSV export
- Unit converter with volume, mass, concentration, amount, time, mass concentration, and RCF/RPM support
- Molar solution preparation with purity and hydrate/salt correction
- DNA, ssDNA, and RNA molecule copy-number calculator
- Hemocytometer cell count, viability, and total-cell calculator
- Promoter Pal, an educational candidate-promoter discovery tool
- Local calculation notebook, dark mode, serious lab mode, and display precision settings
- PWA manifest for installation on a phone or tablet
- Tested, UI-independent TypeScript calculation engine
Morkulator treats usability and scientific caution as part of the calculation:
| Typical calculator | Morkulator |
|---|---|
| Returns one number | Shows formula, assumptions, work, and result |
| Assumes matching units | Converts compatible mixed units explicitly |
| Accepts any numeric input | Flags invalid values and tiny transfer volumes |
| Lives in a browser tab | Installable, offline-ready PWA |
| Generic interface | Mobile-first, glove-friendly bench controls |
| Hides past work | Local-only calculation notebook |
Requires Node.js 20 or newer.
npm install
npm run devOpen the local URL shown by Vite.
npm test
npm run build- Show the work. A result is more useful when its formula and assumptions are visible.
- Units are part of the calculation. Mixed units are converted explicitly.
- Friendly does not mean careless. Warnings call out tiny transfers, invalid values, and context-dependent decisions.
- Private by default. No backend is required and saved history remains in local storage.
- Decision support, never protocol authority. Morkulator does not replace lab SOPs, primary literature, an SDS, biosafety review, or supervisor approval.
src/lib/calculations.ts: deterministic calculation enginesrc/lib/calculations.test.ts: calculation testssrc/data/promoters.ts: structured Promoter Pal examples and recommendation scoringsrc/App.tsx: application shell and calculator experiencessrc/styles.css: responsive visual system and accessibility states
The calculation layer has no React dependency, making it straightforward to add calculators, test them independently, or expose them through a future API.
Promoter Pal suggests candidate promoters to investigate, not a correct or validated promoter. Results are intentionally cautious because promoter performance varies with species, cell type, vector backbone, delivery method, integration state, payload, enhancer context, and epigenetic silencing.
Before use, verify candidates against current primary literature, vector constraints, institutional requirements, and your supervisor or lab SOP.
Morkulator provides calculation support and educational decision support only. Verify every result before use. It is not a substitute for validated protocols, institutional biosafety review, supervisor approval, an SDS, clinical judgment, or primary literature.
- Solve-for-any-variable equation workspace
- Intermediate dilution designer
- Oligo resuspension and primer dilution tools
- Protein molarity and PCR master mix tools
- Plate map designer and qPCR planner
- Label and QR-code generator
- PDF and ELN exports
- Promoter citations and richer tissue/cell mappings
- Shared team recipes and optional encrypted sync
- Voice input for gloved workflows
Contributions are welcome, especially calculation test cases, accessibility improvements, and responsibly sourced promoter references. For new calculators, add the deterministic function and tests before connecting it to the interface.
MIT. Healthcare, regulated, or institutional deployments may require additional review.