Skip to content

u14app/deep-research

Repository files navigation

Deep Research

GitHub Release License: MIT

Gemini Next Tailwind CSS shadcn/ui

Lightning-Fast Deep Research Reports Powered by Google Gemini

Deep Research is a cutting-edge project built with Next.js 15, leveraging the power of Google Gemini models to generate in-depth research reports in approximately 2 minutes. Utilizing advanced "Thinking" and "Flash" models with internet access, Deep Research provides rapid and insightful analysis on a wide range of topics. Your privacy is paramount – all data is processed and stored locally.

✨ Features

  • Rapid Deep Research: Generates comprehensive research reports in about 2 minutes, significantly accelerating your research process.
  • Multi-platform Support: Supports rapid deployment to Vercel, Cloudflare and other platforms.
  • Powered by Google Gemini: Utilizes the advanced Google Gemini models for accurate and insightful analysis.
  • Thinking & Flash Models: Employs sophisticated "Thinking" and "Flash" models to balance depth and speed, ensuring high-quality results quickly.
  • Local & Server API Support: Offers flexibility with both local and server-side API calling options to suit your needs.
  • Privacy-Focused: Your data remains private and secure, as all data is stored locally on your browser.
  • Multi-language Support: English、简体中文.
  • Built with Modern Technologies: Developed using Next.js 15 and Shadcn UI, ensuring a modern, performant, and visually appealing user experience.
  • MIT Licensed: Open-source and freely available for personal and commercial use under the MIT License.

🎯 Roadmap

  • Support editing final report and search results
  • Support preservation of research history
  • Support file upload and local knowledge base
  • Support for other LLM models

🚀 Getting Started

  1. Get Gemini API Key

  2. One-click deployment of the project, you can choose to deploy to Vercel or Cloudflare

    Deploy with Vercel

    Currently the project supports deployment to Cloudflare, but you need to follow How to deploy to Cloudflare Pages to do it.

  3. Start using

⌨️ Development

Follow these steps to get Deep Research up and running on your local browser.

Prerequisites

Installation

  1. Clone the repository:

    git clone https://github.com/u14app/deep-research.git
    cd deep-research
  2. Install dependencies:

    pnpm install  # or npm install or yarn install
  3. Set up Environment Variables:

    Create a .env file in the root directory of your project and configure the following environment variables:

    # (Optional) Server-side Gemini API Key (Required for server API calls)
    GOOGLE_GENERATIVE_AI_API_KEY=
    
    # (Optional) Server API Proxy URL
    API_PROXY_BASE_URL=
    
    # (Optional) Server API Access Password for enhanced security
    ACCESS_PASSWORD=
    
    # (Optional) Injected script code can be used for statistics or error tracking.
    HEAD_SCRIPTS=

    Important Notes on Environment Variables:

    • GOOGLE_GENERATIVE_AI_API_KEY: Optional but required for using the server-side API. You need to obtain a Google Generative AI API key from Google AI Studio. This key should be kept secret and never committed to your public repository.
    • API_PROXY_BASE_URL: Optional. If you need to use a proxy server for API requests, configure this variable with your proxy server's base URL. This is relevant for server-side API calls.
    • ACCESS_PASSWORD: Optional but highly recommended for server-side deployments. Set a strong password to protect your server-side API endpoints. This password will be required to access server-side API functionalities.
    • HEAD_SCRIPTS: Optional Injected script code can be used for statistics or error tracking.

    Privacy Reminder: These environment variables are primarily used for server-side API calls. When using the local API mode, no API keys or server-side configurations are needed, further enhancing your privacy.

  4. Run the development server:

    pnpm dev  # or npm run dev or yarn dev

    Open your browser and visit http://localhost:3000 to access Deep Research.

🚢 Deployment

Vercel

Deploy with Vercel

Cloudflare

Currently the project supports deployment to Cloudflare, but you need to follow How to deploy to Cloudflare Pages to do it.

Docker

The Docker version needs to be 20 or above, otherwise it will prompt that the image cannot be found.

⚠️ Note: Most of the time, the docker version will lag behind the latest version by 1 to 2 days, so the "update exists" prompt will continue to appear after deployment, which is normal.

docker pull xiangfa/deep-research:latest
docker run -d --name deep-research -p 3333:3000 xiangfa/deep-research

You can also specify additional environment variables:

docker run -d --name deep-research \
   -p 3333:3000 \
   -e GOOGLE_GENERATIVE_AI_API_KEY=AIzaSy... \
   -e ACCESS_PASSWORD=your-password \
   xiangfa/deep-research

or build your own docker image:

docker build -t deep-research .
docker run -d --name deep-research -p 3333:3000 deep-research

If you need to specify other environment variables, please add -e key=value to the above command to specify it.

Deploy using docker-compose.yml:

version: '3.9'
services:
   deep-research:
      image: xiangfa/deep-research
      container_name: deep-research
      environment:
         - GOOGLE_GENERATIVE_AI_API_KEY=AIzaSy...
         - ACCESS_PASSWORD=your-password
      ports:
         - 3333:3000

or build your own docker compose:

docker compose -f docker-compose.yml build

Static Deployment

You can also build a static page version directly, and then upload all files in the out directory to any website service that supports static pages, such as Github Page, Cloudflare, Vercel, etc..

pnpm build:export

⚙️ Configuration

As mentioned in the "Getting Started" section, Deep Research utilizes the following environment variables for server-side API configurations:

  • GOOGLE_GENERATIVE_AI_API_KEY
  • API_PROXY_BASE_URL
  • ACCESS_PASSWORD

These variables are only required if you intend to use the server-side API calling functionality. For local API calls, no configuration is necessary beyond setting up the project.

🛡️ Privacy

Deep Research is designed with your privacy in mind. All research data and generated reports are stored locally on your machine. We do not collect or transmit any of your research data to external servers (unless you are explicitly using server-side API calls, in which case data is sent to Google's Gemini API through your configured proxy if any). Your privacy is our priority.

📝 License

Deep Research is released under the MIT License. This license allows for free use, modification, and distribution for both commercial and non-commercial purposes.

🙏 Acknowledgements

  • Next.js - The React framework for building performant web applications.
  • Shadcn UI - Beautifully designed components that helped streamline the UI development.
  • Google Gemini - Powering the intelligent research capabilities of Deep Research.
  • Deep Research - Thanks to the project dzhng/deep-research for inspiration.

🤝 Contributing

We welcome contributions to Deep Research! If you have ideas for improvements, bug fixes, or new features, please feel free to:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Make your changes and commit them.
  4. Submit a pull request.

For major changes, please open an issue first to discuss your proposed changes.

✉️ Contact

If you have any questions, suggestions, or feedback, please create a new issue.