This is a fork off David's great work at https://github.com/dzhng/deep-research. This includes a new UI/UX based on NextJS.
In short, it's a sophisticated research tool powered by AI that helps users explore topics deeply and comprehensively through multiple sources.
- Intelligent Research: Conducts comprehensive research across multiple sources based on user queries
- Interactive Follow-up Questions: Generates relevant follow-up questions to better understand research needs
- Adjustable Research Parameters:
- Research Breadth (1-5): Controls the diversity of sources explored
- Research Depth (1-5): Determines how deeply each source is analyzed
- Real-time Progress Updates: Visual feedback on research progress with loading animations
- Export Options:
- Copy full report
- Copy sources separately
- Export to PDF with professional formatting
- Source Attribution: All research includes properly cited sources
- Responsive Design: Works seamlessly across desktop and mobile devices
-
Frontend:
- Next.js 15.1.6
- React 19
- TypeScript
- Tailwind CSS for styling
- Lucide React for icons
-
UI Components:
- Custom Card components
- Interactive Slider
- Circular Progress indicator
- Markdown renderer
-
AI Integration:
- OpenAI SDK for AI processing
- Custom deep research implementation
-
Clone the repository
-
Install dependencies
npm install
- Set up environment variables
Create a
.env.local
file with required API keys: Get your Firecrawl API key from https://firecrawl.dev
OPENAI_API_KEY=your_api_key_here
FIRECRAWL_KEY=your_api_key_here
- Run the development server
npm run dev
- Build for production
npm run build
- Enter your research topic in the main input field
- Adjust research parameters if needed:
- Breadth: Controls the variety of sources (1-5)
- Depth: Controls the detail level (1-5)
- Click "Begin Research"
- Answer follow-up questions to refine the research
- Review the generated report
- Export or copy the results as needed
src/
├── app/ # Next.js app directory
├── components/ # React components
│ ├── ui/ # Reusable UI components
│ ├── ResearchForm.tsx
│ └── Markdown.tsx
├── lib/ # Utility functions
│ └── deep-research.ts
└── types/ # TypeScript type definitions
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
- Built with Next.js and React
- Styled with Tailwind CSS
- AI powered by OpenAI
- Icons by Lucide React