Assay analysis Application for 4 Parameter Logistic curve fitting
  • Rust 95.7%
  • Typst 4.3%
Find a file
eli 32a1a9c30f
Some checks failed
Release / build-linux (push) Has been cancelled
Release / build-windows (push) Has been cancelled
Release / build-macos (push) Has been cancelled
Release / release (push) Has been cancelled
fix: Code sign the app bundle
2026-07-02 18:00:08 +02:00
.github/workflows fix: Code sign the app bundle 2026-07-02 18:00:08 +02:00
resources Add math as svg 2025-10-29 00:20:29 +01:00
src Add MacOS GitHub Workflow 2025-11-22 15:46:06 +01:00
.gitignore chore: Remove .DS_Store from .gitignore 2026-06-13 01:35:11 +02:00
Cargo.lock chore: Remove .DS_Store from .gitignore 2026-06-13 01:35:11 +02:00
Cargo.toml chore: Remove .DS_Store from .gitignore 2026-06-13 01:35:11 +02:00
LICENSE Create LICENSE 2025-04-05 21:56:58 +02:00
README.md chore: Edit README.md to use relative image paths 2026-01-21 18:16:55 +01:00

Description

A tool for four parameter logistic curve fitting for assay analysis, witten in egui. Uses gradient descent.

To build the app, simply run cargo build --release from the project directory.

Thoughts

My goal was to create an open source, user-friendly application for 4PL curve fitting.

I was unable to find any existing comprehensible, open source algorithms which implement curve fit specifically for 4PL, and so I had to write the code from scratch. Moreover I found that most scientific articles on 4PL curve fitting were promoting their own product, rather than explaining how it works.

The gradient descent solution I implemented seems to yield decent results. Finding the global minimum, rather than a local one with gradient descent, would be ideal.

I plan to add support for 5PL as well.

Resources

Screenshots

Math

Since I couldn't find much on the topic anywhere else, I wrote a short explanation. The pdf can be found in resources/math.pdf