+```
+
+### CTA button
+```tsx
+
+```
+
+## Verification
+
+1. Run type check:
+ ```bash
+ npx tsc --noEmit
+ ```
+
+2. Start dev server:
+ ```bash
+ npm run dev
+ ```
+
+3. Navigate to `/discover` or `/feed` to verify widget appears at configured positions
+
+## Type Reference
+
+```typescript
+interface WidgetPrompt {
+ id: string;
+ slug: string;
+ title: string;
+ description: string;
+ content: string;
+ type: "TEXT" | "STRUCTURED";
+ structuredFormat?: "json" | "yaml";
+ sponsor?: {
+ name: string;
+ logo: string;
+ logoDark?: string;
+ url: string;
+ };
+ tags?: string[];
+ category?: string;
+ actionUrl?: string;
+ actionLabel?: string;
+ positioning?: {
+ position?: number; // Default: 2
+ mode?: "once" | "repeat"; // Default: "once"
+ repeatEvery?: number; // For repeat mode
+ maxCount?: number; // Max occurrences
+ };
+ shouldInject?: (context: WidgetContext) => boolean;
+ render?: () => ReactNode; // For custom rendering
+}
+
+interface WidgetPlugin {
+ id: string;
+ name: string;
+ prompts: WidgetPrompt[];
+}
+```
+
+## Common Issues
+
+| Issue | Solution |
+|-------|----------|
+| Widget not showing | Check `shouldInject` logic, verify registration in `index.ts` |
+| TypeScript errors | Ensure imports from `./types`, check sponsor object shape |
+| Styling issues | Use Tailwind classes, match existing widget patterns |
+| Position wrong | Remember positions are 0-indexed, check `repeatEvery` value |
diff --git a/src/app/presentation/page.tsx b/src/app/presentation/page.tsx
new file mode 100644
index 00000000..583b32a3
--- /dev/null
+++ b/src/app/presentation/page.tsx
@@ -0,0 +1,235 @@
+import { SlideDeck, SlideTitle, SlideContent, SlideHighlight } from "@/components/presentation/SlideDeck";
+import { MoveRight, Star, GitMerge, FileCode2, Sparkles, MessageSquare, Globe, Users, Code, Zap, Lightbulb } from "lucide-react";
+import Link from "next/link";
+import { Button } from "@/components/ui/button";
+
+export const metadata = {
+ title: "Why prompts.chat? | Presentation",
+ description: "Discover why prompts are more important than ever in the agentic era.",
+};
+
+export default function PresentationPage() {
+ return (
+
+ {/* 1. Title Slide */}
+
+
+
+
+ Why prompts.chat?
+ Discover why prompts are more important than ever in the agentic era.
+
+ Use arrow keys or swipe to navigate
+
+
+
+ {/* 2. The Genesis */}
+
+
+ The History of prompts.chat
+
+ From a simple repository to a full-fledged platform. We started as Awesome ChatGPT Prompts, and evolved to support the entire AI community with typed prompts, workflows, and skills.
+
+
+
+ Awesome ChatGPT Prompts → prompts.chat
+
+
+
+
+ {/* 3. The Paradigm Shift */}
+
+
+ The Agentic Era
+
+ Why are prompts still important? Because agents need instructions. As AI becomes more autonomous, the quality of instructions determines the quality of the outcome.
+
+
+
+ {/* 4. The Core Question */}
+
+
+ Wait, isn't AI getting smarter?
+
+ Yes, but smart AI still needs direction.
+
+ A genius without instructions is just a very capable idle machine.
+
+
+
+ {/* 5. The Agentic Need */}
+
+ The Agentic Need
+
+ Agents require precise instructions, constraints, and goal definitions.
+
+
What tools can they use?
+
What are their boundaries?
+
How should they format the output?
+
What tone should they adopt?
+
+
+
+
+ {/* 6. The SLM Revolution */}
+
+
+ Crucial for SLMs
+
+ Small Language Models (SLMs) are the future of edge computing. They require precise, well-crafted prompts to perform tasks accurately without the massive parameter count of frontier models.
+
+
+
+ {/* 7. SLM Constraints */}
+
+ SLM Constraints
+
+ Smaller models lack the vast "common sense" of 1T+ parameter models.
+
+ They require highly optimized, battle-tested prompts to punch above their weight class and run efficiently on local devices.
+
+
+
+ {/* 8. The New Primitive */}
+
+
+ Prompts are New Code Snippets
+
+ Just as developers copy/paste code snippets from StackOverflow, AI practitioners now share prompt templates. Prompts are the new primitive of programming.
+
+
+
+ Community Sharing
+
+ Nobody learns in isolation. By sharing prompts, we accelerate the collective understanding of how to communicate with AI. It's the open-source movement for human-AI interaction.
+
+
+
+ {/* 10. Collective Intelligence */}
+
+ Collective Intelligence
+
+ We are building the largest open repository of human-AI interaction patterns.
+
+ Tested, versioned, and peer-reviewed.
+
+
+
+ {/* 11. Feature - Typed Prompts */}
+
+
+ Feature: Typed Prompts
+
+ Natural language is ambiguous. Typed Prompts bring structure.
+
+ Define inputs, outputs, and variables systematically so prompts can be executed predictably via APIs.
+
+
+
+ {/* 12. Feature - Workflows */}
+
+
+
+
+
+
+
+
+ Feature: Workflows
+
+ Some tasks are too complex for a single prompt.
+
+ Chain multiple prompts together to create Workflows — dividing and conquering complex agentic tasks.
+
+
+ Collaborate, suggest improvements, and refine instructions together as a community.
+
+
+
+ {/* 15. For Developers */}
+
+ For Developers
+
+ prompts.chat isn't just for end-users. With features like Agent Skills, Typed Prompts, and API integrations, it's a vital tool for developers building the next generation of AI apps.
+
+
+
+ {/* 16. For Everyone */}
+
+
+ For Everyone
+
+ Discover, collect, and learn from Promptmasters.
+
+ A beautifully designed, accessible platform to find exactly what you need to make AI work for you.
+
+
+
+ {/* 17. Self-Hosted */}
+
+
+ Fully Self-Hosted
+
+ Your data, your platform.
+
+ prompts.chat is 100% open-source and deployable to any server or cloud provider. Own your organization's prompt library securely.
+
+
+
+ {/* 18. The Vision */}
+
+ The Vision
+
+ To create the standard protocol for human-AI interaction.
+
+ Where every great instruction is shared, improved, and accessible to all.
+
+
+
+ {/* 19. Call to Action */}
+
+
+
+
+ Join the Community
+
+ Start exploring, sharing, and building the future of AI interaction today.
+
+