![Create React App Officially Deprecated Amid React 19 Compatibility Issues](https://cdn.sanity.io/images/cgdhsj6q/production/04fa08cf844d798abc0e1a6391c129363cc7e2ab-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Create React App Officially Deprecated Amid React 19 Compatibility Issues
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
Zag-Web serves the graphing frontend.
Start the server:
require('zag')(
{ host: "address:port"
, db: "postgres://postgres:1234@localhost/postgres"
, env: "dev" or "prod"
, daemons: ["address:port", ...]
, defaultPath: "/graph/your_favorite_metric"
, backend: require('zag-backend-pg')
// This directory needs to be readable and writable by the process.
, public: "/tmp/metrics-public"
}).on("error", function(err) {
// An error occurred.
}).on("ready", function() {
// The server is listening.
})
?
for keyboard shortcuts.admin.js
script to create and manage tag categories.web/bin/admin.js
.GET /api/metrics/:mkey
Get historical (not live) metrics data for a :mkey
.
start
- Integer timestamp, requiredend
- Integer timestamp, requireddelta
- Integer milliseconds.
The downsample interval (e.g. 60000, 300000, ...) optional.
Defaults to 1 minute (60000).The response JSON will depending on whether the data is a histogram, counter, heat map, etc.
Histogram:
[ { "ts": Integer
, "count": Number
, "mean": Number
, "p10": Number
, ...
} or { "ts": Integer, "empty": true }
, ...
]
Counter:
[ { "ts": Integer
, "count": Number
} or { "ts": Integer, "empty": true }
, ...
]
Heat map: (buckets are sorted)
[ [timestamp, bucketA, frequencyA, bucketB, frequencyB, ...]
, ...
]
GET /api/keys
Get a sorted list of the top-level metrics keys.
[ { "key": String
, "hasChildren": Boolean
, "type": "histogram" | "counter" | "none"
}
, ...
]
"none"
is the type of the key A
when data is sent to A>B
,
because there is no actual metrics data associated with it.
GET /api/keys/:parents
Get the children of 1 or more parent metrics keys.
:parents
is a comma-separated list of metrics keys to look up.
Returns lists of the child keys keyed by their parents.
{ "parentkey1":
[ { "key": String
, "hasChildren": Boolean
, "type": "histogram" | "counter" | "none"
}
, ...
]
, ...
}
DELETE /api/keys/:mkey
Delete a metrics key and all of its children. The associated metrics data is not deleted.
204
GET /api/filter
Get a list of metrics keys matching a query.
q
- String, the query. requiredlimit
- Integer, max results optional[ { "key": String
, "hasChildren": Boolean
, "type": "histogram" | "counter" | "none"
}
, ...
]
GET /api/allkeys
Get a sorted list of all metrics keys (recursive).
[ "key1"
, "key2"
, "key2|bar"
, "key2|foo"
, "key3"
, ...
]
GET /api/tags
Get a list of tags in a time range, sorted by ts
.
begin
- Integer timestamp, requiredend
- Integer timestamp, required[ { "id": String, unique tag identifier
, "ts": Integer, position timestamp
, "label": String
, "color": String, hex e.g. "#f00"
}
, ...
]
POST /api/tags
Create a tag.
ts
- Integer timestamp, requiredcolor
- String hex color, requiredlabel
- String tag label, requiredid
- String, optional. If id
isn't passed, it will be assigned.DELETE /api/tags/:id
Delete a tag by :id
.
GET /api/tagtypes
List all tag types.
[ { "color": String
, "name": String
, "id": String
}
, ...
]
POST /api/tagtypes
Create a tag type.
color
- String, e.g. "#ff0000" requiredname
- String, a short description of the category requiredDELETE /api/tagtypes/:id
Delete a tag type by :id
.
The tag type's ID can by found via GET /api/tagtypes
.
GET /api/dashboards
Get a sorted list of all dashboard IDs.
[ "dashboard1"
, "dashboard1>subdashboard"
, "dashboard2"
, ...
]
GET /api/dashboards/:id
Get a dashboard by :id
.
{ "id": String :id
, "graphs":
{ "<graph id 1>":
{ "id": "<graph id 1>"
, "key": [String metrics key]
, "title" String, optional
, "subkey" String, optional
, "renderer" String, optional
, "histkeys" [String], optional
}
, ...
}
}
POST /api/dashboards/:id
Replace the dashboard.
The post data should be {"graphs": {all the graphs}}
.
PATCH /api/dashboards/:id
To rename a dashboard, the request body should be {"id": "<new id>"}
.
To edit a dashboard's graphs, the request body should be {"graphs": {updated graphs by graph id}}
.
Graphs that are not included will be left unchanged, not removed.
DELETE /api/dashboards/:id
Delete the dashboard by :id
.
FAQs
graph metrics
The npm package zag receives a total of 6 weekly downloads. As such, zag popularity was classified as not popular.
We found that zag demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.