Skip to content

Prerequisites

Everything you need before setting up ScamShield AI.


Required

Google Cloud Platform account

You need a GCP account with billing enabled. ScamShield uses Cloud Functions (2nd gen), Firestore, Cloud Tasks, and Secret Manager -- all of which have generous free tiers, but billing must be active.

  • Sign up at cloud.google.com
  • Create a new project or use an existing one
  • Enable billing on the project

Python 3.11

Firebase Cloud Functions 2nd gen requires Python 3.11 specifically.

brew install python@3.11
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.11 python3.11-venv

Download the installer from python.org/downloads.

Verify the installation:

python3.11 --version
# Python 3.11.x

Node.js (LTS)

Required for the Firebase CLI. Any LTS version (18+) works.

node --version
# v18.x or higher

Install via nodejs.org or your package manager.

Firebase CLI

npm install -g firebase-tools

Verify:

firebase --version
# 13.x or higher

Log in to Firebase:

firebase login

Non-interactive environments

If you are running in a headless environment (e.g., SSH, CI), use firebase login --no-localhost and follow the URL-based auth flow.

Google Cloud CLI (gcloud)

Required for managing secrets, viewing logs, and deploying the dashboard.

brew install --cask google-cloud-sdk

Authenticate:

gcloud auth login
gcloud config set project your-gcp-project-id

Google Gemini API key

ScamShield uses Google Gemini Flash for scam classification and response generation.

  1. Go to Google AI Studio
  2. Create a new API key
  3. Save it -- you will need it during Configuration

Optional

Cloudflare account (dashboard proxy)

If you plan to serve the Streamlit dashboard behind a custom domain, you need a Cloudflare account with your domain's DNS managed by Cloudflare. This is optional for local development and testing.

ruff (Python linter/formatter)

Already installed as a dev dependency, but you can also install it globally:

pip install ruff

Docker (dashboard deployment)

If you want to test the dashboard Docker container locally before deploying to Cloud Run:

docker --version
# Docker 24.x or higher

Verify your setup

Run this checklist to make sure everything is ready:

# Python
python3.11 --version          # Python 3.11.x

# Node.js
node --version                # v18.x+

# Firebase CLI
firebase --version            # 13.x+

# Google Cloud CLI
gcloud --version              # Google Cloud SDK 4xx.x.x

# Firebase auth
firebase projects:list        # Should show your projects

# gcloud auth
gcloud auth list              # Should show your account

All checks pass?

You are ready. Head to the Quickstart to get running in 15 minutes, or Configuration for detailed project setup.