web: move out of public for bundling
This commit is contained in:
parent
00349f1b85
commit
5b55487d0b
19 changed files with 328 additions and 1 deletions
57
Web/css/styles.src.css
Normal file
57
Web/css/styles.src.css
Normal file
|
@ -0,0 +1,57 @@
|
|||
@import "./franken-core.css";
|
||||
/* @import "./franken-utilities.css"; */
|
||||
@import "tailwindcss";
|
||||
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Geist';
|
||||
font-style: normal;
|
||||
font-weight: 100 900;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/geist/v1/gyByhwUxId8gMEwSGFWNPoTcZY7pVQ.woff2) format('woff2');
|
||||
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Geist';
|
||||
font-style: normal;
|
||||
font-weight: 100 900;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/geist/v1/gyByhwUxId8gMEwcGFWNPoTcZY4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Geist Mono';
|
||||
font-style: normal;
|
||||
font-weight: 100 900;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/geistmono/v1/or3nQ6H-1_WfwkMZI_qYFrkdmhHijks9bNn0.woff2) format('woff2');
|
||||
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Geist Mono';
|
||||
font-style: normal;
|
||||
font-weight: 100 900;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/geistmono/v1/or3nQ6H-1_WfwkMZI_qYFrcdmhHijks9bA.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
|
||||
|
||||
@theme {
|
||||
--font-sans: "Geist", sans-serif;
|
||||
--font-mono: "'Geist Mono'", monospace;
|
||||
}
|
||||
:root {
|
||||
font-family: Geist, sans-serif;
|
||||
font-feature-settings: "liga" 1, "calt" 1; /* fix for Chrome */
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.uk-subnav > * > :first-child {
|
||||
padding-left: 0.5rem !important;
|
||||
padding-right: 0.5rem !important;
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
224
Web/index.html
Normal file
224
Web/index.html
Normal file
|
@ -0,0 +1,224 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Echoes Behind Closed Doors</title>
|
||||
|
||||
<!-- favicons -->
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="180x180"
|
||||
href="/png/apple-touch-icon.png"
|
||||
/>
|
||||
<link rel="icon" type="image/x-icon" href="/ico/favicon.ico" />
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/png"
|
||||
sizes="32x32"
|
||||
href="/png/favicon-32x32.png"
|
||||
/>
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/png"
|
||||
sizes="16x16"
|
||||
href="/png/favicon-16x16.png"
|
||||
/>
|
||||
<link rel="manifest" href="/site.webmanifest" />
|
||||
|
||||
<!-- TODO: social share -->
|
||||
|
||||
<!-- franken-ui -->
|
||||
<link rel="stylesheet" href="/css/styles.css" />
|
||||
<script
|
||||
type="module"
|
||||
src="/js/franken-ui.js"
|
||||
>
|
||||
</head>
|
||||
<body class="bg-background text-foreground">
|
||||
<main>
|
||||
<section
|
||||
id="landing-hero"
|
||||
class="uk-inline h-[90vh] h-[90svh] overflow-hidden"
|
||||
>
|
||||
<!-- hero image -->
|
||||
<img
|
||||
class="!h-[90vh] !h-[90svh] w-screen object-cover"
|
||||
src="https://files.catbox.moe/o25s1k.JPG"
|
||||
alt=""
|
||||
/>
|
||||
<!-- <video
|
||||
class="!h-[90vh] !h-[90svh] w-screen object-cover"
|
||||
src="http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4"
|
||||
loop
|
||||
muted
|
||||
playsinline
|
||||
></video> -->
|
||||
|
||||
<!-- navbar -->
|
||||
<header
|
||||
class="uk-position-top !uk-position-z-index p-4 flex justify-between !bg-[hsl(var(--muted))]/75 !backdrop-blur-md text-muted-foreground"
|
||||
data-uk-sticky="position:top"
|
||||
>
|
||||
<div class="flex flex-row gap-2">
|
||||
<img src="/png/logo-icon.png" alt="wirm logo" class="!h-[2.5rem]" />
|
||||
<img
|
||||
src="/png/logo-wordmark-blue.png"
|
||||
alt="wirm wordmark"
|
||||
class="!h-[2.5rem]"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<nav class="flex">
|
||||
<ul class="uk-subnav uk-subnav-primary">
|
||||
<li class="uk-active"><a href="/">About</a></li>
|
||||
<li>
|
||||
<a href>
|
||||
<span class="mr-2">Account</span>
|
||||
<uk-icon icon="chevron-down"></uk-icon>
|
||||
</a>
|
||||
<div data-uk-dropdown="mode: click">
|
||||
<ul class="uk-dropdown-nav uk-nav">
|
||||
<li id="nav-auth-logIn">
|
||||
<a href="/login">Log In</a>
|
||||
</li>
|
||||
<li id="nav-auth-signUp">
|
||||
<a href="/signup">Sign Up</a>
|
||||
</li>
|
||||
<li id="nav-auth-logOut">
|
||||
<a href="/profile?logOut=true">Log Out</a>
|
||||
</li>
|
||||
<li id="nav-auth-profile">
|
||||
<a href="/profile">Profile</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
<li><a href="/booth">Manage Booth</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<!-- hero left text: game name -->
|
||||
<div
|
||||
class="uk-position-bottom-left uk-position-md md:uk-position-lg md:w-[30vw] text-[hsl(var(--background))] dark:text-[hsl(var(--foreground))]"
|
||||
>
|
||||
<h1 class="uk-h1 !text-6xl">Echoes Behind Closed Doors</h1>
|
||||
<p class="uk-text-lead mt-4">Potential Subtitle (TODO)</p>
|
||||
</div>
|
||||
|
||||
<!-- hero right text: registration qr code -->
|
||||
<figure
|
||||
class="uk-position-bottom-right uk-position-md md:uk-position-lg max-md:hidden w-[25vw] w-[25svw] h-[31vw] h-[31svw] rounded-2xl bg-[hsl(var(--foreground))]/70 text-[hsl(var(--background))] dark:bg-[hsl(var(--background))]/60 dark:text-[hsl(var(--foreground))] !backdrop-blur-lg flex flex-col justify-center items-center text-center p-4"
|
||||
>
|
||||
<div
|
||||
id="hero-svg"
|
||||
class="uk-placeholder min-w-fit h-auto aspect-square !rounded-md overflow-hidden"
|
||||
>
|
||||
<div class="uk-position-center" data-uk-spinner></div>
|
||||
</div>
|
||||
|
||||
<figcaption class="uk-paragraph fit-content">
|
||||
<span class="font-bold text-xl">Scan to Register</span>
|
||||
<br />
|
||||
or, scroll down for more info
|
||||
</figcaption>
|
||||
</figure>
|
||||
</section>
|
||||
|
||||
<section class="uk-container my-20">
|
||||
<h2 class="uk-h2">Title</h2>
|
||||
|
||||
<p class="uk-text-lead mt-4">Subtitle</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Blowy red vixens fight for
|
||||
<a class="uk-link" href="#">a quick jump.</a>
|
||||
</p>
|
||||
|
||||
<blockquote class="uk-blockquote">
|
||||
"Sphinx of black quartz, judge my vow!"
|
||||
</blockquote>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
|
||||
<p class="uk-paragraph">
|
||||
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ipsam qui,
|
||||
eligendi similique aspernatur est reiciendis iusto sunt laudantium
|
||||
repudiandae quos blanditiis. Asperiores aspernatur, minus quae
|
||||
inventore laborum voluptas fugit rem.
|
||||
</p>
|
||||
</section>
|
||||
</main>
|
||||
|
||||
<script type="application/javascript" src="/js/landing-qrcode.js"></script>
|
||||
</body>
|
||||
</html>
|
17
Web/js/firebase.js
Normal file
17
Web/js/firebase.js
Normal file
|
@ -0,0 +1,17 @@
|
|||
import { initializeApp } from "firebase/app";
|
||||
import { getDatabase } from "firebase/database";
|
||||
import { getAuth } from "firebase/auth";
|
||||
|
||||
const firebaseConfig = {
|
||||
apiKey: "AIzaSyARm-eSymd2Q3AyxJXiAiiUzsXGmc6T72I",
|
||||
authDomain: "echoesbehindcloseddoors.firebaseapp.com",
|
||||
databaseURL: "https://echoesbehindcloseddoors-default-rtdb.asia-southeast1.firebasedatabase.app",
|
||||
projectId: "echoesbehindcloseddoors",
|
||||
storageBucket: "echoesbehindcloseddoors.firebasestorage.app",
|
||||
messagingSenderId: "905742343227",
|
||||
appId: "1:905742343227:web:19d04f77371ef1952c901e"
|
||||
};
|
||||
|
||||
export const app = initializeApp(firebaseConfig);
|
||||
export const auth = getAuth(app);
|
||||
export const database = getDatabase(app);
|
23
Web/js/franken-ui.js
Normal file
23
Web/js/franken-ui.js
Normal file
|
@ -0,0 +1,23 @@
|
|||
import "franken-ui/js/core.iife";
|
||||
import "franken-ui/js/icon.iife";
|
||||
|
||||
const htmlElement = document.documentElement;
|
||||
|
||||
const __FRANKEN__ = JSON.parse(
|
||||
localStorage.getItem("__FRANKEN__") || "{}"
|
||||
);
|
||||
|
||||
if (
|
||||
__FRANKEN__.mode === "dark" ||
|
||||
(!__FRANKEN__.mode &&
|
||||
window.matchMedia("(prefers-color-scheme: dark)").matches)
|
||||
) {
|
||||
htmlElement.classList.add("dark");
|
||||
} else {
|
||||
htmlElement.classList.remove("dark");
|
||||
}
|
||||
|
||||
htmlElement.classList.add(__FRANKEN__.theme || "uk-theme-blue");
|
||||
htmlElement.classList.add(__FRANKEN__.radii || "uk-radii-md");
|
||||
htmlElement.classList.add(__FRANKEN__.shadows || "uk-shadows-sm");
|
||||
htmlElement.classList.add(__FRANKEN__.font || "uk-font-sm");
|
|
@ -21,6 +21,8 @@
|
|||
* Software.
|
||||
*/
|
||||
|
||||
import { qrcodegen } from "./nayuki-qrcodegen-v1.8.0.js";
|
||||
|
||||
function toSvgString(qr, border, lightColor, darkColor) {
|
||||
if (border < 0) throw new RangeError("Border must be non-negative");
|
||||
let parts = [];
|
||||
|
@ -48,3 +50,7 @@ function generateQrCode(text) {
|
|||
"#000000" // dark
|
||||
);
|
||||
}
|
||||
|
||||
const svg = generateQrCode(window.location.origin + "/signup.html");
|
||||
document.getElementById("hero-svg").innerHTML = svg;
|
||||
document.getElementById("hero-svg").classList.remove("uk-placeholder");
|
|
@ -21,7 +21,7 @@
|
|||
* Software.
|
||||
*/
|
||||
"use strict";
|
||||
var qrcodegen;
|
||||
export var qrcodegen;
|
||||
(function (qrcodegen) {
|
||||
/*---- QR Code symbol class ----*/
|
||||
/*
|
Loading…
Add table
Reference in a new issue