Awesome job, very clean and usable. I had tried PoolMath and was a bit underwhelmed and was ready to start making my own. Glad I found this, it's probably along the lines of what I would do. Nicer UI for sure.
A few things:
1. I normally use 12.5% chlorine, but occasionally will pick up some 10% from WalMart if the data code is new. When I click "+Chems", there is no choice for 10%. Lots of other strengths of other chemicals, but only my default 12.5% for the chlorine appears in my list.
"Would be cool if..." (I hate hearing that too... LoL)
2. In "View Historical Tests" I'd love to at least have the option for blanks instead of "NT". Very easy to see at a glance when you have a full row of tests, etc. Try it and you'll see what I mean.
CHARTS
3. Not sure what library you use (or did you custom make the charts?) but can the dates be plotted with correct x-axis spacing? This is similar to the Excel problem where when you have dates that are not evenly spaced, you need to use a scatter plot to space them correctly. Otherwise Day 1, 2, and 7 appear as 1-2-3 in spacing. Can't really see the gaps at a glance. At least I think that's how I'm seeing this, ignore if not.
4. If your library supports multiple series per chart, I would love a dotted line for upper/lower bands on a few of these. For chlorine, maybe red dotted for minimum, and other color dotted for recommended min/max for your CYA. (So for 40 CYA, red dotted at 3 and say green dotted at 5 and 7. Again, I'm all about getting lots of info with a glance. You'd immediately see where you spiked over or under and roughly how "in the middle" you've been.
For CYA-based chlorine bounds, it would be possible for those levels to change across the chart so you'd have to go back and look at CYA for each chlorine data point posted.
For pH it would be cool to have CSI-based bounds. You could have a setting "Absolute or CSI". Absolute you set your own pH upper/lower limit. CSI you'd set a min/max CSI and it would show you the horizonal bounds based on where those WOULD be met for pH change alone. So even if my pH were to somehow stay steady at 7.6, those CSI bounds would slowly come down as my hardness tested higher and higher.
I know these aren't exactly 2-minute ideas but I thought I'd throw them out there. Great job so far. If I wasn't so dang busy I'd off to help!