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.28.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.28-py3-none-any.whl (7.2 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vital_graph-0.0.28.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.28.tar.gz
Algorithm Hash digest
SHA256 c27444bc9e50b168d45488fb1e56ac7c1d4ac552d187c799da87ac9d633ecb90
MD5 49977081858713096a5d9064f8c6f022
BLAKE2b-256 98a748a78fb58c6a7d1bea7c2d7e7cf1d126e73ce4b00adc1ca5cc572fee1cea

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vital_graph-0.0.28-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.28-py3-none-any.whl
Algorithm Hash digest
SHA256 c072d0989c4e15e6964f5bffecce11044a5f765e93c43f132f4291d77920ff0e
MD5 2fc2ea9960f7807c8c586957d9f99c72
BLAKE2b-256 a342e7cf15a58d52facbc82f13fbc2850178db500be62b2be6ef9c71e2845426

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