03Freelancing
Auto-Calling System
Automated Communication Platform
Automated voice outreach for a non-profit, integrating Twilio with a Firebase backend for contact management and call scheduling.
- Company
- Freelance Client
- Role
- Freelance Full-Stack Developer
- Category
- Full-Stack
/images/work/auto-calling-system/cover.webp
Full-bleed project cover. Wide editorial crop of the interface or its subject matter.
01Impact
By the numbers.
Twilio
Voice integration
Auto
Scheduled campaigns
Server
Credentials isolated
Log
Per-call outcomes
02Overview
The brief.
Community outreach by hand does not scale past a few dozen contacts. This system manages a contact list, schedules calls, and places them through Twilio, with Cloud Functions handling the telephony so API credentials never reach the browser.
Problem
Reaching a community list manually costs hours per campaign and produces no record of who was actually contacted. Any automated replacement has to handle telephony credentials safely and cope with calls that fail or go unanswered.
Solution
Firebase Cloud Functions act as the trusted boundary: the client requests a campaign, the function holds the Twilio credentials and places calls server-side, writing outcomes back to Firestore so every attempt is recorded.
03Features
What it does.
Contact management
Contact lists as structured records rather than an imported spreadsheet per campaign.
- Firestore
- React
Twilio voice integration
Programmatic call placement through Twilio, invoked server-side.
- Twilio
- Cloud Functions
Call scheduling
Campaigns queued to run at a chosen time rather than requiring someone present.
- Cloud Functions
- Firestore
Credential isolation
Twilio keys live only in the Cloud Functions environment — the client never holds them.
- Firebase Cloud Functions
Call outcome logging
Each attempt writes its result back, so a campaign has an auditable record.
- Firestore
04Architecture
How it's built.
frontend
- React
- Campaign interface
- Contact management
backend
- Firebase Cloud Functions
- Firestore
telephony
- Twilio Voice API
- Server-side placement
security
- Environment-scoped credentials
- Firebase Auth
05Challenges
What was hard.
Telephony credentials must never reach the client
All Twilio calls routed through Cloud Functions, with keys held in the function environment rather than shipped to the browser.
Calls fail, and a campaign still has to be accountable
Per-call outcomes written back to Firestore so failures are visible rather than silent.
06Gallery
A closer look.
/images/work/auto-calling-system/01.webp
Interface detail. Crop tight on one screen or one interaction — not a full-page screenshot shrunk down.
/images/work/auto-calling-system/02.webp
Interface detail. Crop tight on one screen or one interaction — not a full-page screenshot shrunk down.
/images/work/auto-calling-system/03.webp
Interface detail. Crop tight on one screen or one interaction — not a full-page screenshot shrunk down.
/images/work/auto-calling-system/04.webp
Interface detail. Crop tight on one screen or one interaction — not a full-page screenshot shrunk down.
07Stack
Built with.
- React
- Firebase
- Twilio
- Cloud Functions
- Firestore
Outcomes
- Manual outreach replaced with scheduled campaigns
- Telephony credentials isolated server-side
- Every call attempt recorded against its contact