A modern AI assistant wrapper built with React and TailwindCSS, powered by DeepSeek R1 - an open-source AI model that performs on par with OpenAI's o1.
-
Multiple Onboarding Modes: Quick start options for different use cases
- 🎨 Create Something: Build creative projects and applications
- 🔍 Search the Web: Find real-time information
- 📚 Research Topics: Deep dive into subjects with analysis
- 🏗️ Build Workflow: Learn effective prompting for development
-
Special Build Flow: Interactive tutorial teaching users how to write effective prompts for building applications
-
Beautiful UI: Modern design with pastel color scheme and smooth animations
-
Real-time Chat: Responsive chat interface with message history
-
Conversation Management: Create, switch between, and manage multiple conversations
- Node.js (v14 or higher)
- npm or yarn
- Clone the repository:
git clone <repository-url>
cd smart-potato- Install dependencies:
npm install- Start the development server:
npm start- Open http://localhost:3000 to view it in the browser.
This application is designed to work with DeepSeek R1, a powerful open-source AI model available through OpenRouter. Currently running in demo mode with mock responses.
- Get an API key from OpenRouter
- Replace
MockAIServicewithAIServiceinsrc/App.tsx - Set your API key in the service initialization
- Colors: Custom pastel color palette with TailwindCSS
- Typography: Inter font family for modern readability
- Components: Reusable, well-structured React components
- Animations: Smooth transitions and hover effects
src/
├── components/ # Reusable UI components
│ ├── Sidebar.tsx # Navigation and conversation history
│ ├── WelcomeScreen.tsx # Landing page with onboarding
│ ├── OnboardingButtons.tsx # Quick start buttons
│ ├── ChatInterface.tsx # Main chat interface
│ └── MessageBubble.tsx # Individual message display
├── services/ # External service integrations
│ └── aiService.ts # AI model communication
├── types/ # TypeScript type definitions
│ └── index.ts # Shared interfaces
└── App.tsx # Main application component
- React - Frontend framework
- TypeScript - Type safety
- TailwindCSS - Utility-first CSS framework
- DeepSeek R1 - Open-source AI model via OpenRouter
- UUID - Unique identifier generation
- Four distinct pathways for different user needs
- Special "Build Workflow" with interactive prompting tutorial
- Smooth transitions between modes
The "Build Workflow" button triggers a special 3-step onboarding:
- Introduction to prompting concepts
- Project type identification
- Specific guidance based on user's project
- Real-time messaging with typing indicators
- Auto-scroll to latest messages
- Auto-resizing text input
- Message timestamps and avatars
- Create new conversations
- Switch between existing chats
- Automatic conversation titling
- Persistent conversation history
- Responsive Design: Works on desktop and mobile
- Pastel Theme: Calming, professional color scheme
- Micro-interactions: Hover effects and smooth animations
- Accessibility: Proper focus states and semantic HTML
- Loading States: Clear feedback during AI processing
- Integration with real DeepSeek R1 API
- Advanced conversation features (export, search)
- Additional onboarding workflows
- Plugin system for extended functionality
- Mobile app version
This project is open source and available under the MIT License.
Contributions are welcome! Please feel free to submit a Pull Request.
Built with ❤️ as a prototype for intelligent AI assistance.
-
Copy the environment template:
cp .env.example .env
-
Get your OpenRouter API key:
- Visit OpenRouter.ai
- Sign up/login and generate an API key
- The key should start with
sk-or-v1-...
-
Configure your
.envfile:# Replace 'your_api_key_here' with your actual API key REACT_APP_OPENROUTER_API_KEY=sk-or-v1-your-actual-key-here # Optional: Enable debug logging REACT_APP_DEBUG=false
-
Set Environment Variables in Vercel:
- Go to your Vercel project dashboard
- Navigate to Settings → Environment Variables
- Add:
REACT_APP_OPENROUTER_API_KEYwith your actual API key - Set Environment to Production (and Preview if needed)
-
Redeploy:
- Push your changes to trigger automatic deployment
- Or manually redeploy from Vercel dashboard
- ✅
.envfiles are properly ignored by git - ✅
.env.exampleis tracked as a template (no secrets) - ✅ Real API keys should NEVER be committed to git
- ✅ Vercel environment variables are stored securely
If you see "Using mock AI service":
- Check your
.envfile has the correct API key - Restart your development server:
npm start - Verify the key is not the placeholder
your_api_key_here
If Vercel deployment fails:
- Check environment variables are set for "Production"
- Verify API key is valid and not expired
- Check browser console for 401/403 errors