A Visual Capitalist–inspired data analytics blog built with Next.js and Firebase (Google Cloud). Host canvas visualizations from Cursor with no commenting system.
- Landing page with hero, featured visualizations, latest posts, and browse-by-category sections
- Category pages for Economics, Technology, Demographics, Energy, Markets, and Maps
- Individual post pages with full-width canvas images and rich content
- Firebase backend — Firestore for posts, Cloud Storage for images, Firebase Hosting for deployment
- Local development with sample data (no Firebase account required to start)
npm install
npm run dev- Export images from Cursor Canvas (PNG or SVG)
- Place them in
public/images/for local dev, or upload to Firebase Storage undercanvas-images/when connected - Update post entries in
src/data/posts.ts(local) or Firestore (production)
{
"slug": "my-visualization",
"title": "Charted: My Data Story",
"excerpt": "Short description for cards and SEO",
"content": "Full markdown-style content with ## headings",
"category": "Economics",
"imageUrl": "/images/my-chart.svg",
"imageAlt": "Description for accessibility",
"publishedAt": "2026-07-05T12:00:00Z",
"featured": true
}- Create a project at Firebase Console
- Enable Firestore and Storage
- Copy
.env.exampleto.env.localand fill in your web app config - Deploy security rules:
npx firebase-tools@latest login
npx firebase-tools@latest use YOUR_PROJECT_ID
npx firebase-tools@latest deploy --only firestore:rules,storage- Add posts to the
postscollection in Firestore (use the schema above) - Upload canvas images to Storage at
canvas-images/and setimageUrlto the public URL
Build and deploy to Firebase Hosting:
npm run build
npx firebase-tools@latest deploy --only hostingThe site exports as static HTML (output: "export") for fast CDN delivery.
src/
app/ # Next.js pages (home, blog/[slug], category/[slug])
components/ # Header, Footer, PostCard, Hero, etc.
data/posts.ts # Sample posts for local development
lib/ # Firebase config and post fetching
types/post.ts # TypeScript types and categories
public/images/ # Canvas images and placeholders
Inspired by Visual Capitalist — dark navy header, featured hero cards, category tags, latest posts grid, and sidebar category navigation.