PostCraft turns a topic into a scroll-stopping LinkedIn or X post across four tone modes — Professional, Casual, Storytelling, and Controversial — with platform-specific formatting and a hook-first structure. No signup, no paywall, no per-post limit.
PostCraft takes a topic and generates a post optimized separately for LinkedIn (long-form) and X (punchy), in one of four selectable tones — Professional, Casual, Storytelling, or Controversial — each opening with a proven hook structure designed to stop the scroll. A generated draft can be regenerated for a new variant or copied straight to the clipboard for pasting into the platform composer.
app/page.tsxrenders the landing shell withHeroSection,FeaturesSection, and thePostForminput component.app/api/post/route.tssends the topic and selected tone/platform to the Groq Chat Completions API (llama-3.3-70b-versatile) and falls back to a pre-written demo post per tone/platform combination when no API key is set.- Styling is Tailwind CSS with Framer Motion handling interface transitions; the app is a single Next.js App Router deployment with no database layer.
The real problem: "AI post generator" tools tend to produce one generic voice regardless of what you ask for — a LinkedIn post and an X post need different structure (long-form narrative vs. punchy hook), not just a shorter character count.
The approach: tone and platform are separate, explicit prompt inputs rather than one blended setting, so a "storytelling" LinkedIn post and a "storytelling" X post are generated as genuinely different structures, not the same text truncated.
One real number: demo fallbacks are pre-written per tone-per-platform combination (Record<Tone, Record<Platform, PostOutput>>) — every tone/platform pair has a real worked example, not one generic placeholder shown regardless of selection.
Not handled yet: app/api/intelligence is a separate, disconnected decorative endpoint, not a real formatting pass on the generated post.
| Layer | Technology |
|---|---|
| Framework | Next.js (App Router) |
| Language | TypeScript |
| AI | Groq (llama-3.3-70b-versatile) |
| Styling | Tailwind CSS |
| Motion | Framer Motion |
| Deployment | Vercel |