{
  "$schema": "https://schema.org",
  "@context": "https://schema.org",
  "@type": "Person",
  "name": "Ansari Bilal",
  "alternateName": "Bilal Ansari",
  "url": "https://ansaribilal.com",
  "image": "https://ansaribilal.com/og-default.jpg",
  "jobTitle": "Sales Agent & Self-taught App Builder",
  "tagline": "Sales Agent by Day, Builder by Night",
  "description": "Self-taught app builder and full-time sales professional. Builds privacy-first desktop apps (Tauri + Rust), AI tools, productivity apps, and open-source developer tools. 20+ apps shipped, 14+ Hugging Face Spaces, 8+ GitHub repos.",
  "email": "mailto:connect@ansaribilal.com",
  "knowsAbout": [
    "React", "TypeScript", "Tauri", "Rust", "Flutter", "Dart",
    "Python", "AI", "LLMs", "llama.cpp", "Hugging Face Spaces",
    "Open Source", "Sales", "Product", "Indie hacking"
  ],
  "sameAs": [
    "https://github.com/Bilal140202",
    "https://x.com/BilalAnsar21732",
    "https://instagram.com/ansari.hamza14",
    "https://huggingface.co/Nick021402"
  ],
  "stats": {
    "appsShipped": 20,
    "huggingFaceSpaces": 14,
    "openSourceRepos": 8
  },
  "projects": [
    {
      "id": "devatlas",
      "name": "DevAtlas",
      "category": "Developer Tools",
      "description": "Searchable index of 30,000+ developer tools, APIs, datasets and OSS pulled from awesome-list sources, refreshed daily.",
      "url": "https://devtomb.netlify.app/",
      "stack": ["React", "TypeScript", "Search Index", "GitHub API"]
    },
    {
      "id": "apivault",
      "name": "APIVault",
      "category": "Developer Tools",
      "description": "Directory of 1,600+ free public APIs across 58 categories with faceted filtering and an API Finder Wizard.",
      "url": "https://apivault.netlify.app/",
      "stack": ["React", "TypeScript", "API Directory"]
    },
    {
      "id": "privacythink",
      "name": "PrivacyThink",
      "category": "AI / Desktop",
      "description": "Tauri + Rust desktop app that runs LLMs fully on-device for private document chat. Zero network calls.",
      "url": "https://privacythink.netlify.app/",
      "github": "https://github.com/Bilal140202/Privacythinkdoc",
      "stack": ["Tauri", "Rust", "React", "llama.cpp"]
    },
    {
      "id": "podxplain",
      "name": "PodXplain",
      "category": "AI / Hugging Face",
      "description": "CPU-friendly multi-voice podcast generator using Kokoro TTS, speaker detection, dialogue mode, MP3 export, up to 50K characters.",
      "url": "https://huggingface.co/spaces/Nick021402/PodXplainClone",
      "stack": ["Python", "Kokoro TTS", "Gradio", "Hugging Face Spaces"]
    },
    {
      "id": "iconfunnel",
      "name": "IconFunnel",
      "category": "Developer Tools",
      "description": "Browser-side app icon generator that exports every iOS, Android, Web and PWA size from one image.",
      "url": "https://iconfunnel.netlify.app/",
      "stack": ["TypeScript", "Canvas API", "React"]
    },
    {
      "id": "convertfilesnow",
      "name": "ConvertFilesNow",
      "category": "Web",
      "description": "In-browser file conversion across formats. No upload, no server.",
      "url": "https://convertfilesnow.org/",
      "github": "https://github.com/Bilal140202/Fileconvertor",
      "stack": ["TypeScript", "React", "File API"]
    },
    {
      "id": "ai-startup-factory",
      "name": "AI Startup Factory",
      "category": "AI",
      "description": "Generates, scores and iterates on startup ideas using a structured rubric.",
      "github": "https://github.com/Bilal140202/ai-startup-factory",
      "stack": ["Python", "AI", "Automation"]
    },
    {
      "id": "storygen",
      "name": "StoryGen",
      "category": "AI",
      "description": "AI story generation with structured narrative beats (setup, conflict, twist, resolution).",
      "github": "https://github.com/Bilal140202/Storygen",
      "stack": ["TypeScript", "React", "AI"]
    },
    {
      "id": "todoapp",
      "name": "TodoApp",
      "category": "Productivity",
      "description": "Cross-platform mobile-first task manager built with Flutter.",
      "github": "https://github.com/Bilal140202/Todoapp",
      "stack": ["Dart", "Flutter"]
    },
    {
      "id": "lumesearch",
      "name": "LumeSearch",
      "category": "Web",
      "description": "Search engine UI experiment focused on micro-interactions and rhythm.",
      "github": "https://github.com/Bilal140202/Lumesearch",
      "stack": ["CSS", "JavaScript"]
    },
    {
      "id": "malo-tools",
      "name": "Malo Tools",
      "category": "Developer Tools",
      "description": "Bundle of small developer utilities under a shared shell.",
      "github": "https://github.com/Bilal140202/Malo-Tools",
      "stack": ["TypeScript", "React"]
    }
  ],
  "blog": [
    {
      "slug": "migrate-google-drive-without-downloading-rclone-2026",
      "title": "Migrate Google Drive Without Downloading (rclone 2026)",
      "url": "https://ansaribilal.com/blog/migrate-google-drive-without-downloading-rclone-2026",
      "summary": "Server-side Google-to-Google copy of 30.6 GB / 3,687 files in 57 minutes — full PowerShell playbook with dedupe fixes and 404 error handling.",
      "tags": ["rclone", "google-drive", "windows", "powershell", "migration"]
    },
    {
      "slug": "why-i-build-apps-as-a-sales-agent",
      "title": "Why I Build Apps as a Sales Agent",
      "url": "https://ansaribilal.com/blog/why-i-build-apps-as-a-sales-agent",
      "summary": "How sales taught me product thinking and why non-developers should ship code.",
      "tags": ["philosophy", "career"]
    },
    {
      "slug": "building-notecanvas-free-goodnotes-alternative",
      "title": "Building NoteCanvas — A Free GoodNotes Alternative",
      "url": "https://ansaribilal.com/blog/building-notecanvas-free-goodnotes-alternative",
      "summary": "Tauri + React canvas engine with custom ink rendering and viewport culling.",
      "tags": ["tauri", "rust", "desktop"]
    },
    {
      "slug": "local-ai-is-the-future-of-privacy",
      "title": "Local AI is the Future of Privacy",
      "url": "https://ansaribilal.com/blog/local-ai-is-the-future-of-privacy",
      "summary": "Why PrivacyThink runs llama.cpp locally with zero network calls.",
      "tags": ["ai", "rust", "tauri", "privacy"]
    },
    {
      "slug": "how-i-shipped-14-hugging-face-spaces",
      "title": "How I Shipped 14 Hugging Face Spaces in a Year",
      "url": "https://ansaribilal.com/blog/how-i-shipped-14-hugging-face-spaces",
      "summary": "Treating Hugging Face Spaces as a release pipeline, not a portfolio dump.",
      "tags": ["huggingface", "ai", "shipping"]
    }
  ],
  "contact": {
    "email": "connect@ansaribilal.com",
    "twitter": "https://x.com/BilalAnsar21732",
    "github": "https://github.com/Bilal140202"
  }
}
