Imported from MikPoik/ContentPilot (
AGENTS.md). Install upstream withnpx skills add MikPoik/ContentPilot. Copyright stays with the author.
ContentCraft AI
Important Development guideline
- NEVER use any language-specific hardcoded keyword patterns, only dynamic language agnostic patterns prefer to avoid any keyword triggers, filters, patterns.
Overview
ContentCraft AI is an AI-powered social media content strategist delivered as a full-stack web application. It offers a chat interface for AI-driven content brainstorming, platform-specific advice, and strategic planning. The project aims to enhance social media presence and content creation efficiency for marketers and content creators by integrating sophisticated chat functionalities.
System Architecture
Frontend
- Framework: React 18 with TypeScript and Vite.
- UI/UX: Radix UI, shadcn/ui, and Tailwind CSS for a responsive, mobile-first design.
- State Management: TanStack Query (React Query) for server-side state and caching.
- Routing: Wouter for lightweight client-side routing.
Backend
- Runtime: Node.js with Express.js and TypeScript (ES modules).
- API: RESTful JSON API with structured error handling.
- Key Features: Replit OIDC authentication, conversation/message CRUD, and OpenAI GPT-4o integration for streaming AI responses.
- Deployment: Single-process serving both API and SPA, with hot module replacement during development.
Data Layer
- Database: PostgreSQL, utilizing Neon serverless for connections.
- ORM: Drizzle ORM for type-safe database interactions.
- Schema: Shared TypeScript schema definitions with Zod validation.
- Persistence: PostgreSQL-backed sessions using
connect-pg-simpleand dual storage (memory for dev, DB for prod).
External Dependencies
- @neondatabase/serverless: PostgreSQL database connectivity.
- drizzle-orm: Type-safe ORM.
- openai: OpenAI's GPT-4o integration.
- Perplexity API: Web search capabilities.
- @tanstack/react-query: Server state management.
- @radix-ui/*: UI component library.
- tailwindcss: CSS framework.
Directory Tree
Generated on: 2025-10-24T11:36:20.270Z
Simple mode: Directory structure only
āāā š client/
ā āāā š src/
ā āāā š App.tsx
ā āāā š components/
ā ā āāā š MemoryTester.tsx
ā ā āāā š chat/
ā ā ā āāā š ai-activity-indicator.tsx
ā ā ā āāā š export-menu.tsx
ā ā ā āāā š instagram-indicator.tsx
ā ā ā āāā š message-input.tsx
ā ā ā āāā š message-list.tsx
ā ā ā āāā š search-citations.tsx
ā ā ā āāā š search-indicator.tsx
ā ā ā āāā š sidebar.tsx
ā ā ā āāā š typing-indicator.tsx
ā ā āāā š profile/
ā ā ā āāā š ai-collected-data-card.tsx
ā ā ā āāā š basic-profile-card.tsx
ā ā ā āāā š blog-analysis-card.tsx
ā ā ā āāā š competitor-analysis-card.tsx
ā ā ā āāā š data-usage-info-card.tsx
ā ā ā āāā š editable-array-field.tsx
ā ā ā āāā š editable-text-field.tsx
ā ā ā āāā š hashtag-search-card.tsx
ā ā ā āāā š instagram-analysis-card.tsx
ā ā ā āāā š other-profile-data-card.tsx
ā ā āāā š subscription-management.tsx
ā ā āāā š ui/
ā ā āāā (ui components omitted from list)
ā āāā š contexts/
ā ā āāā š theme-context.tsx
ā āāā š hooks/
ā ā āāā š use-mobile.tsx
ā ā āāā š use-toast.ts
ā ā āāā š useAuth.ts
ā āāā š index.css
ā āāā š lib/
ā ā āāā š authUtils.ts
ā ā āāā š exportUtils.ts
ā ā āāā š queryClient.ts
ā ā āāā š utils.ts
ā āāā š main.tsx
ā āāā š pages/
ā āāā š chat.tsx
ā āāā š landing.tsx
ā āāā š not-found.tsx
ā āāā š profile-settings.tsx
āāā š components.json
āāā š drizzle.config.ts
āāā š package-lock.json
āāā š package.json
āāā š postcss.config.js
āāā š server/
ā āāā š db.ts
ā āāā š index.ts
ā āāā š replitAuth.ts
ā āāā š routes/
ā ā āāā š auth.ts
ā ā āāā š conversations.ts
ā ā āāā š instagram.ts
ā ā āāā š memories.ts
ā ā āāā š messages.ts
ā ā āāā š subscriptions.ts
ā āāā š routes.ts
ā āāā š services/
ā ā āāā š ai/
ā ā ā āāā š blog.ts
ā ā ā āāā š chat.ts
ā ā ā āāā š instagram.ts
ā ā ā āāā š intent.ts
ā ā ā āāā š memory-utils.ts
ā ā ā āāā š memory.ts
ā ā ā āāā š profile.ts
ā ā ā āāā š search.ts
ā ā ā āāā š workflow-constants.ts
ā ā ā āāā š workflow.ts
ā ā āāā š errors.ts
ā ā āāā š grok.ts
ā ā āāā š hikerapi.ts
ā ā āāā š instagrapi.ts
ā ā āāā š openai.ts
ā ā āāā š perplexity.ts
ā āāā š storage.ts
ā āāā š vite.ts
āāā š shared/
ā āāā š schema.ts
āāā š tailwind.config.ts
āāā š tsconfig.json
āāā š vite.config.ts