Home / guides / HN_POST_DRAFT

Hacker News Post - LARC Launch

🎯 Title Options (Pick One)

Option 1: Direct & Technical (Recommended)

Show HN: LARC – Web Components with zero-build dev and PAN messaging (63 chars - under 80 limit)

Option 2: Problem-Focused

Show HN: Solving the Web Component coordination problem with PAN (67 chars)

Option 3: Benefit-Focused

Show HN: Framework-agnostic components that work everywhere (5KB) (68 chars)

Option 4: Pragmatic

Show HN: Web Components framework – reduce React bundle by 60% (65 chars)

📝 First Comment (Post within 2 minutes of submission)

Hi HN! Creator here.

LARC solves two pain points I hit when building with Web Components:

1. **Coordination:** Web Components are silos. They can't communicate without
   tight coupling. PAN (Page Area Network) provides a lightweight message bus
   so components coordinate without knowing about each other.

2. **Development friction:** No one wants to run webpack to add a card component.
   LARC loads components automatically—just write HTML and refresh your browser.

Technical highlights:
• 5KB core (gzipped), zero dependencies
• 261 tests passing (Chromium, Firefox, WebKit)
• Works with React, Vue, Svelte—mix and match
• TypeScript support
• Published on npm (@larcjs/core@3.0.1)

Live playground: https://larcjs.com/playground/

The "killer" demo is the hybrid dashboard—React, Vue, and LARC components
on the same page, coordinating via PAN messages. No framework knows
about the others.

New this week: CLI tool (create-larc-app), component registry, and VS Code extension.

Philosophy: Zero-build in dev for fast iteration. Optional build in prod
for optimization. Framework complement, not replacement.

Happy to answer questions!

GitHub: https://github.com/larcjs/larc
Docs: https://larcjs.com/

🎯 Alternative First Comments

Shorter Version (If needed)

Hi HN! Built LARC to solve the Web Component "silo problem."

The core insight: Web Components need a coordination layer. PAN (Page Area Network)
provides lightweight pub/sub messaging so components communicate without coupling.

Tech: 5KB core, 261 tests, works with React/Vue/Svelte, TypeScript support.

Playground: https://larcjs.com/playground/
Hybrid demo: React + Vue + LARC components coordinating via PAN messages.

Just shipped: CLI tool (create-larc-app), component registry, VS Code extension.

Zero-build dev, optional build prod. Complement frameworks, don't replace them.

Questions welcome!

With More Context Version

Hi HN! I'm the creator of LARC.

**The problem:** Web Components are great for encapsulation but terrible for
coordination. Every component is an island. Making them work together requires
custom integration code, defeating the purpose of reusable components.

**The solution:** PAN (Page Area Network) - a message bus for Web Components.

Think MQTT for the browser. Components publish and subscribe to topics.
A theme toggle publishes "theme.changed", cards/tables/modals subscribe
and update automatically. No coupling, no imports, no framework required.

**Why it matters:**
• Reduce framework overhead 60%+ (5KB core vs 140KB React)
• True framework interop (React, Vue, Svelte on same page)
• Zero build in dev (write code, refresh browser)
• No vendor lock-in (it's just Web Components + messaging)

**What's new (this week):**
• create-larc-app CLI tool
• Component registry with web UI
• VS Code extension

**Technical details:**
• 261 tests passing (Chromium, Firefox, WebKit)
• 0 vulnerabilities (npm audit)
• TypeScript support
• Published to npm (@larcjs/core@3.0.1)

**Try it:**
Playground: https://larcjs.com/playground/
Hybrid demo: https://larcjs.com/examples/hybrid-dashboard.html

**Get started:**
bash npx create-larc-app my-app
Philosophy: LARC is designed for zero-build development while supporting
optimized builds for production. Fast iteration + optimal delivery.

I'm here all day to answer questions!

Docs: https://larcjs.com/
GitHub: https://github.com/larcjs/larc

📋 Preparation Checklist

Before posting:

  • [ ] Choose title (Option 1 recommended)
  • [ ] Choose first comment style (Standard or Shorter)
  • [ ] Verify all links work
  • [ ] Have FAQ.md open for quick copy/paste
  • [ ] Test playground loads properly
  • [ ] Have code examples ready to share
  • [ ] Clear schedule for 2-hour response window
  • [ ] Team members on standby
  • [ ] GitHub repo ready for traffic

🎯 Key Talking Points

Keep these ready for comments:

  • vs React/Vue: Complement, not replace. Keep React for complex UIs.
  • Why Web Components: Only true framework-agnostic solution.
  • Production ready: 261 tests, 0 vulnerabilities, v3.0.1 on npm.
  • Bundle size: 5KB vs 140KB (React) or 90KB (Vue).
  • PAN bus: Like MQTT for browser—pub/sub messaging.
  • Zero build: Write .mjs files, refresh browser. No webpack required.
  • Learning curve: HTML + vanilla JS knowledge is enough.
  • TypeScript: Full support with @larcjs/core-types.
  • Browser support: Chrome 90+, Firefox 88+, Safari 14+, Edge 90+.
  • Community: Young (Nov 2024) but growing. Early adopter opportunity.

  • ⏰ Launch Timing

    Optimal times (Pacific Time):
    • Tuesday: 7:30 AM - 9:00 AM PT
    • Wednesday: 7:30 AM - 9:00 AM PT
    • Thursday: 7:30 AM - 9:00 AM PT
    Avoid:
    • Monday (slower engagement)
    • Friday (weekend approaching)
    • Weekends (low HN traffic)
    • After 12 PM PT (less visibility)

    🔗 Important Links (Keep Handy)

    • Main repo: https://github.com/larcjs/larc
    • Core repo: https://github.com/larcjs/core
    • Playground: https://larcjs.com/playground/
    • Docs site: https://larcjs.com/
    • Examples: https://larcjs.com/examples/
    • npm: https://npmjs.com/package/@larcjs/core
    • Discussions: https://github.com/larcjs/core/discussions

    🚀 Ready to Launch!

    When ready to post:

  • Go to: https://news.ycombinator.com/submit
  • Enter title (Option 1 recommended)
  • Enter URL: https://github.com/larcjs/larc
  • Submit
  • Immediately post first comment (within 2 minutes)
  • Share HN post URL with team
  • Begin monitoring every 5 minutes
  • Respond to every comment within 10 minutes (first 2 hours)
  • Good luck! 🎉