01: Initial commit with neo4j

This commit is contained in:
exolonConfidental
2026-02-02 23:45:28 +05:30
commit 61162e01fb
15 changed files with 709 additions and 0 deletions

12
app/core/config.py Normal file
View File

@@ -0,0 +1,12 @@
from pydantic_settings import BaseSettings
class Settings(BaseSettings):
NEO4J_URI: str
NEO4J_USER: str
NEO4J_PASSWORD: str
class Config:
env_file = ".env"
settings = Settings()

View File

@@ -0,0 +1,43 @@
import logging
from logging.config import dictConfig
LOGGING_CONFIG = {
"version": 1,
"disable_existing_loggers": False,
"formatters": {
"default": {
"format": "[%(asctime)s] %(levelname)s | %(name)s | %(message)s",
"datefmt": "%Y-%m-%d %H:%M:%S"
},
},
"handlers": {
"console": {
"class": "logging.StreamHandler",
"formatter": "default",
},
},
"root": {
"level": "INFO",
"handlers": ["console"]
},
"loggers": {
"uvicorn.error": {
"level": "INFO"
},
"uvicorn.access": {
"level": "INFO"
},
"neo4j": {
"level": "WARNING"
}
}
}
def setup_logging():
dictConfig(LOGGING_CONFIG)

10
app/core/neo4j.py Normal file
View File

@@ -0,0 +1,10 @@
from neo4j import GraphDatabase
from app.core.config import settings
driver = GraphDatabase.driver(
settings.NEO4J_URI,
auth=(settings.NEO4J_USER, settings.NEO4J_PASSWORD)
)
def get_driver():
return driver