mirror of
https://github.com/excalidraw/excalidraw-analytics.git
synced 2026-05-17 13:30:39 +00:00
128 lines
4.0 KiB
HTML
128 lines
4.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<!-- General tags -->
|
|
<meta
|
|
name="description"
|
|
content="Relatively stacked versions of Excalidraw. Updated every hour."
|
|
/>
|
|
<meta name="image" content="og-image.png" />
|
|
|
|
<!-- OpenGraph tags -->
|
|
<meta property="og:url" content="https://stats.excalidraw.com" />
|
|
<meta property="og:site_name" content="Excalidraw" />
|
|
<meta property="og:type" content="website" />
|
|
<meta property="og:title" name="twitter:title" content="Excalidraw Stats" />
|
|
<meta
|
|
property="og:description"
|
|
name="twitter:description"
|
|
content="Relatively stacked versions of Excalidraw. Updated every hour."
|
|
/>
|
|
|
|
<!-- OG tags require an absolute url for images -->
|
|
<meta
|
|
property="og:image"
|
|
name="twitter:image"
|
|
content="https://stats.excalidraw.com/og-image.png"
|
|
/>
|
|
<meta
|
|
property="og:image:secure_url"
|
|
name="twitter:image"
|
|
content="https://stats.excalidraw.com/og-image.png"
|
|
/>
|
|
<meta property="og:image:width" content="1280" />
|
|
<meta property="og:image:height" content="669" />
|
|
<meta property="og:image:alt" content="Excalidraw logo with byline." />
|
|
|
|
<!-- Twitter Card tags -->
|
|
<meta name="twitter:card" content="summary_large_image" />
|
|
|
|
<link
|
|
rel="stylesheet"
|
|
href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css"
|
|
/>
|
|
<title>Excalidraw Stats</title>
|
|
<link rel="stylesheet" href="/static/style.css" />
|
|
<script
|
|
async
|
|
src="https://www.googletagmanager.com/gtag/js?id=UA-387204-13"
|
|
></script>
|
|
<script>
|
|
window.dataLayer = window.dataLayer || [];
|
|
function gtag() {
|
|
dataLayer.push(arguments);
|
|
}
|
|
gtag("js", new Date());
|
|
gtag("config", "UA-387204-13");
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<h1 class="display-2">Excalidraw Stats</h1>
|
|
<p class="lead">Relatively stacked versions of Excalidraw.</p>
|
|
<p class="text-muted small">Updated every hour.</p>
|
|
<div id="version-chart"></div>
|
|
<h2>Production releases</h2>
|
|
<p class="lead">
|
|
All pull requests are being squashed and then deployed to production.
|
|
</p>
|
|
<div class="table-responsive-lg">
|
|
<table class="table table-sm table-hover table-bordered">
|
|
<thead>
|
|
{ version_head }
|
|
</thead>
|
|
<tbody>
|
|
{ version_body }
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<footer>
|
|
© 2021 <a href="https://excalidraw.com">Excalidraw</a> •
|
|
<a href="https://github.com/excalidraw/stats">Source Code</a> •
|
|
<a href="https://github.com/excalidraw/excalidraw/commits/master"
|
|
>Production Builds</a
|
|
>
|
|
•
|
|
<a href="https://status.excalidraw.com">Status</a>
|
|
</footer>
|
|
</div>
|
|
|
|
<script
|
|
type="text/javascript"
|
|
src="https://www.gstatic.com/charts/loader.js"
|
|
></script>
|
|
<script type="text/javascript" src="/static/open-color.js"></script>
|
|
<script>
|
|
const drawVersionChart = () => {
|
|
const data = google.visualization.arrayToDataTable({ data });
|
|
const options = {
|
|
chartArea: { width: "100%", height: "80%" },
|
|
isStacked: "relative",
|
|
legend: "top",
|
|
colors: [
|
|
oc.violet[5],
|
|
oc.indigo[5],
|
|
oc.blue[5],
|
|
oc.cyan[5],
|
|
oc.teal[5],
|
|
oc.green[5],
|
|
oc.lime[5],
|
|
oc.yellow[5],
|
|
oc.orange[5],
|
|
oc.red[5],
|
|
oc.grape[5],
|
|
],
|
|
};
|
|
const chart = new google.visualization.AreaChart(
|
|
document.getElementById("version-chart"),
|
|
);
|
|
chart.draw(data, options);
|
|
};
|
|
google.charts.load("current", { packages: ["corechart"] });
|
|
google.charts.setOnLoadCallback(drawVersionChart);
|
|
</script>
|
|
</body>
|
|
</html>
|