Skip to main content

VitalGraph

Project description

VitalGraph

VitalGraph is a high-performance knowledge graph database and client library built on PostgreSQL with full SPARQL 1.1 support.

Installation

VitalGraph offers flexible installation options depending on your use case:

Client Only (Default - Lightweight)

For applications that only need to connect to existing VitalGraph servers:

pip install vital-graph[client]

This installs dependencies for the VitalGraph client library:

  • Basic RDF processing (rdflib, PyLD)
  • Advanced graph processing (pyoxigraph) - now included by default
  • AI capabilities (openai) - now included by default
  • HTTP client (requests)
  • Configuration management (PyYAML, pydantic)
  • CLI tools (click-repl, tabulate)

Server Installation

For running a complete VitalGraph server with database capabilities:

pip install vital-graph[server]

This includes all server dependencies:

  • FastAPI web framework and uvicorn server
  • PostgreSQL drivers (psycopg, asyncpg)
  • Database ORM (SQLAlchemy, alembic)
  • Vector database support (pgvector)
  • Authentication (PyJWT, email-validator)
  • TiDB integration (pytidb[models], pytidb)

Development Setup

For development with all tools:

pip install vital-graph[dev]

Includes pytest, black, mypy, and other development tools.

Full Installation

For everything:

pip install vital-graph[all]

Custom Combinations

You can combine multiple extras:

pip install vital-graph[client,dev]
pip install vital-graph[server,test,docs]

Quick Start

Client Usage

from vitalgraph.client import VitalGraphClient

# Initialize client with config file
client = VitalGraphClient("path/to/config.yaml")

# Connect to server
await client.open()

# Execute SPARQL queries
results = await client.sparql.query("SELECT ?s ?p ?o WHERE { ?s ?p ?o } LIMIT 10")

# Close connection
await client.close()

Server Usage

# Start VitalGraph server
vitalgraphdb

# Or with custom config
vitalgraphdb --config /path/to/vitalgraphdb-config.yaml

Features

  • Full SPARQL 1.1 Support: SELECT, CONSTRUCT, ASK, DESCRIBE, UPDATE operations
  • High Performance: PostgreSQL-backed with optimized query translation
  • RESTful API: Complete REST API for all operations
  • Client Library: Python client with authentication and session management
  • Docker Support: Ready-to-use Docker containers
  • Knowledge Graph Types: Built-in support for VitalSigns ontologies
  • Real-time Updates: WebSocket support for live data updates

Architecture

VitalGraph consists of:

  • Client Library (vitalgraph.client): Lightweight REST API client
  • Server (vitalgraph.server): FastAPI-based graph database server
  • Database Layer (vitalgraph.db): PostgreSQL integration with SPARQL translation
  • Admin Tools (vitalgraphadmin): Database administration utilities

Documentation

License

Apache License 2.0

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

vital_graph-0.0.29.tar.gz (6.9 MB view details)

Uploaded Source

Built Distribution

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

vital_graph-0.0.29-py3-none-any.whl (7.2 MB view details)

Uploaded Python 3

File details

Details for the file vital_graph-0.0.29.tar.gz.

File metadata

  • Download URL: vital_graph-0.0.29.tar.gz
  • Upload date:
  • Size: 6.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.11

File hashes

Hashes for vital_graph-0.0.29.tar.gz
Algorithm Hash digest
SHA256 40d5139f85358391e58b794ae94c3aec14bd70b772b46bac7f70a69b9fbd8ea2
MD5 81f3342fa624167d6ae7af5445ba0b82
BLAKE2b-256 8a373af8081cb27a42240546c9105e7222d45cd384f323fea22cf72f649b8d9f

See more details on using hashes here.

File details

Details for the file vital_graph-0.0.29-py3-none-any.whl.

File metadata

  • Download URL: vital_graph-0.0.29-py3-none-any.whl
  • Upload date:
  • Size: 7.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.11

File hashes

Hashes for vital_graph-0.0.29-py3-none-any.whl
Algorithm Hash digest
SHA256 663aaf8e2a4f6c16fd7540b8066b0d40cfcec3a7f5f30cb061fa527c071fe9cb
MD5 56bf5bcc1936c3382cf107cb59116d22
BLAKE2b-256 aac44ac7bbe19ab6de1fd01496204590edab23feec814dfab381a78e349d8b9d

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