Mutsynchub / app /engine /json_utils.py
shaliz-kong
Initial commit: self-hosted Redis, DuckDB, Analytics Engine
98a466d
raw
history blame contribute delete
537 Bytes
# analytics-service/app/engine/json_utils.py
import json
from datetime import datetime, date
import numpy as np
class CustomJSONEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, (datetime, date)):
return obj.isoformat()
if isinstance(obj, (np.integer, np.int64)):
return int(obj)
if isinstance(obj, (np.floating, np.float64)):
return float(obj)
if isinstance(obj, np.ndarray):
return obj.tolist()
return super().default(obj)