aboutsummaryrefslogtreecommitdiffstats
path: root/excalidraw-app/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'excalidraw-app/index.html')
-rw-r--r--excalidraw-app/index.html252
1 files changed, 252 insertions, 0 deletions
diff --git a/excalidraw-app/index.html b/excalidraw-app/index.html
new file mode 100644
index 0000000..0e7772f
--- /dev/null
+++ b/excalidraw-app/index.html
@@ -0,0 +1,252 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8" />
+ <title>kj-diagramming | Hand-drawn look & feel • Collaborative • Secure</title>
+ <meta
+ name="viewport"
+ content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover, shrink-to-fit=no"
+ />
+ <meta name="referrer" content="origin" />
+ <meta name="mobile-web-app-capable" content="yes" />
+ <meta name="theme-color" content="#121212" />
+
+ <!-- Primary Meta Tags -->
+ <meta
+ name="title"
+ content="kj-diagramming — Collaborative whiteboarding made easy"
+ />
+ <meta
+ name="description"
+ content="kj-diagramming is a virtual collaborative whiteboard tool (an excalidraw fork) that lets you easily sketch diagrams with a hand-drawn feel."
+ />
+ <meta name="image" content="/og-image-3.png" />
+
+ <!-- Open Graph / Facebook -->
+ <meta property="og:site_name" content="kj-diagramming" />
+ <meta property="og:type" content="website" />
+ <meta property="og:url" content="/" />
+ <meta
+ property="og:title"
+ content="kj-diagramming — Collaborative whiteboarding made easy"
+ />
+ <meta property="og:image:alt" content="kj-diagramming logo" />
+ <meta
+ property="og:description"
+ content="kj-diagramming is a virtual collaborative whiteboard tool (an excalidraw fork) that lets you easily sketch diagrams with a hand-drawn feel."
+ />
+ <meta property="og:image" content="/og-image-3.png" />
+
+ <!-- Twitter -->
+ <meta property="twitter:card" content="summary_large_image" />
+ <meta property="twitter:site" content="@kjdiagramming" />
+ <meta property="twitter:url" content="/" />
+ <meta
+ property="twitter:title"
+ content="kj-diagramming — Collaborative whiteboarding made easy"
+ />
+ <meta
+ property="twitter:description"
+ content="kj-diagramming is a virtual collaborative whiteboard tool (an excalidraw fork) that lets you easily sketch diagrams with a hand-drawn feel."
+ />
+ <meta
+ property="twitter:image"
+ content="/og-image-3.png"
+ />
+
+ <link rel="canonical" href="/" />
+
+ <!------------------------------------------------------------------------->
+ <!-- to minimize white flash on load when user has dark mode enabled -->
+ <script>
+ try {
+ function setTheme(theme) {
+ if (theme === "dark") {
+ document.documentElement.classList.add("dark");
+ } else {
+ document.documentElement.classList.remove("dark");
+ }
+ }
+
+ function getTheme() {
+ const theme = window.localStorage.getItem("kj-diagramming-theme");
+
+ if (theme && theme === "system") {
+ return window.matchMedia("(prefers-color-scheme: dark)").matches
+ ? "dark"
+ : "light";
+ } else {
+ return theme || "light";
+ }
+ }
+
+ setTheme(getTheme());
+ } catch (e) {
+ console.error("Error setting dark mode", e);
+ }
+ </script>
+ <style>
+ html.dark {
+ background-color: #121212;
+ color: #fff;
+ }
+ </style>
+
+ <!-- Warmup the connection for Google fonts -->
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
+
+ <!------------------------------------------------------------------------->
+ <% if (typeof PROD != 'undefined' && PROD == true) { %>
+ <script>
+ // Redirect plus users which have auto-redirect enabled.
+ //
+ // Redirect only the bare root path, so link/room/library urls are not
+ // redirected.
+ //
+ // Putting into index.html for best performance (can't redirect on server
+ // due to location.hash checks).
+ if (
+ window.location.pathname === "/" &&
+ !window.location.hash &&
+ !window.location.search &&
+ // if its present redirect
+ document.cookie.includes("excplus-autoredirect=true")
+ ) {
+ // disabled in this fork
+ }
+ </script>
+
+ <!-- Following placeholder is replaced during the build step -->
+ <!-- PLACEHOLDER:EXCALIDRAW_APP_FONTS -->
+
+ <!-- Register Assistant as the UI font, before the scene inits -->
+ <link
+ rel="stylesheet"
+ href="../packages/excalidraw/fonts/fonts.css"
+ type="text/css"
+ />
+
+ <% } else { %>
+ <script>
+ window.EXCALIDRAW_ASSET_PATH = window.origin;
+ </script>
+ <% } %>
+
+ <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
+ <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
+ <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png" />
+
+ <!-- kj-diagramming version -->
+ <meta name="version" content="{version}" />
+
+ <% if (typeof VITE_APP_DEV_DISABLE_LIVE_RELOAD != 'undefined' &&
+ VITE_APP_DEV_DISABLE_LIVE_RELOAD == true) { %>
+ <script>
+ {
+ const _WebSocket = window.WebSocket;
+ window.WebSocket = function (url) {
+ if (/ws:\/\/localhost:.+?\/sockjs-node/.test(url)) {
+ console.info(
+ "[!!!] Live reload is disabled via VITE_APP_DEV_DISABLE_LIVE_RELOAD [!!!]",
+ );
+ } else {
+ return new _WebSocket(url);
+ }
+ };
+ }
+ </script>
+ <% } %>
+ <script>
+ // setting this so that libraries installation reuses this window tab.
+ window.name = "_kj-diagramming";
+ </script>
+
+ <!-- FIXME: remove this when we update CRA (fix SW caching) -->
+ <style>
+ body,
+ html {
+ margin: 0;
+ -webkit-text-size-adjust: 100%;
+
+ width: 100%;
+ height: 100%;
+ overflow: hidden;
+ }
+
+ .visually-hidden {
+ position: absolute !important;
+ height: 1px;
+ width: 1px;
+ overflow: hidden;
+ clip: rect(1px, 1px, 1px, 1px);
+ white-space: nowrap;
+ user-select: none;
+ }
+
+ #root {
+ height: 100%;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ }
+
+ @media screen and (min-width: 1200px) {
+ #root {
+ -webkit-touch-callout: default;
+ -webkit-user-select: auto;
+ -khtml-user-select: auto;
+ -moz-user-select: auto;
+ -ms-user-select: auto;
+ user-select: auto;
+ }
+ }
+ </style>
+ </head>
+
+ <body>
+ <noscript> You need to enable JavaScript to run this app. </noscript>
+ <header>
+ <h1 class="visually-hidden">kj-diagramming</h1>
+ </header>
+ <div id="root"></div>
+ <script type="module" src="index.tsx"></script>
+ <% if (typeof PROD != 'undefined' && PROD == true) { %>
+ <!-- 100% privacy friendly analytics -->
+ <script>
+ // need to load this script dynamically bcs. of iframe embed tracking
+ var scriptEle = document.createElement("script");
+ scriptEle.setAttribute(
+ "src",
+ "https://scripts.simpleanalyticscdn.com/latest.js",
+ );
+ scriptEle.setAttribute("type", "text/javascript");
+ scriptEle.setAttribute("defer", true);
+ scriptEle.setAttribute("async", true);
+ // if iframe
+ if (window.self !== window.top) {
+ scriptEle.setAttribute("data-auto-collect", true);
+ }
+
+ document.body.appendChild(scriptEle);
+
+ // if iframe
+ if (window.self !== window.top) {
+ scriptEle.addEventListener("load", () => {
+ if (window.sa_pageview) {
+ window.window.sa_event(action, {
+ category: "iframe",
+ label: "embed",
+ value: window.location.pathname,
+ });
+ }
+ });
+ }
+ </script>
+ <!-- end LEGACY GOOGLE ANALYTICS -->
+ <% } %>
+ </body>
+</html>