0
Case studies
0
Images uploaded
0
Total words

Quick Actions

Short descriptor above headline. Max 80 characters.
Use <em>word</em> for accent color. Max 200 characters including HTML tags.

Hero Card Images (3 stacked cards)

Upload images for the hero section. Each card shows a different professional role.

JPG or PNG, max 3MB. Recommended: 800x1060px (3:4 ratio)
JPG or PNG, max 3MB. Recommended: 800x1060px (3:4 ratio)
JPG or PNG, max 3MB. Recommended: 800x1060px (3:4 ratio)
JPG, PNG, or WebP. Max 3MB per file. Multiple files allowed.
Images will be prepared for download. Place them in the images/case-studies/ folder on your server.

Uploaded images this session

No images uploaded yet this session.

Upload images above, then reference them in case study markdown.

SVG or PNG only. Max 500KB per icon.
Upload icons to the icons/ folder. SVG is recommended for crisp rendering at any size.

Uploaded Icons

No icons uploaded yet this session.

Assign uploaded icons to site sections. Click an icon path below to copy it, then paste in the relevant field.

Text or SVG path. If a file path, it will render as an image.

Create simple SVG icons visually. Choose a base shape, adjust stroke and fill, then save.

Import from URL

Paste a Substack, Medium, LinkedIn, or any article URL. Metadata is extracted automatically.

Current Articles (0)

Add manually

Your full professional name. Max 60 characters.
Your current role title. Max 80 characters.
City and country. Max 60 characters.
Years of professional experience. E.g. "14+"
Max 500 characters. Used by the chat assistant to introduce you.

Education details for the knowledge base. The chat assistant uses this to answer education-related questions accurately. Add degrees, certifications, and courses.

Add education entry

Pre-loaded Q&As help the assistant answer common questions accurately.

Add any additional facts the assistant should know. These are freeform notes included in the AI's context. Good for recent projects, talks, publications, or temporary announcements.

Direct JSON editor. Changes here override all other tabs.

Privacy reminder

The AI assistant will only tell visitors whether you are "available" or "not available." It will never share your schedule, location, activities, or reasons for unavailability. This is enforced at the system prompt level.

Time window: ● Live (30s)
0
Total queries
0
Active days
0
Last 1h
0
Avg/day

Word Cloud

Query Trend (last 14 days)

Intent Categories

Content Optimization Suggestions

AI-generated recommendations based on visitor queries

Recent Queries

F

Figma

Link Figma files to case studies. Each case study can store a Figma file URL and an embeddable frame URL for presentations.

Set a default Figma project. Individual case studies can override this.
Fr

Framer

Link Framer prototypes and published sites to case studies.

G

Google Docs

Import content from Google Docs into case studies. Go to the Import Docs tab to paste content or fetch from a published URL.

C

Calendly

Embed Calendly directly in the portfolio. Visitors click "Book a meeting" and see a popup scheduler instead of leaving the site.

Your Calendly event link. The popup widget loads automatically when this is set.
GC

Google Calendar (live availability)

Automatically check if you are currently free or busy. The chat assistant will say "available" or "not available" based on your actual calendar, without revealing what you are doing.

Usually your Gmail address. Must be shared publicly (free/busy only).
Create at console.cloud.google.com with Calendar API enabled.
Setup steps:
1. Go to console.cloud.google.com
2. Enable "Google Calendar API"
3. Create an API Key (Credentials tab)
4. In Google Calendar settings, share your calendar with "See only free/busy" visibility
5. Paste the calendar ID and API key above
6. Set these as Vercel env vars: GOOGLE_CALENDAR_ID, GOOGLE_CALENDAR_KEY

Open your Google Doc, select all content (Ctrl+A), copy it, and paste below. The importer will convert it to clean Markdown.

Publish your Google Doc first: File → Share → Publish to web. Then paste the published URL below.

50-60 characters ideal. Currently: 0/70
155-160 characters ideal. Currently: 0/160
Defaults to page title if empty.
Preferred URL for this page. Prevents duplicate content issues.
5-10 primary keywords. These drive your main search visibility.
10-20 long-tail keywords. Lower competition, higher conversion.
Question-format keywords that AI search engines use for citations.
Malaysia Singapore India UAE US UK Germany Norway Sweden

AI-powered SEO/GEO analysis using Gemini. Analyzes your current meta, keywords, and content structure against target markets.

Uses Gemini API tokens. Typical analysis: ~2000 tokens.
0
Sessions tracked
0%
Avg scroll depth
0s
Avg session time
0
Total clicks

Click Heatmap

Section Attention (avg seconds)

Top Click Targets

AI Behavior Analysis

Gemini analyzes interaction patterns and suggests improvements

Track up to 11 competitors. AI analyzes their positioning against yours weekly.

Add competitor

Maximum 11 competitors. Include portfolio URL and at least one social link.
Uses ~3000 Gemini tokens. Compares positioning, keywords, and content strategy.

Industry state monitor: predicts what will be hyped before it becomes mainstream. Uses signals from tech blogs, hiring trends, conference topics, and social discussions.

Deep analysis of industry signals and skill demand. Uses ~3000 Gemini tokens.

Logo & Favicon

SVG or PNG. Max 200KB. Recommended: 120x40px for nav display.
Appears in the navigation bar. Recommended: SVG, max 200x40px.
PNG, ICO, or SVG. 32x32px or 180x180px for Apple Touch Icon.
Browser tab icon. 32x32 PNG recommended.

Google Analytics

Get this from analytics.google.com → Admin → Data Streams → your stream → Measurement ID. The tracking script loads automatically when this is set.

Resume

One-click access for visitors. Appears as a button in the hero section. Accepts Google Docs, Drive, or any public URL.

Background Music

Background music for the portfolio. Visitors toggle with the button in the bottom-left corner.

Now playing: Slow Moon - Martin Klem
audio/bg-music.mp3 · Loops on toggle
MP3 format, max 5MB. Loops continuously when visitor enables music.
Upload an MP3 to replace the background track. Deploy to apply.

Particle Effects

Background particle animation that adds depth to the portfolio.

Colors

Typography

Add custom Google Font

Enter the exact font name from fonts.google.com. It will be loaded and added to the dropdown.

Presets

Live Preview

Experience Design Lead
I turn complexity into clarity
UX strategy, AI-assisted workflows, and cinematic visual storytelling. Evidence-first.
View case studies Book a call
UX Audit
Evidence-based evaluation for usability, conversion, and accessibility.
Kuala Lumpur, MY · 14+ Years

How it works

When you click Deploy, your edited files are committed directly to your GitHub repo via API. Vercel detects the push and auto-deploys within seconds. No manual download/upload needed.

Select files to deploy

Commit message for version history. Max 120 characters.

Deployment History

View deployments at Vercel Dashboard

This CMS works client-side. When you save changes, files are prepared for download. Replace the corresponding files in your project folder, then deploy.

manifest.json
Download
Updated case study index with all metadata, tags, and integration links.
All case study .md files
Download ZIP
Individual markdown files for each case study.
site-content.json
Download
Hero, about, and experience content as structured JSON. Use to update index.html.
Uploaded images
Download
Any images uploaded this session, ready to place in your images/ folder.