Repository navigation
π STEMgraph API - Version 2.0
Derived from v2.0.3
π₯ Major Enhancements & New Features
This release introduces significant refactoring and enhanced functionality for improved reliability, usability, and performance. The API is now running at:
π STEMgraph API Documentation
π Key Additions & Changes
β New Dependency Resolution Endpoints
GET /builds_on_list/{uuid}- Returns all UUIDs a node depends on as a flat list.GET /builds_on_tree/{uuid}- Returns dependency relationships as a nested tree.
β Typer-based CLI Wrapper for API Execution
- Introduced
STEMgraph_API.py, which wraps FastAPI execution using Typer. - Added
--testflag to validate Neo4j connectivity before launching the API.
β Improved API Startup Reliability
- Health check now runs on startup, retrying until Neo4j is available.
- API will not start until Neo4j is successfully connected.
β Docker & Deployment Enhancements
- Dockerfile now runs the health check (
--test) before launching the API to ensure stable deployments. - Updated
docker-compose.ymlto uselatesttag for better version management.
β Improved Logging & Debugging
- Enhanced logging for API startup, health checks, and database errors.
- Standardized logs using Uvicorn for consistency across deployments.
π How to Upgrade
If using Docker:
docker pull stemgraph_api:latest
docker stack deploy --compose-file docker-compose.yml stemgraph_stackIf running locally:
git pull origin master
python app/STEMgraph_API.py --test # Verify Neo4j connection
python app/STEMgraph_API.py # Start the APIπ’ Discussion & Contribution
π¬ Share your feedback in our GitHub Discussions.
π Contributions are welcome! Contact sboekelmann@ep1.rub.de for more details.
π― Upcoming Features
β
Graph retrieval in multiple formats.
β
Shortest path computation between nodes.
β
Auto-generated PDF documentation for node metadata.
This version represents a major step forward in API stability and usability. Thanks for using STEMgraph! π