open-spaces is a free, open source ai interaction & interfaces project written in JavaScript and released under MIT. It has 3,394 GitHub stars, 496 forks and 0 open issues, and was last pushed 14 hours ago. On this registry it ranks #75 of 145 tracked projects in AI Interaction & Interfaces, with 5 head-to-head comparisons available.

What is open-spaces?

OpenSpaces is a free, MIT-licensed, self-hostable AI workspace that brings shared Spaces, editable pages, conversations, and AI tools into one application, aimed at individuals and teams who want an open alternative to ChatGPT Spaces running on their own infrastructure.

What it is

OpenSpaces is a self-hostable AI workspace built as an independent community project, and it states plainly that it is not affiliated with or endorsed by OpenAI. It organises work into Spaces, each holding editable pages and conversations, with AI assistance available inside the workflow rather than in a separate window. The web application is written in Next.js, React, and Tailwind CSS with a TipTap editor, backed by a FastAPI and SQLAlchemy API and a PostgreSQL-compatible database, including Supabase, with an in-memory development fallback when no database is configured.

The concrete problem it addresses is that shared AI workspaces are typically hosted services whose data, code, and running location the user does not control. OpenSpaces replaces that arrangement with software you can run yourself: the README's stated reasons for existing are that it is open source and self-hostable, workspace-centred, AI in the workflow, and built to adapt through code and integration changes. It connects to a configured provider, MuAPI, for chat, image generation, and uploads, and the project notes that hosting, database, and third-party AI provider usage may carry separate costs because OpenSpaces does not include free model inference.

Key capabilities

  • Create and manage Spaces, pages, and messages as the workspace's core structure.
  • Edit pages with a TipTap rich-text editor that also offers a Markdown mode, slash commands, autosave, and inline AI actions.
  • Chat with configured models and run image generation through the configured MuAPI integration, with DEFAULT_MODEL and MUAPI_API_KEY set in server/.env.
  • Upload media through the configured provider integration.
  • Explore early meeting notes and Dot agent interfaces.
  • Configure the API with PORT, HOST, CORS_ORIGINS, DATABASE_URL, DIRECT_URL, DEFAULT_MODEL, and MUAPI_API_KEY.
  • Extend the application and its integrations, and send issues, bug reports, and pull requests upstream.

Who uses it and how

  • Developers who want to run an AI workspace on infrastructure they control, since the README emphasises choosing where to run the software and inspecting and changing the code.
  • Teams and collaborators working in shared Spaces, using pages and conversations together, with the team-collaboration and workspace topics indicating that intent.
  • Individuals combining a document editor and AI chat in one place, writing in TipTap or Markdown and invoking inline AI actions while editing.
  • Contributors extending the project, with issues, bug reports, and pull requests welcomed and larger changes to be discussed in an issue first.
  • Experimenters evaluating early interfaces such as meeting notes and the Dot agent, given that these are described as early explorations.

Getting started

The README's local run is a two-process setup: in server/, create a virtual environment, run pip install -r requirements.txt, copy .env.example to .env, set MUAPI_API_KEY and optionally DATABASE_URL, then start it with python run.py on http://localhost:8000; in client/, run npm ci and npm run dev to open http://localhost:3000.

How it compares

OpenSpaces positions itself directly against ChatGPT Spaces, the proprietary hosted product it names as the thing it is an alternative to, and it differs by being MIT-licensed software you run yourself rather than a service you log into. The distinction the facts support is control over code and hosting location; the project also carries an explicit disclaimer that ChatGPT and ChatGPT Spaces are trademarks of OpenAI.

When to use it — and when not to

A self-hoster must operate the FastAPI server, a PostgreSQL database (or rely on the in-memory fallback), a Node.js client, and a MuAPI account whose key backs chat, image generation, and uploads. Do not deploy it as a multi-user service or point sensitive data at it yet: the README states that the codebase does not yet enforce authentication and per-Space authorization consistently across API routes, that the current WebSocket is not a collaborative editing system, and that agent execution and meeting transcription are not complete production workflows. Anyone needing a finished, hardened collaborative editor should wait, and the project's own advice is to check the code and issues before relying on a feature.

project readme (upstream, from github) — read inline

OpenSpaces — The Free, Open-Source Alternative to ChatGPT Spaces

A free, open-source, self-hostable AI workspace for shared pages, conversations, and AI tools.

OpenSpaces brings shared workspaces, editable pages, conversations, and AI tools into one place. Run it on infrastructure you control, inspect and change the code, and connect it to supported AI services such as MuAPI.

OpenSpaces is an independent community project. It is not affiliated with or endorsed by OpenAI. ChatGPT and ChatGPT Spaces are trademarks of OpenAI.

Why OpenSpaces?

  • Open source and self-hostable: use the MIT-licensed software and choose where to run it.
  • Workspace-centered: organize work in Spaces with pages and conversations.
  • AI in the workflow: chat with configured models and use writing and image generation tools in the page editor.
  • Built to adapt: extend the application and its integrations for your own needs.

The software is free to use. Hosting, database, and third-party AI provider usage may have separate costs; OpenSpaces does not include free model inference.

What works today

  • Create and manage Spaces, pages, and messages.
  • Edit pages with a TipTap rich-text editor, Markdown mode, slash commands, autosave, and inline AI actions.
  • Use the configured MuAPI integration for chat and image generation.
  • Upload media through the configured provider integration.
  • Explore early meeting notes and Dot agent interfaces.

Project status: OpenSpaces is under active development. Some interface flows are prototypes or simulated, and several README claims from earlier versions described planned behavior. In particular, the current WebSocket is not a collaborative editing system; agent execution and meeting transcription are not complete production workflows. Check the code and issues before relying on a feature.

Security and deployment status

The current codebase does not yet enforce authentication and per-Space authorization consistently across API routes. Do not expose it as a multi-user service or use it with sensitive data until that boundary has been implemented and reviewed. Configure secrets and database access privately; never commit .env files or credentials.

Tech stack

  • Web app: Next.js, React, Tailwind CSS, TipTap
  • API: FastAPI, SQLAlchemy
  • Database: PostgreSQL-compatible configuration (including Supabase)
  • AI provider integration: MuAPI

Run locally

Requirements

  • Node.js and npm
  • Python 3.10 or newer
  • A PostgreSQL database for persistent storage (the app also has an in-memory development fallback)
  • A MuAPI API key for provider-backed chat, image generation, and uploads

1. Configure and start the API

cd server
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env

Edit server/.env and set MUAPI_API_KEY. For persistence, set DATABASE_URL (and DIRECT_URL if needed) to your PostgreSQL connection string. Keep this file private.

python run.py

The API runs at http://localhost:8000; its interactive docs are at http://localhost:8000/docs.

2. Start the web app

In another terminal:

cd client
npm ci
npm run dev

Open http://localhost:3000.

Configuration

The API reads these settings from server/.env:

Variable Purpose
PORT API port; defaults to 8000
HOST API bind address; defaults to 0.0.0.0
CORS_ORIGINS Comma-separated allowed browser origins
DATABASE_URL PostgreSQL connection string
DIRECT_URL Optional direct database connection string; takes precedence when set
DEFAULT_MODEL Default configured chat model
MUAPI_API_KEY Provider key for MuAPI-backed features

Contributing

Issues, bug reports, and pull requests are welcome. Please include steps to reproduce bugs and describe the behavior you expect. For larger changes, open an issue first so the approach can be discussed.

License

OpenSpaces is distributed under the MIT License.

Frequently asked questions

Is open-spaces free to use?

open-spaces is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does open-spaces do?

Free, open-source alternative to ChatGPT Spaces: a self-hostable AI workspace for shared pages and conversations.

What is open-spaces written in?

open-spaces is primarily written in JavaScript. Its source is publicly available at https://github.com/Anil-matcha/open-spaces, and it has 3,394 GitHub stars.