I've used a few tools to prepare the data and build the app.
npm install -g @playwright/mcp@latest
## App development
I'm using Google AI Studio to develop the app as there is a nice from from the editor to deployment on GCP using Cloud Run.
## Data discovery & preparation
I used Gemini CLI with the Playwright MCP tool to pull files & information from websites and I stored them in GCP cloud storage.
Using Gemini CLI I created a script called process_reports.js that can output a summary of the FFLs to a CSV that is then used by another script called csv_json_converter.py to create the state FFL jsons.
## Data storage & access
I set up 2 GCS buckets:
* gs://atf-inspection-reports - the ATF Inspection Report PDFs that I pulled from the Brady site, organized into folders by state
* gs://atf-state-ffl - a json file for each state with a list of its FFLs
I needed to handle CORS on the bucket
echo '[{"origin": ["*"], "method": ["GET"], "responseHeader": ["Content-Type"], "maxAgeSeconds": 3600}]' > cors.json
gsutil cors set cors.json gs://atf-state-ffl
{
"security": {
"auth": {
"selectedType": "oauth-personal"
}
},
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
},
"selectedAuthType": "oauth-personal"
}