Skip to main content

Structured AI system with emebeddable chatbot

Project description

Darkglass

Lint Test Release PyPI

Darkglass is a lightweight, embeddable chatbot designed for small colleges, providing prospective students with automated responses while logging interactions for administrative review.

Design

The system is built on a minimalist architecture, utilizing FastAPI and SQLite to provide zero-configuration deployment on lightweight Linux VMs without the overhead of external databases.

Configuration

Add a [gemini] section with your API key and optional model (defaults to gemini-3.1-flash-lite-preview):

[gemini]
api_key = "mysecretkey"
model = "gemini-3.1-flash-lite-preview"

You can also include a [context] section to provide a default prompt for the agent:

[context]
prompt = "You are a helpful agent for Acme College."

To enable a secure administrative dashboard, add a [google] section with a client_id to use for authentication.

[google]
client_id = "your-google-client-id.apps.googleusercontent.com"

To restrict dashboard access to specific addresses, add a [roles] section with an admins list. When admins is non-empty, only addresses listed will be allowed access.

[roles]
admins = ["alice@example.com", "bob@example.com"]

Demo

  1. Install the package
  2. Set configuration
  3. Run make serve and view http://localhost:8000/static/index.html

Add to arbitrary site via dev tools

let darkglass = document.createElement('script');
darkglass.src = 'http://localhost:8000/static/webchat.js';
darkglass.defer = true;
document.body.appendChild(darkglass);

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

darkglass-1.0.0.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

darkglass-1.0.0-py2.py3-none-any.whl (5.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file darkglass-1.0.0.tar.gz.

File metadata

  • Download URL: darkglass-1.0.0.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for darkglass-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e4c7ecb5bf9008e7f95cdf6468cdd1b3719f9f1a883bdaa5b58d2ef139ea9886
MD5 9ac17190c38d1843d96ac3818ebee492
BLAKE2b-256 12c52a4d9b885694a5b9f3eba155bf5e978e1725273c772999e34dfd7931ba42

See more details on using hashes here.

File details

Details for the file darkglass-1.0.0-py2.py3-none-any.whl.

File metadata

  • Download URL: darkglass-1.0.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for darkglass-1.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3fc6f90f35589e4535125621e3131f7f8121073b069c979f47518452e7b91827
MD5 c0fc77697eef99a6635a91f6446d7509
BLAKE2b-256 a46910745877aa0f0e260e83b179b9ef38952b1d988132defd93509e6a899d3c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page