Showcase Platform for AI Research & Knowledge
Internal AI tools showcase for the company. Discover, vote on, and share the AI tools being built across the organisation.
- Vite + React — frontend
- Firebase Auth — Google SSO restricted to
@safetyculture.io - Firestore — database (europe-west2)
- Vercel — hosting (auto-deploy from GitHub
main)
- Go to console.firebase.google.com
- Create a new project — name it
spark-app(or similar) - Enable Authentication → Google sign-in method, set a support email
- Create a Firestore database — choose
europe-west2region, start in production mode - Add authorised domains:
localhostand your Vercel URL (add this after first deploy)
Copy your project config from Firebase console → Project settings → Your apps → Web:
// src/lib/firebase.js
const firebaseConfig = {
apiKey: "your-api-key",
authDomain: "your-project.firebaseapp.com",
projectId: "your-project-id",
storageBucket: "your-project.firebasestorage.app",
messagingSenderId: "your-sender-id",
appId: "your-app-id"
}npm install -g firebase-tools
firebase login
firebase use your-project-id
firebase deploy --only firestore:rules,firestore:indexes- Push this repo to GitHub (
benhewsonedwards/spark) - Go to vercel.com → New Project → Import from GitHub
- Framework: Vite (auto-detected)
- Deploy — no environment variables needed
- Copy the Vercel URL and add it to Firebase Auth → Authorised domains
Sign in with your @safetyculture.io Google account. Your user document is created automatically in Firestore.
npm install
npm run dev| Collection | Purpose |
|---|---|
users/{uid} |
User profiles |
tools/{toolId} |
Submitted tools |
tools/{toolId}/comments/{commentId} |
Tool comments |
Each tool is tagged across three dimensions:
- Function — what the tool does (Automation, Data & Analytics, etc.)
- Audience — who uses it (Customer-Facing, Internal / CSE, GTM, etc.)
- Domain — what area it covers (Sales, Onboarding, Sustainability, etc.)
Users can filter by any combination across all three dimensions.