Dashboard
Manage your website content.
Signed in as —
—
Engineering Projects
—
Personal Projects
—
Contentful Status
Welcome back 👋
Use the left menu to manage your website content.
- ⚙️ Engineering Projects — add, edit or remove engineering portfolio cards.
- 🔨 Personal Projects — manage personal, academic and "for friend" projects.
- 🔧 Contentful Setup — connect your Contentful space to enable dynamic project management.
Contentful is not yet connected. Projects will show static fallback data on the public site.
Set it up now →
Add Engineering Project
All Engineering Projects
| Title | Category | Order | |
|---|---|---|---|
| Loading… | |||
Add Personal Project
All Personal Projects
| Title | Category | Order | |
|---|---|---|---|
| Loading… | |||
Connect Contentful
Enter your Contentful credentials to enable dynamic project management. These are saved in /js/config.js in your repo.
How to get your credentials:
Space ID + Delivery Token
→ app.contentful.com → your space → Settings → API Keys
Management Token (needed for Seeding)
→ Click your avatar (bottom-left) → Profile Settings → CMA tokens tab → Generate Personal Token
⚠️ This is different from the API Keys page — it's a Personal Access Token starting with the same format but granting write access.
Space ID + Delivery Token
→ app.contentful.com → your space → Settings → API Keys
Management Token (needed for Seeding)
→ Click your avatar (bottom-left) → Profile Settings → CMA tokens tab → Generate Personal Token
⚠️ This is different from the API Keys page — it's a Personal Access Token starting with the same format but granting write access.
Required Content Types
Create these two content types in Contentful. Use exactly these API identifiers.
1. engineeringProject
| Field Name | API ID | Type | Required |
|---|---|---|---|
| Title | title | Short text | Yes |
| Category | category | Short text (Work / Academic) | Yes |
| Summary | summary | Short text | No |
| Image URL | imageUrl | Short text (URL) | No |
| Link | link | Short text (URL) | No |
| Display Order | order | Number (Integer) | No |
2. personalProject
| Field Name | API ID | Type | Required |
|---|---|---|---|
| Title | title | Short text | Yes |
| Category | category | Short text (Personal / Academic / For Friend) | Yes |
| Summary | summary | Short text | No |
| Image URL | imageUrl | Short text (URL) | No |
| Link | link | Short text (URL) | No |
| Display Order | order | Number (Integer) | No |
Tip: After creating the content types and adding credentials above, save and the project pages will load live data from Contentful. No rebuild needed!
Seed Projects into Contentful
Once your credentials are saved and content types are created, click below to automatically populate Contentful with all your existing projects. This creates the content types (if they don't exist) and adds all project entries in one go.
Requirements: You must have a Management Token saved above before seeding. The seed is safe to re-run — it skips projects that already exist.
Seed skips any project titles that already exist. Clear All & Reseed deletes every entry and starts fresh — use this to fix duplicates.