PregnancyPal โ a project by Ahsan Mahmood
Week-by-week maternal wellness, nutrition, vitals and prenatal exercise.
PregnancyPal keeps a record, week by week. That is the plain description of it, and it is first on this page on purpose.
Software in this area slides very easily into sounding like a clinician.
This does not, and the line is drawn in what the application actually does rather than in a disclaimer at the bottom of a screen. It records, and it shows back what it recorded.
Day to day, that is vitals, symptoms and mood.
Around those sit week-by-week pregnancy tracking, appointment management, nutrition and prenatal exercise sections, a community module and a blog. Period and fertility tracking is there as well, covering ovulation, the fertile window and basal body temperature.
Appointments are the part people underestimate. A pregnancy generates a run of them, each with its own date and place and its own reason for being booked. A diary sitting in the same application as the entries is easier to keep straight than one spread across a phone calendar and a paper card.
None of it interprets anything.
The application does not decide whether a reading is expected. It does not identify a symptom, and it does not tell you what any of the numbers mean.
That reading belongs to the person looking after you.
Which is what the export is for. A health report comes out as a PDF, so a record can arrive at an appointment as a document rather than as something recalled in the room, and the charts behind it are drawn with D3.
The architecture is strictly zero-cost.
Logic runs client-side. Firebase's free tier holds the data and uploads go through FilesHub, with no Cloud Functions and no Cloud Storage anywhere in the design.
That constraint has a second effect worth naming.
A product with no server code of its own has fewer places for anybody's records to sit, and on an application holding entries about a pregnancy that is worth more than the money it saves.
Later work hardened the interface rather than lengthening the feature list.
A theme customiser with a full dark mode is available signed in and signed out, and a boot loader removes the flash of the wrong theme before the first paint. Both are small changes, and both matter most on a screen somebody is reading in a dark room.
Build-time prerendering arrived in the same pass.
14 routes and 10 blog posts emit crawler-facing static HTML with per-page JSON-LD, so a search engine or an answer engine reads real content without executing any JavaScript at all.
A page a crawler reads as empty is a page nobody finds.
There is a companion browser extension built with WXT, which extends access on the web. The record I write these pages from says that and no more. Neither does this page.
What it cost is the ability to tell you anything.
An application that interprets is a different product carrying a different set of obligations, and building one would mean making claims this work is not in a position to make. So it stays on the side of the line where it records, and the clinic stays on the other side of it.
That is a limit. It is the correct one here.
It is at pregnancypal.aoneahsan.com, with an Android build on Google Play and documentation at pregnancypal-docs.aoneahsan.com.
There is no iOS build because there is no Apple Developer account behind any of this work, and this page is not going to be the thing that quietly implies otherwise.
What it does, and what that costs to build
- Week-by-week pregnancy tracking
- Period & fertility (ovulation, fertile window, BBT)
- Nutrition, exercise & daily vitals logging
- Doctor-friendly PDF health-report export
- Community module + full blog
- Full theme customizer + dark mode for all users
- Zero Cloud Functions / Cloud Storage (free tier)
Built with
- React 19
- TypeScript
- Vite 8
- TanStack Router
- Radix UI
- Firebase
- CapacitorJS
- WXT
- D3.js
Worth knowing
- health
- pregnancy
- femtech
- mobile
- fertility
- women-health
Who built PregnancyPal?
Ahsan Mahmood built it working alone, and it is at pregnancypal.aoneahsan.com with an Android build on Google Play and documentation at pregnancypal-docs.aoneahsan.com. The data model, the Firebase rules, the charting, the prerendered pages and the Android packaging are all one person's work. It is built with React and TypeScript on TanStack Router, with Radix UI on the interface, D3 for the charts, Firebase for storage, FilesHub for uploads and Capacitor for the Android build.
Is PregnancyPal a substitute for antenatal care?
No, and it is not built to behave like one. The application records what you enter and shows it back to you over time. It does not decide whether a reading is expected, it does not identify a symptom, and it does not tell you what anything you have logged means. Those readings belong to the midwife, doctor or clinic looking after you, and the health-report export exists so that they can be given a complete record instead of a remembered one. Everything on this page describes a record-keeping tool.
What can I log in PregnancyPal?
Daily vitals, symptoms and mood, alongside week-by-week pregnancy tracking. There is period and fertility tracking covering ovulation, the fertile window and basal body temperature, appointment management for what is booked and when, and nutrition and prenatal exercise sections. A community module and a blog sit beside the tracking rather than inside it. What goes in is what you choose to put in, and the application has nothing to say about entries you leave blank.
Where does what I log actually go?
Into Firebase's free tier, with any file uploads going through FilesHub. The application logic runs client-side in the browser or in the Android build, and the architecture carries no Cloud Functions and no Cloud Storage, so there is no server code of mine sitting between you and your entries. That is a cost decision first, because zero paid infrastructure is what makes it possible for one person to keep a product like this running. It also means there are fewer places for these records to be, which on this particular product is worth more than the saving.
Does PregnancyPal work on iPhone?
No, there is no iOS build. It ships an installed application on Android through Google Play, and it runs as a web application that an iPhone can open in a browser like any other device. The reason is straightforward: there is no Apple Developer account behind this work, so nothing here has ever been submitted to the App Store. It is stated here rather than left for somebody to discover after they have started using something.
https://aoneahsan.com/projects/com.aoneahsan.pregnancypal