Women-owned businesses database

Building in public update

On Monday I decided to go beyond the spreadsheet and into making an actual startup. I had the idea for a while and seeing the data in excel made something click.

I decided to build it and I decided to do it in public.

I can’t share details about my work with my clients, but this one is mine — so you get to see up close how a startup is born.

If you don’t care about the process and just want to see the results, scroll to the end — the link to the website is there.

Deciding on features for the MVP

I want to build a website to replace the spreadsheet, allowing public browsing and better search. I also want to let women add more businesses and edit their business info without me manually doing every edit and without risking anyone (mistakenly or maliciously) destroying the data.

Limiting the ‘add’ and ‘edit’ functions means that users need to log in before having those options available.

Avoiding men flooding the system means that signup cannot be public — I need a way to register only verified users.

I had a few emails in my spreadsheet (hidden in Google Spreadsheet because privacy) so I chose to use emails as the unique identifier for business owners.

Women who are already in the database are automatically added as users. Then they can edit the information of their own business and add more businesses — either their own or of other women they know.

Can a woman add a business of a man and let him infiltrate the system? Yes… But that’s easy to catch and block. I can’t solve for everything from the first moment.

To make signup automatic, the login requires only an email — a one-time-password is sent to that email, ensuring better safety of the account.

And that’s it —

(1) Match expected minimal features: I replicate the spreadsheet into a list on a webpage, so browsing and search work the same.

(2) Add 1-2 additional features that justify the work: I improve the search to be able to search for each word separately (not the whole sentence) and I add the ability to grow the database without my manual work.

Planning the Tech Stack

I want AI to do most of the work for me, but I also want to retain full control on what is done where. Regular AI coding-agent is too invasive for my taste, so I opened a new project with ChatGPT and used it for all the tedious tasks.

I chose AWS as the place for all the backend (server) logic because it’s relatively user-friendly, I’m familiar with its interface, and they offer lots of free stuff during the first year.

I shared the above product requirements with ChatGPT and let it plan the infrastructure for me. Then I asked it to justify its decisions from the tech and the financial perspectives.

Planning for a budget of $50/month with flexible search as a non-negotiable feature, we decided to use the following:

Frontend tech-stack

VS-Code as the code editor — free and easy to use.

React framework for website building — let’s me build the website piece by piece.

Backend tech-stack

AWS — Amplify, Lambdas, Cognito, OpenSearch, API-Gateway, DynamoDB, SES

I’m skipping the in-depth explanation about those because it is truly boring. If your curiosity has the best of you — paste this newsletter into your favorite AI and ask it to give you a short overview.

Important considerations

I knew before starting to build that I will want to create two copies of my work — one for developing new features (that might not work while I develop them) and one for production (the stable version used by the public).

This meant that I wanted to define everything that I could in code, to make duplicating it as automatic as possible.

How I built it so fast

I used ChatGPT to guide my work, because it can read and digest documentation much faster than me. If it gave me too much text or the command seemed fishy, I told it that I was confused and demanded a slower step-by-step.

I used AWS Amplify CLI to create the backend. I copied the commands that Chatty gave me into the terminal. Most of my work was waiting for the various computers to do what I told them to do.

Then I used Chatty to build the web-pages and their logic. This took us a bit longer, because it tried to build me a website from the late 1900.

Final step was opening a repository on GitHub, adding all my code there, and connecting the repository to Amplify. I didn’t even read the errors it produced — I copied them to Chatty and fixed what it told me to.

I duplicated the branch in GitHub, to create one for ‘DEV’ (the unstable ongoing work) and one for ‘PROD’ (the public stable version), then ran a few more commands in the terminal to duplicate the backend too.

Connecting the domain was more copy-paste and wait.

How to replicate it yourself with zero tech knowledge

Plan the tech-stack with your fav AI, have it explain every decision in human language without tech jargon. When you are satisfied with the decisions, ask it to plan the development step-by-step.

Tell it that a team of juniors will develop it, so the plan should be as clear and detailed as possible. Tell it that every step should be small and have a visible outcome.

Save that plan in a document.

Copy-paste the first step from that plan into a new conversation and follow the instructions your AI gives you. Demand explanations if anything seems too long, too complicated, or just weird. Screenshot every error and throw at it angrily.

Continue with the remaining steps.

Congratulations! You just build your software product.

TL;DR: show me the website already!

Here’s your button:

If you’re on the list but your email doesn’t let you login — tell me and I will fix it.

If you’re not on the list yet and you want to be — tell me and I will make it happen.

Cheers,

Ela Shapira
Startup Doula

Reply

or to participate.