connectors
Airtable
Build Assignment Manager App with Airtable
What you're building: Student assignment tracker with Airtable as database
Tech stack: React + NestJS + Airtable API
Step 1: Tell Cocoding.ai What to Build
Copy/paste this prompt:
Build a full-stack assignment management application using React, NestJS,and Airtable as the database.Features:- Assignment CRUD (create, read, update, delete)- Dashboard with statistics (total, completed, pending)- Kanban board with drag-and-drop- Calendar view of deadlines- Search and filter assignmentsAssignment fields:- Title (text)- Subject (text)- Due date (date)- Priority (select: Low, Medium, High, Urgent)- Status (select: Not Started, In Progress, Done)- Description (long text)Use Airtable REST API for data storage.Use Tailwind CSS for modern, responsive UI.
Cocoding.ai creates everything automatically — backend, frontend, database, deployment.
Step 2: Create Airtable Base
2.1 Sign Up for Airtable
- Go to [airtable.com](https://airtable.com)
- Click "Sign up for free"
- Verify your email
<!-- mediaBlock block -->
2.2 Create New Base
- After logging in, click "Add a base"
- Select "Start from scratch"
- Name it:
Assignment Tracker - Click "Create base"
<!-- mediaBlock block -->
2.3 Set Up Table
- Rename the default table to "Assignments"
- Create these columns:
Column Name | Field Type | Options |
Title | Single line text | - |
Subject | Single line text | - |
DueDate | Date | Include time: OFF |
Priority | Single select | Low, Medium, High, Urgent |
Status | Single select | Not Started, In Progress, Done |
Description | Long text | - |
CreatedAt | Created time | - |
⚠️ Important: Column names must match exactly (case-sensitive)
2.4 Add Sample Data (Optional)
Click "+ Add record" and add a test assignment:
- Title: "Math Homework"
- Subject: "Mathematics"
- DueDate: Tomorrow
- Priority: High
- Status: Not Started
- Description: "Complete exercises 1-10"
Step 3: Get Airtable API Credentials
3.1 Create Personal Access Token
<!-- mediaBlock block -->
- Go to [airtable.com/create/tokens](https://airtable.com/create/tokens)
- Click "Create new token"
- Name it:
Assignment Manager App - Under Scopes, select:
- ✅ data.records:read
- ✅ data.records:write
- Under Access, select your "Assignment Manager" base
- Click "Create token"
- COPY THE TOKEN IMMEDIATELY (starts with
pat)
Example: patAbCdEfGhIjKlMnOpQrStUvWxYz1234567890
3.2 Get Base ID
<!-- mediaBlock block -->
- Go to [airtable.com/api](https://airtable.com/api)
- Click on your base
- Find Base ID in the introduction (starts with
app)
Example: appAbCdEfGhIjKlMn
Alternative: Check the URL when viewing your base - it's after / in the URL.
Step 4: Connect Airtable to App
📸 Screenshot placeholder: .env file with credentials
Open .env and add:
VITE_AIRTABLE_API_KEY=pat_YOUR_ACTUAL_API_KEY_HEREVITE_AIRTABLE_BASE_ID=app_YOUR_BASE_ID_HEREVITE_AIRTABLE_TABLE_NAME=Assignments
Save the file — backend restarts automatically.
Step 5: Test Your App
<!-- mediaBlock block -->
5.1 Open the App
- Open the app URL (Cocoding.ai provides this)
- You should see the dashboard with statistics!
5.2 Create Assignment
<!-- mediaBlock block -->
- Click "New Assignment"
- Fill in:
- Title: "Study for Finals"
- Subject: "Physics"
- Due Date: Next week
- Priority: High
- Status: Not Started
- Description: "Chapters 1-5"
- Click "Create"
5.3 Verify in Airtable
- Go to your Airtable base
- Refresh the page
- ✅ You should see the new assignment!
5.4 Test Kanban Board
- Click "Kanban" in the app
- Drag assignment from "Not Started" to "In Progress"
- ✅ Check Airtable - status updated!
📸 Screenshot placeholder: Kanban board with drag-and-drop
<!-- mediaBlock block -->
5.5 Test Calendar View
- Click "Calendar" in the app
- ✅ See your assignment on the due date!
Troubleshooting
"API key is invalid"?
- Verify key starts with
pat - Check token has correct scopes (read/write)
- Regenerate token if needed
- Restart backend after updating
.env
"Base not found"?
- Double-check Base ID starts with
app - Verify you selected correct base when creating token
- Check for extra spaces in
.env
"Table not found"?
- Table name must be exactly:
Assignments(case-sensitive) - Rename table in Airtable if needed
- No spaces or special characters
"Missing fields" or data not saving?
- Check column names match exactly:
- Title, Subject, DueDate, Priority, Status, Description, CreatedAt
- Capitalization matters!
- DueDate is one word (not "Due Date")
Can't drag cards on Kanban?
- Use modern browser (Chrome, Firefox, Safari, Edge)
- Refresh page
- Clear browser cache
Calendar not showing assignments?
- Make sure assignments have valid due dates
- Check DueDate column is Date field type
- Verify dates are set correctly
Security Best Practices
✅ Never share API key publicly
✅ Don't commit `.env` to git
✅ Regenerate token if exposed:
- Go to [airtable.com/create/tokens](https://airtable.com/create/tokens)
- Find your token
- Click "Revoke"
- Create new token
- Update
.env
✅ Use separate tokens for dev/production
✅ Set appropriate scopes — Only grant read/write if needed
Airtable vs Traditional Databases
Feature | Airtable | Traditional DB |
Setup | 5 minutes | Hours |
UI | Built-in spreadsheet | Need to build |
API | REST API included | Need to build |
Scaling | Handles it for you | Manual |
Cost | Free tier available | Server costs |
Best for | Quick apps, prototypes | Complex apps |
Customize Your App
Tell Cocoding.ai what you want:
Features:
- "Add file attachments to assignments"
- "Add collaborators/team members"
- "Send email reminders for due dates"
- "Add tags for categorization"
- "Implement search across all assignments"
- "Add assignment templates"
Views:
- "Add timeline view of assignments"
- "Create statistics chart by subject"
- "Add completed assignments archive"
- "Show assignments by priority"
Integrations:
- "Send Slack notifications for urgent deadlines"
- "Sync with Google Calendar"
- "Connect to Notion for documentation"
Going to Production
Step 1: Deploy Your App
Ask Cocoding.ai:
Deploy this app to production so others can access it online
Step 2: Use Production Token
- Create a separate Personal Access Token for production
- Update production environment variables
- Never use test tokens in production
Step 3: Set Up Backups
Airtable automatically backs up your data, but you can also:
- Export base as CSV weekly
- Enable Airtable snapshots (paid feature)
Step 4: Monitor Usage
- Check Airtable API usage dashboard
- Monitor rate limits (5 requests/second free tier)
- Upgrade if needed
Pro Tips
Organize with Views:
- Create filtered views in Airtable (by subject, by status)
- Use grid view for overview, kanban for workflow
- Calendar view for deadlines
Use Formulas:
- Add calculated fields (days until due, overdue flag)
- Example:
IF(IS_AFTER({DueDate}, TODAY()), "Overdue", "On Track")
Automations:
- Set up email notifications in Airtable
- Create reminders for upcoming deadlines
- Auto-assign tasks based on rules
Collaboration:
- Share base with team members
- Set permissions (read-only, edit, comment)
- Use comments for discussion
FAQ
Q: Is Airtable free?
A: Yes! Free tier includes:
- Unlimited bases
- 1,000 records per base
- 1GB attachments
- API access
Q: Can I use this for production apps?
A: Yes, but consider:
- Free tier has API rate limits (5 req/sec)
- Upgrade for more capacity ($20/month)
- For high-traffic apps, use traditional database
Q: Can I export my data?
A: Yes:
- Base menu → Export base → CSV
- Automatic backups available (paid)
- Full data ownership
Q: How many records can I store?
A: Free tier: 1,000 records per base. Paid plans: 50,000+ records.
Q: Can I use Airtable with other databases?
A: Yes! Ask Cocoding.ai: "Add PostgreSQL database alongside Airtable for caching"
Q: What happens if I exceed limits?
A: API calls will fail. Upgrade plan or optimize with caching.
Advanced Features
Relationships Between Tables
Ask Cocoding.ai:
Add a "Subjects" table to Airtable and relate assignments to subjects
This creates a relational database structure!
Formulas and Rollups
In Airtable, add formula fields:
- Days until due:
DATETIME_DIFF({DueDate}, TODAY(), 'days') - Progress percentage: Count done vs total
Airtable Automations
- Click "Automations" in Airtable
- Create rule: "When status changes to Done"
- Action: "Send email" or "Update record"
These work alongside your app!
Cost Comparison
Plan | Price | Records | API Calls |
Free | $0/month | 1,000/base | 5 req/sec |
Plus | $20/month | 50,000/base | 50 req/sec |
Pro | $45/month | 100,000/base | 100 req/sec |
Most small apps: Free tier is plenty!
Growing apps: Upgrade to Plus when needed.