build: remove deno

This commit is contained in:
b12f 2024-08-24 21:37:56 +02:00
parent d6302f9e39
commit b977e92f28
Signed by: b12f
GPG key ID: 729956E1124F8F26
18 changed files with 217 additions and 1487 deletions

View file

@ -1,5 +0,0 @@
tags
.direnv
_site
docker-compose.yml
Dockerfile

4
.envrc
View file

@ -1,4 +0,0 @@
# reload when these files change
export TRITON_DONT_SOURCE_PROFILE=1
watch_file flake.nix
use_flake

View file

@ -1,24 +0,0 @@
import lume from "lume/mod.ts";
import sass from "lume/plugins/sass.ts";
import date from "lume/plugins/date.ts";
import jsx from "lume/plugins/jsx.ts";
import terser from "lume/plugins/terser.ts";
import postcss from "lume/plugins/postcss.ts";
const site = lume();
site.use(sass({
includes: ['_includes'],
}));
site.use(date());
site.use(jsx());
site.use(terser());
site.use(postcss());
site.copy("assets");
site.loadAssets([ ".js", ".mjs" ]);
site.ignore("README.md", "CHANGELOG.md", "LICENSE.md");
export default site;

View file

@ -1 +0,0 @@
'?v=1'

View file

@ -1,39 +0,0 @@
import { title as titleFilter } from '../filters.ts';
export default ({
title,
theme,
extraStylesheets,
extraScripts,
cacheBust,
}) => <head>
<meta charSet="utf-8" />
<title>mezza.biz</title>
<meta name="theme-color" content="{{ theme.color }}" id="theme-color" />
<meta name="description" content="Invest today" />
<meta id="viewport" name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" type="text/css" href={`/styles.css${cacheBust}`} media="all" />
<>
{(extraStylesheets || [])
.map(extraStylesheet => <link
rel="stylesheet"
type="text/css"
href={`${extraStylesheet}${cacheBust}`}
media="all"
key={extraStylesheet}
/>)}
</>
<>
{(extraScripts || [])
.map(extraScript => <script
defer
type="module"
src={`${extraScript}${cacheBust}`}
key={extraScript}
></script>)}
</>
</head>;

View file

@ -1,26 +0,0 @@
import { md } from '../../filters.ts';
import Head from '../Head.tsx';
export default ({
title,
content,
theme,
extraStylesheets,
extraScripts,
cacheBust,
showHakkenDates,
}) => <>
<html>
<Head
title={title}
theme={theme}
extraStylesheets={extraStylesheets}
cacheBust={cacheBust}
extraScripts={[...(extraScripts || []), '/scripts/copy-code.js']}
/>
<body className="ps-main">
</body>
</html>
</>;

View file

@ -1,44 +0,0 @@
import Head from '../Head.tsx';
export default ({
title,
theme,
extraStylesheets,
extraScripts,
cacheBust,
}) => <>
<html>
<Head
title={title}
theme={theme}
extraStylesheets={extraStylesheets}
cacheBust={cacheBust}
extraScripts={extraScripts}
/>
<body>
<video
class="video"
src="/assets/money-rains.mp4"
autoplay="true"
loop="true"
muted="true"
></video>
<div id="charts"></div>
<marquee
id="ad"
scrolldelay="10"
truespeed="true"
behavior="scroll"
>
mezza
nineninenine //
here for YOUR business //
we make that line go UP //
NEVER settle for less //
call NOW to talk to your personal finance savior
</marquee>
<div class="money">$</div>
</body>
</html>
</>;

View file

@ -1,122 +0,0 @@
* {
box-sizing: border-box;
}
html {
--accent: #ed1c24;
--foreground: #000;
--background: #fff;
--background-alt: #f5f5f5;
font-family: 'Open Sans', Arial, sans-serif;
font-weight: 800;
background: var(--background);
color: var(--foreground);
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
box-sizing: border-box;
width: 100vw;
height: 100vh;
margin: 0;
font-size: 1vw;
}
body {
margin: 0;
}
.video {
height: 100vh;
width: 100vw;
object-fit: cover;
position: fixed;
z-index: -1;
top: 0%;
left: 0;
}
@keyframes bling {
0% {
text-shadow: 0px 0px 0.0rem gold;
}
30% {
text-shadow: 0px 0px 0.0rem gold;
}
50% {
text-shadow: 0px 0px 0.5rem gold;
}
70% {
text-shadow: 0px 0px 0.0rem gold;
}
100% {
text-shadow: 0px 0px 0.0rem gold;
}
}
@keyframes scale {
0% {
transform: scale(1);
}
50% {
transform: scale(2);
}
100% {
transform: scale(1);
}
}
#ad {
position: fixed;
z-index: 1;
bottom: 0;
right: 0;
left: 0;
padding: 0 16px;
color: gold;
font-size: 5vh;
text-shadow: 0px 0px 0.5rem gold;
animation-name: bling;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
white-space: nowrap;
}
@keyframes rotate {
from {
transform: rotateY(0deg);
}
to {
transform: rotateY(360deg);
}
}
@keyframes depth {
0% { text-shadow: 0 0 #5b5015; }
25% { text-shadow: 4px 0 #5b5015, 8px 0 #5b5015, 12px 0 #5b5015, 16px 0 #5b5015, 20px 0 #5b5015; }
50% { text-shadow: 0 0 #5b5015; }
75% { text-shadow: -4px 0 #5b5015, -8px 0 #5b5015, -12px 0 #5b5015, -16px 0 #5b5015, -20px 0 #5b5015; }
100% { text-shadow: 0 0 #5b5015; }
}
.money {
position: fixed;
top: 5vh;
left: 5vw;
z-index: 1;
color: gold;
font-size: 20vw;
animation-name: rotate, depth;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-duration: 5s;
}

View file

@ -1,4 +0,0 @@
#!/usr/bin/env sh
# Put binary assets in place
cp -r ./assets ./_site/

View file

@ -1,12 +0,0 @@
{
"importMap": "import_map.json",
"tasks": {
"lume": "echo \"import 'lume/cli.ts'\" | deno run --unstable -A -",
"build": "deno task lume",
"serve": "deno task lume -s"
},
"compilerOptions": {
"jsx": "react-jsx",
"jsxImportSource": "npm:react"
}
}

1112
deno.lock

File diff suppressed because it is too large Load diff

View file

@ -1,30 +0,0 @@
import MarkdownIt from "https://jspm.dev/markdown-it";
const mdIt = new MarkdownIt({
html: true, // Enable HTML tags in source
xhtmlOut: false, // Use '/' to close single tags (<br />).
// This is only for full CommonMark compatibility.
breaks: true, // Convert '\n' in paragraphs into <br>
langPrefix: 'language-', // CSS language prefix for fenced blocks. Can be
// useful for external highlighters.
linkify: true, // Autoconvert URL-like text to links
// Enable some language-neutral replacement + quotes beautification
// For the full list of replacements, see https://github.com/markdown-it/markdown-it/blob/master/lib/rules_core/replacements.js
typographer: false,
// Double + single quotes replacement pairs, when typographer enabled,
// and smartquotes on. Could be either a String or an Array.
//
// For example, you can use '«»„“' for Russian, '„“‚‘' for German,
// and ['«\xA0', '\xA0»', '\xA0', '\xA0'] for French (including nbsp).
quotes: '“”‘’',
// Highlighter function. Should return escaped HTML,
// or '' if the source string is not changed and should be escaped externally.
// If result starts with <pre... internal wrapper is skipped.
highlight: function (/*str, lang*/) { return ''; }
});
export const md = (string) => mdIt.render(string);

View file

@ -2,19 +2,16 @@
"nodes": {
"devshell": {
"inputs": {
"flake-utils": [
"flake-utils"
],
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1705332421,
"narHash": "sha256-USpGLPme1IuqG78JNqSaRabilwkCyHmVWY0M9vYyqEA=",
"lastModified": 1722113426,
"narHash": "sha256-Yo/3loq572A8Su6aY5GP56knpuKYRvM2a1meP9oJZCw=",
"owner": "numtide",
"repo": "devshell",
"rev": "83cb93d6d063ad290beee669f4badf9914cc16ec",
"rev": "67cce7359e4cd3c45296fb4aaf6a19e2a9c757ae",
"type": "github"
},
"original": {
@ -23,21 +20,21 @@
"type": "github"
}
},
"flake-utils": {
"flake-parts": {
"inputs": {
"systems": "systems"
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"lastModified": 1722555600,
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
@ -57,27 +54,24 @@
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1722555339,
"narHash": "sha256-uFf2QeW7eAHlYXuDktm9c25OxOyCoUOQmh5SZ9amE5Q=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz"
}
},
"root": {
"inputs": {
"devshell": "devshell",
"flake-utils": "flake-utils",
"flake-parts": "flake-parts",
"nixpkgs": "nixpkgs"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",

View file

@ -4,41 +4,47 @@
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
flake-parts.url = "github:hercules-ci/flake-parts";
devshell.url = "github:numtide/devshell";
devshell.inputs.flake-utils.follows = "flake-utils";
devshell.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, flake-utils, devshell, nixpkgs }:
flake-utils.lib.simpleFlake {
inherit self nixpkgs;
name = "mezza.biz";
preOverlays = [ devshell.overlays.default ];
overlay = final: prev: {
mezza-biz = prev.stdenv.mkDerivation {
outputs = inputs@{ self, ... }:
inputs.flake-parts.lib.mkFlake { inherit inputs; } {
imports = [
inputs.flake-parts.flakeModules.easyOverlay
inputs.devshell.flakeModule
];
systems = [ "x86_64-linux" ];
perSystem = args@{ system, pkgs, lib, config, ... }: let
mezza-biz = pkgs.stdenv.mkDerivation {
name = "mezza.biz";
version = "0.0.1";
src = ./.;
installPhase = ''
${nixpkgs.deno}/bin/deno task build
mkdir -p $out
cp -r _site/* $out/
cp -r _site/.* $out/
cp -r index.html assets scripts $out/
'';
};
};
shell = { pkgs }:
pkgs.devshell.mkShell {
# Add additional packages you'd like to be available in your devshell
# PATH here
devshell.packages = with pkgs; [
in {
packages.default = mezza-biz;
packages.mezza-biz = mezza-biz;
overlayAttrs = {
inherit (config.packages) mezza-biz;
};
devshells.default = {
packages = with pkgs; [
deno
];
bash.extra = ''
export NVIM_USE_DENOLS=1
'';
env = {
NVIM_USE_DENOLS = 1;
};
};
};
};
};
}

View file

@ -1,7 +0,0 @@
{
"imports": {
"lume/": "https://deno.land/x/lume@v1.12.1/",
"react/jsx-runtime": "https://deno.land/x/lume@v1.12.1/deps/react_runtime.ts",
"react": "https://deno.land/x/lume@v1.12.1/deps/react.ts"
}
}

165
index.html Normal file
View file

@ -0,0 +1,165 @@
<!DOCTYPE html>
<html>
<meta charSet="utf-8" />
<title>mezza.biz</title>
<meta name="description" content="Invest today" />
<meta id="viewport" name="viewport" content="width=device-width, initial-scale=1.0" />
<style>
* {
box-sizing: border-box;
}
html {
--accent: #ed1c24;
--foreground: #000;
--background: #fff;
--background-alt: #f5f5f5;
font-family: 'Open Sans', Arial, sans-serif;
font-weight: 800;
background: var(--background);
color: var(--foreground);
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
box-sizing: border-box;
width: 100vw;
height: 100vh;
margin: 0;
font-size: 1vw;
}
body {
margin: 0;
}
.video {
height: 100vh;
width: 100vw;
object-fit: cover;
position: fixed;
z-index: -1;
top: 0%;
left: 0;
}
@keyframes bling {
0% {
text-shadow: 0px 0px 0.0rem gold;
}
30% {
text-shadow: 0px 0px 0.0rem gold;
}
50% {
text-shadow: 0px 0px 0.5rem gold;
}
70% {
text-shadow: 0px 0px 0.0rem gold;
}
100% {
text-shadow: 0px 0px 0.0rem gold;
}
}
@keyframes scale {
0% {
transform: scale(1);
}
50% {
transform: scale(2);
}
100% {
transform: scale(1);
}
}
#ad {
position: fixed;
z-index: 1;
bottom: 0;
right: 0;
left: 0;
padding: 0 16px;
color: gold;
font-size: 5vh;
text-shadow: 0px 0px 0.5rem gold;
animation-name: bling;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
white-space: nowrap;
}
@keyframes rotate {
from {
transform: rotateY(0deg);
}
to {
transform: rotateY(360deg);
}
}
@keyframes depth {
0% { text-shadow: 0 0 #5b5015; }
25% { text-shadow: 4px 0 #5b5015, 8px 0 #5b5015, 12px 0 #5b5015, 16px 0 #5b5015, 20px 0 #5b5015; }
50% { text-shadow: 0 0 #5b5015; }
75% { text-shadow: -4px 0 #5b5015, -8px 0 #5b5015, -12px 0 #5b5015, -16px 0 #5b5015, -20px 0 #5b5015; }
100% { text-shadow: 0 0 #5b5015; }
}
.money {
position: fixed;
top: 5vh;
left: 5vw;
z-index: 1;
color: gold;
font-size: 20vw;
animation-name: rotate, depth;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-duration: 5s;
}
</style>
<script
defer
type="module"
src="/scripts/money.mjs"
></script>)}
</>
<body>
<video
class="video"
src="/assets/money-rains.mp4"
autoplay="true"
loop="true"
muted="true"
></video>
<div id="charts"></div>
<marquee
id="ad"
scrolldelay="10"
truespeed="true"
behavior="scroll"
>
mezza
nineninenine //
here for YOUR business //
we make that line go UP //
NEVER settle for less //
call NOW to talk to your personal finance savior
</marquee>
<div class="money">$</div>
</body>
</html>

View file

@ -1,4 +0,0 @@
layout: layouts/homepage.tsx
extraScripts:
- scripts/money.mjs

View file

@ -1 +0,0 @@
@import 'styles/style';