1
mirror of https://github.com/jakejarvis/jakejarvis.git synced 2025-04-26 06:35:23 -04:00

🐦 ➡️ 🦣

This commit is contained in:
Jake Jarvis 2022-11-28 23:03:08 -05:00
parent 9dbfee018b
commit 283e9fbd25
Signed by: jake
GPG Key ID: 2B0C9CF251E69A39
5 changed files with 462 additions and 376 deletions

View File

@ -20,7 +20,7 @@ $ npx @jakejarvis/cli
🏡 Website jarv.is
📬 Email jake@jarv.is
🐦 Twitter @jakejarvis
🦣 Mastodon fediverse.jarv.is/@jake
📱 SMS +1 (617) 917-3737
🔐 PGP Key jrvs.io/key (2B0C 9CF2 51E6 9A39)
```

View File

@ -1,5 +1,5 @@
import path from "path";
import fs from "fs/promises";
import { writeFile, stat } from "fs/promises";
import cpy from "cpy";
import mkdirp from "mkdirp";
import { transformFileSync } from "@babel/core";
@ -28,7 +28,7 @@ const { code: babelCode } = transformFileSync(inputFile, {
await temporaryDirectoryTask(async (tempPath) => {
// save babel-ified code above to a temporary file -- unfortunately, we can't pipe this code directly into to ncc
const babelFile = path.join(tempPath, "index.cjs");
await fs.writeFile(babelFile, babelCode);
await writeFile(babelFile, babelCode);
// hacky warning: ncc needs the node_modules we want to bundle next to the input file, so copy them from here
await cpy("node_modules/**", path.join(tempPath, "node_modules"));
@ -46,14 +46,14 @@ await temporaryDirectoryTask(async (tempPath) => {
// write final build to ./dist and make it executable
await Promise.all([
fs.writeFile(path.join(outputDir, "index.cjs"), code, { mode: 0o755 }),
writeFile(path.join(outputDir, "index.cjs"), code, { mode: 0o755 }),
// TODO: figure out if bundling this script from 'open' module is really necessary?
// https://linux.die.net/man/1/xdg-open
fs.writeFile(path.join(outputDir, "xdg-open"), assets["xdg-open"].source, { mode: 0o755 }),
writeFile(path.join(outputDir, "xdg-open"), assets["xdg-open"].source, { mode: 0o755 }),
]);
});
// quick logging of resulting filesizes
console.log("🎉 Success!");
console.log(`dist/index.cjs\t${prettyBytes((await fs.stat(path.join(outputDir, "index.cjs"))).size)}`);
console.log(`dist/xdg-open\t${prettyBytes((await fs.stat(path.join(outputDir, "xdg-open"))).size)}`);
console.log(`dist/index.cjs\t${prettyBytes((await stat(path.join(outputDir, "index.cjs"))).size)}`);
console.log(`dist/xdg-open\t${prettyBytes((await stat(path.join(outputDir, "xdg-open"))).size)}`);

View File

@ -42,8 +42,12 @@ const items = createItems([
url: "https://jarv.is/contact/",
},
{
label: "🐦 Twitter",
url: "https://twitter.com/intent/user?screen_name=jakejarvis",
label: "📱 SMS",
url: "sms:+1-617-917-3737",
},
{
label: "🐘 Mastodon",
url: "https://fediverse.jarv.is/@jake",
},
{
label: "🔐 PGP Key",

View File

@ -30,15 +30,15 @@
},
"dependencies": {},
"devDependencies": {
"@babel/core": "^7.18.9",
"@babel/core": "^7.20.5",
"@babel/preset-react": "^7.18.6",
"@jakejarvis/eslint-config": "*",
"@types/node": "*",
"@types/react": "^18.0.15",
"@types/react": "^18.0.25",
"@vercel/ncc": "^0.34.0",
"cpy": "^9.0.1",
"eslint": "^8.20.0",
"eslint-plugin-react": "^7.30.1",
"eslint": "^8.28.0",
"eslint-plugin-react": "^7.31.11",
"ink": "^3.2.0",
"ink-big-text": "^1.2.0",
"ink-gradient": "^2.0.0",

File diff suppressed because it is too large Load Diff