"Free on F-Droid, $3 on the Play Store" is another approach I've seen (e.g., Conversations and DAV5x).
One thing that my gf wanted as additional features was the possibility to also track mood (I let her choose among 5 ranges of emojis) and add tags to each day: for example she can create a tag "pains" and set if she had cramps a day or not. All that can be expected to csv/xslx for her own analysis.
If you add these features, I'll recommend this app to her instead :)
Also my app has a minimum SDK 20, so it works with her ancient phone.
One thing though: I know it's popular in these apps to show the cycle as a "clock face", but if you think about it, this is a weird representation, because of the variations in cycle lengths (of natural cycles not changed by contraceptive hormones). So, if one cycle is 26 days long and the next cycle is going to be 30 days long, the clock face will show an average of 26 days for the next cycle and the handle looks stuck "5 minutes before 12" and every day, the handle doesn't tick one further, but the unit (day) becomes more compressed.
This makes comparing cycles unintuitive and suggests that natural cycles always have the same length. In reality, the majority of women have fluctuations of 8 days or more in their cycle's lengths per year.
To compare the cycle length there is an extra statistic section. I want to add a graph there to make the fluctuations more clear.
We don’t plan on shoving our daughter in front of an editor from a young age — we have no expectations of her, and she’s free to be whoever she wants to. But one reason my wife didn’t get into programming till her mid 20s was that there weren’t any examples of people like herself doing it. It didn’t occur to her that she might have a talent for it, or even enjoy it. It’s a bit like a man not realizing he might be a great dancer, simply because most dancers are women, and so he never explores the question.
I guess I’m just grateful you’re tipping the scales in the other direction. The work doesn’t need to be anything spectacular or solve all the world’s problems; solving your own problems with code is the essence of hacking. I hope that our daughter Kess grows up in a world filled with many more people like yourself.
I went back and forth about whether to even post this, for obvious reasons. But ultimately I have no way of thanking you other than this, and it meant a lot to me to see your work on the front page. I hope you have a wonderful week, and that your project achieves everything you were hoping for.
I wish you and your family all the best – you made my day :)