Skip to content
/ d1-manager Public template

D1 Manager is a web UI and API for Cloudflare D1, a serverless SQL database. It provides a web interface for managing databases, tables, and records, as well as an AI assistant to help you write query in natural language.

License

Notifications You must be signed in to change notification settings

JacobLinCool/d1-manager

Repository files navigation

D1 Manager

D1 Manager is a web UI and API for Cloudflare D1, a serverless SQL database. It provides a user-friendly interface for managing databases, tables, and records, as well as an API for performing operations programmatically. D1 Manager simplifies database management, enabling users to focus on their data.

semantic-query-demo

Features

  • Multiple D1 Databases
  • List all tables in a database
  • Show table schema
  • Run SQL queries
  • Run Semantic Queries (OpenAI API or Cloudflare AI Worker)
  • Edit table data through UI
  • I18n support (English, Chinese, Spanish, Japanese) add more (Online Editor)
  • API support (see routes/api for details)

Setup

  1. Fork this repo
  2. Setup a Cloudflare Pages with the forked repo
    • Select the SveltKit framework preset.
    • Build command: npm run build
    • Build output directory: .svelte-kit/cloudflare
  3. Use Cloudflare Access to protect the your site
    • The default access rules only restrict access to preview pages, so make sure to add other urls you want protected.
  4. Bind databases to DB_* environment variables

bind-d1

Note: You can bind multiple databases to the manager. In theis example, DB will be default in the UI, and DB_test will be test.

Environment Variables

Some plugins (e.g. Semantic Query) require additional environment variables to be set.

set-env-var

Also, there are some configuration options that can be set through environment variables.

  • SHOW_INTERNAL_TABLES: Show internal tables (splite_* and d1_*) in the UI.

Semantic Query

You can use OpenAI API or Cloudflare AI Worker to run Semantic Query.

OpenAI API:

  • OPENAI_API_KEY: OpenAI API key for Semantic Query.
  • OPENAI_API_URL: You may use this with Cloudflare AI Gateway to proxy requests to OpenAI API.
  • OPENAI_MODEL: OpenAI API model for Semantic Query. Default to gpt-3.5-turbo-1106.

Cloudflare AI Worker:

  • AI: Bind a Cloudflare AI Worker to this variable.
  • CFAI_MODEL: Cloudflare AI Worker model for Semantic Query. Default to @cf/mistral/mistral-7b-instruct-v0.1.

Screenshots

tables

run-query

table-browser

add-record

semantic-query

Semantic Query uses OpenAI GPT-3.5 Turbo to translate natural language queries into SQL.

About

D1 Manager is a web UI and API for Cloudflare D1, a serverless SQL database. It provides a web interface for managing databases, tables, and records, as well as an AI assistant to help you write query in natural language.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages