chatgpt-web  by chatgpt-web-dev

Web UI for ChatGPT via official OpenAI API

created 2 years ago
1,828 stars

Top 24.1% on sourcepulse

GitHubView on GitHub
Project Summary

This project provides a third-party web UI for interacting with ChatGPT, built with Express and Vue.js, leveraging the official OpenAI Completion API. It targets users who want a customizable and feature-rich interface for ChatGPT, offering enhanced functionalities beyond the basic web client, such as user management, session synchronization, and flexible API key handling.

How It Works

The application utilizes a backend built with Express.js and a frontend developed with Vue.js 3. It supports two primary methods for interacting with ChatGPT: the official OpenAI API (gpt-3.5-turbo) and an unofficial proxy API that uses the web version's access token. The unofficial method is noted as free but less reliable, while the official API is paid but more stable. The project emphasizes security by recommending the use of the official API and setting an AUTH_SECRET_KEY for access control when deploying publicly.

Quick Start & Requirements

  • Installation: Requires Node.js (versions ^16, ^18, ^20, ^22) and PNPM.
    • Backend: cd service && pnpm install
    • Frontend: pnpm bootstrap
  • Running:
    • Backend: cd service && pnpm start
    • Frontend: pnpm dev
  • Environment Variables: Configure OPENAI_API_KEY or OPENAI_ACCESS_TOKEN in service/.env.
  • Docker: docker build and docker run commands are provided.
  • Deployment: Instructions for Railway and manual deployment are available.
  • Docs: English Instructions

Highlighted Details

  • User registration, login, password reset, and 2FA.
  • Synchronized chat history and per-session custom prompts.
  • Support for multiple API keys and request rate limiting per user.
  • Auth proxy mode for SSO integration with LDAP/OIDC/SAML via reverse proxies.

Maintenance & Community

The project is a fork of Chanzhaoyu/chatgpt-web due to disagreements on database dependencies. It is actively developed with a list of planned features. Contributions are welcomed, and sponsorship options (WeChat Pay, Alipay, DigitalOcean) are available.

Licensing & Compatibility

Licensed under the MIT License. This permissive license allows for commercial use and linking with closed-source projects.

Limitations & Caveats

The unofficial API method relies on third-party servers and may be unreliable or subject to rate limits. Users are warned about potential risks when exposing access tokens to third-party proxies. The project is primarily hosted on GitHub, and users are cautioned against unofficial services.

Health Check
Last commit

3 weeks ago

Responsiveness

1 day

Pull Requests (30d)
3
Issues (30d)
1
Star History
47 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.