Skip to content

ebalderasr/CellSplit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

32 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CellSplit

Neubauer cell counting and passage planning for CHO cultures

CellSplit

β†’ Open the live app


Stack Focus License Part of


What is CellSplit?

CellSplit is a browser-based calculator for routine cell culture maintenance. It covers the two calculations performed at every passage: converting a Neubauer chamber count into viable cell density, and computing the inoculum volume needed to seed the next flask at a target density.

Both modules are linked β€” the viable concentration calculated in Module 1 is transferred automatically to Module 2, eliminating transcription between steps. The app runs entirely in the browser, installs as a PWA for offline use inside the biosafety cabinet, and requires no setup.


Why it matters

Cell culture passaging involves repetitive manual arithmetic done under time pressure, often inside a biosafety cabinet without access to a computer. Without a dedicated tool:

  • Concentration calculations are done by hand or on scratch paper, introducing transcription errors
  • The inoculum volume must be computed separately, from values just written down
  • No feedback is given when the cell count falls outside a statistically reliable range

CellSplit removes all three problems. It validates the count range, computes both outputs in one step, and carries the result forward automatically.


How it works

Module 1 β€” Cell count

Enter the number of live and dead cells counted, the number of squares used, and the dilution factor. CellSplit returns the viable cell concentration (Γ—10⁢ cells/mL), the viability (%), and a count diagnostic.

Diagnostic Criterion
Low Total cells < squares Γ— 10
Optimal squares Γ— 10 ≀ total ≀ squares Γ— 50
High Total cells > squares Γ— 50

The optimal window (~10–50 events per square) avoids both sampling noise from sparse counts and systematic undercounting from cell overlap.

Formulas

$$\frac{\text{cells}}{\text{mL}} = \frac{\text{Live}}{\text{Squares}} \times \text{Dilution} \times 10{,}000$$

$$\text{Viability (%)} = \frac{\text{Live}}{\text{Live} + \text{Dead}} \times 100$$

The factor 10,000 comes from the Neubauer chamber geometry: one large square covers 1 mm² at 0.1 mm depth = 10⁻⁴ mL, so multiplying by its reciprocal converts count per square into cells per mL.

Module 2 β€” Passage / inoculum

The viable concentration from Module 1 is pre-filled. Set the target culture volume and target seeding density; CellSplit returns the inoculum volume and the volume of fresh medium required.

$$V_1 = \frac{C_2 \times V_2}{C_1}$$

$$V_{\text{fresh}} = V_2 - V_1$$

C₁ must exceed Cβ‚‚. The app returns an error if the target density is higher than the current culture density.


Features

Automatic data link Viable concentration transfers from Module 1 to Module 2 without manual entry
Count diagnostics Visual badge flags low, optimal, or high cell counts per square
Offline-first PWA Service Worker caches all assets; works without internet after first load
Bilingual UI Full Spanish / English interface, persisted across sessions
Dark mode System-level dark mode β€” high contrast for low-light microscope rooms
No installation Opens instantly in any modern browser; installable on Android, iOS, and desktop

Tech stack

Frontend

HTML5 CSS3 JavaScript

Deployment

GitHub Pages PWA

Fully static β€” no backend, no framework, no build step. All computation runs client-side in vanilla JavaScript.


Project structure

CellSplit/
β”œβ”€β”€ index.html          ← markup only
β”œβ”€β”€ manifest.json       ← PWA manifest
β”œβ”€β”€ sw.js               ← Service Worker (cache-first, offline support)
β”œβ”€β”€ icon-192.png
β”œβ”€β”€ icon-512.png
└── src/
    β”œβ”€β”€ css/
    β”‚   └── app.css     ← all styles (CSS variables, dark mode, glassmorphism)
    └── js/
        β”œβ”€β”€ i18n.js     ← translation strings (ES / EN)
        └── app.js      ← all application logic

Author

Emiliano Balderas RamΓ­rez Bioengineer Β· PhD Candidate in Biochemical Sciences Instituto de BiotecnologΓ­a (IBt), UNAM

LinkedIn Email


Related

CellBlock β€” shared biosafety cabinet scheduling for cell culture research groups.

Clonalyzer 2 β€” browser-based kinetics analysis for CHO fed-batch cultures.


CellSplit β€” count, calculate, passage.

About

πŸ§ͺ Precision cell passaging from Neubauer counts (viable conc., viability, C1V1=C2V2). PWA offline-ready for the biosafety cabinet.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors