Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
145 lines (145 loc) · 9.45 KB
/
Copy pathpackage.json
File metadata and controls
145 lines (145 loc) · 9.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
{
"name": "ef1p",
"version": "1.0.0",
"private": true,
"description": "This package contains the scripts of the interactive website ef1p.com.",
"homepage": "https://explained-from-first-principles.com",
"bugs": {
"url": "https://github.com/KasparEtter/ef1p/issues"
},
"repository": {
"type": "git",
"url": "git+https://github.com/KasparEtter/ef1p.git"
},
"license": "CC-BY-4.0",
"author": "Kaspar Etter",
"scripts": {
"bell": "tput bel",
"build": "npm-run-all clean scss-build ts-build img-build svg-build svg-definitions thumbnails md-build",
"copy": "npm-run-all fonts-copy katex-copy scripts-copy",
"clean": "rm -f pages/*/generated/*.{svg,png,jpg}",
"export": "ts-node code/node/export.ts",
"fonts-copy": "rm -rf assets/fonts/fontawesome/*; cp -R node_modules/@fortawesome/fontawesome-free/css node_modules/@fortawesome/fontawesome-free/webfonts assets/fonts/fontawesome/",
"img-build": "ts-node code/node/images.ts",
"img-watch": "watch-run -p 'pages/*/images/*.@(png|jpg)' npm run img-build watch",
"katex-copy": "rm -rf assets/fonts/katex/*; cp -R node_modules/katex/dist/fonts node_modules/katex/dist/katex.min.css assets/fonts/katex/; cp node_modules/katex/dist/katex.min.js node_modules/katex/dist/contrib/copy-tex.min.js node_modules/katex/dist/contrib/auto-render.min.js assets/scripts/external/",
"lint": "npm-run-all --parallel scss-lint md-lint ts-lint ts-circular",
"loc": "find code -type f -not -name '.DS_Store' | xargs wc -l",
"logo-build": "npm-run-all logo-generate logo-convert",
"logo-convert": "svgexport assets/logos/logo.svg assets/logos/logo.png 1000: && svgexport assets/logos/logo.svg assets/logos/logo-small.png 200:",
"logo-generate": "ts-node assets/logos/logo.ts",
"md-build": "bundle exec jekyll build",
"md-lint": "markdownlint .",
"md-watch": "bundle exec jekyll serve --incremental --livereload 2>/dev/null",
"md-watch-network": "bundle exec jekyll serve --incremental --livereload --host 0.0.0.0 --port 4000 2>/dev/null",
"npm-upgrade": "npm-check-updates --reject @types/anchor-js,@types/react,@types/react-dom,anchor-js,bootstrap,bootswatch,react,react-dom,readable-stream --upgrade",
"ots-info": "info() { ots-cli.js info \"pages/$1/$1.md.ots\"; find \"pages/$1/generated\" -name '*.pdf.ots' -exec ots-cli.js info {} +; }; info",
"ots-remove": "remove() { rm \"pages/$1/$1.md.ots\"; find \"pages/$1/generated\" -name '*.pdf.ots' -exec rm {} +; }; remove",
"ots-remove-bak": "removebak() { rm \"pages/$1/$1.md.ots.bak\"; find \"pages/$1/generated\" -name '*.pdf.ots.bak' -exec rm {} +; }; removebak",
"ots-stamp": "stamp() { ots-cli.js stamp \"pages/$1/$1.md\"; find \"pages/$1/generated\" -name '*.pdf' -exec ots-cli.js stamp {} +; }; stamp",
"ots-upgrade": "upgrade() { ots-cli.js upgrade \"pages/$1/$1.md.ots\"; find \"pages/$1/generated\" -name '*.pdf.ots' -exec ots-cli.js upgrade {} +; }; upgrade",
"ots-verify": "verify() { ots-cli.js verify \"pages/$1/$1.md.ots\"; find \"pages/$1/generated\" -name '*.pdf.ots' -exec ots-cli.js verify {} +; }; verify",
"sass-options": "sass --silence-deprecation=import,global-builtin,color-functions,slash-div,duplicate-var-flags,abs-percent,mixed-decls --quiet-deps --style=expanded --precision=6",
"scripts-copy": "cp node_modules/jquery/dist/jquery.min.js node_modules/bootstrap/dist/js/bootstrap.min.js node_modules/bootstrap/dist/js/bootstrap.min.js.map node_modules/anchor-js/anchor.min.js node_modules/react/umd/react.production.min.js node_modules/react-dom/umd/react-dom.production.min.js assets/scripts/external/",
"scripts-download": "download https://plausible.io/js/plausible.js > assets/scripts/external/plausible.min.js; download --out assets/scripts/external/ https://raw.githubusercontent.com/afeld/bootstrap-toc/gh-pages/dist/bootstrap-toc.min.js",
"scss-build": "npm-run-all scss-compile scss-prefix scss-minify bell",
"scss-build-dark": "npm-run-all scss-compile-dark scss-prefix-dark scss-minify-dark bell",
"scss-build-light": "npm-run-all scss-compile-light scss-prefix-light scss-minify-light bell",
"scss-build-with-map": "npm-run-all scss-compile-with-map scss-prefix scss-minify-with-map",
"scss-compile": "npm-run-all --parallel scss-compile-dark scss-compile-light",
"scss-compile-dark": "npm run sass-options -- styles/dark.scss assets/styles/dark.css",
"scss-compile-dark-with-map": "npm run sass-options -- --source-map --embed-sources styles/dark.scss assets/styles/dark.css",
"scss-compile-light": "npm run sass-options -- styles/light.scss assets/styles/light.css",
"scss-compile-light-with-map": "npm run sass-options -- --source-map --embed-sources styles/light.scss assets/styles/light.css",
"scss-compile-with-map": "npm-run-all --parallel scss-compile-dark-with-map scss-compile-light-with-map",
"scss-lint": "stylelint --config .stylelintrc 'styles/**/*.scss' --cache --cache-location '.stylelintcache/'",
"scss-minify": "npm-run-all --parallel scss-minify-dark scss-minify-light",
"scss-minify-dark": "cleancss --inline none --output assets/styles/dark.min.css assets/styles/dark.css",
"scss-minify-dark-with-map": "cleancss --inline none --source-map --source-map-inline-sources --output assets/styles/dark.min.css assets/styles/dark.css",
"scss-minify-light": "cleancss --inline none --output assets/styles/light.min.css assets/styles/light.css",
"scss-minify-light-with-map": "cleancss --inline none --source-map --source-map-inline-sources --output assets/styles/light.min.css assets/styles/light.css",
"scss-minify-with-map": "npm-run-all --parallel scss-minify-dark-with-map scss-minify-light-with-map",
"scss-prefix": "npm-run-all --parallel scss-prefix-dark scss-prefix-light",
"scss-prefix-dark": "postcss --use autoprefixer --replace 'assets/styles/dark.css' 2>&1 | grep -v 'Replace color-adjust'",
"scss-prefix-light": "postcss --use autoprefixer --replace 'assets/styles/light.css' 2>&1 | grep -v 'Replace color-adjust'",
"scss-watch": "watch 'npm run scss-build' styles",
"scss-watch-dark": "watch 'npm run scss-build-dark' styles",
"scss-watch-light": "watch 'npm run scss-build-light' styles",
"security": "gpg --clearsign -u 0x6B143BF1470C9367 -o .well-known/security.txt .well-known/security.unsigned.txt",
"serve": "bundle exec jekyll serve",
"serve-network": "bundle exec jekyll serve --host 0.0.0.0 --port 4000",
"sort-package": "sort-package-json",
"start": "npm run watch",
"svg-build": "ts-node code/node/graphics.ts",
"svg-definitions": "ts-node _includes/definitions.svg.ts > _includes/definitions.svg",
"svg-watch": "watch-run -p 'pages/*/graphics/*.ts,code/svg/**/*.ts' npm run svg-build watch",
"test": "echo 'Error: no test specified' && exit 1",
"thumbnails": "ts-node code/node/thumbnails.ts",
"ts-analyze": "webpack --analyze",
"ts-build": "webpack",
"ts-circular": "madge --warning --circular --extensions ts ./code/",
"ts-lint": "tslint --exclude 'node_modules/**/*' --exclude '_site/**/*' '**/*.ts?(x)'",
"ts-stats": "webpack --json > webpack-stats.json",
"ts-watch": "webpack --watch",
"watch": "npm-run-all --parallel scss-watch img-watch md-watch svg-watch ts-watch",
"watch-network": "npm-run-all --parallel scss-watch img-watch md-watch-network svg-watch ts-watch"
},
"devDependencies": {
"@fortawesome/fontawesome-free": "7.0.0",
"@types/anchor-js": "4.2.1",
"@types/create-hash": "1.2.6",
"@types/create-hmac": "1.1.3",
"@types/jquery": "3.5.32",
"@types/katex": "0.16.7",
"@types/node": "24.2.1",
"@types/punycode": "2.1.4",
"@types/react": "18.2.18",
"@types/react-dom": "18.2.7",
"@types/scheduler": "0.16.8",
"anchor-js": "4.2.2",
"autoprefixer": "10.4.21",
"bootstrap": "4.6.1",
"bootswatch": "4.6.2",
"clean-css-cli": "5.6.3",
"create-hash": "1.2.0",
"create-hmac": "1.1.7",
"download-cli": "1.1.1",
"glob": "11.0.3",
"inspectpack": "4.7.1",
"jquery": "3.7.1",
"katex": "0.16.22",
"madge": "8.0.0",
"markdownlint-cli": "0.45.0",
"npm-check-updates": "18.0.2",
"npm-run-all": "4.1.5",
"opentimestamps": "0.4.9",
"popper.js": "1.16.1",
"postcss": "8.5.6",
"postcss-cli": "11.0.1",
"punycode": "2.3.1",
"puppeteer": "24.16.1",
"react": "17.0.2",
"react-dom": "17.0.2",
"readable-stream": "3.6.0",
"safe-buffer": "5.2.1",
"sass": "1.90.0",
"sharp-cli": "5.2.0",
"sort-package-json": "3.4.0",
"source-map-loader": "5.0.0",
"stream-browserify": "3.0.0",
"stylelint": "16.23.1",
"stylelint-config-twbs-bootstrap": "16.1.0",
"svgexport": "0.4.2",
"text-fragments-polyfill": "6.7.0",
"ts-loader": "9.5.2",
"ts-node": "10.9.2",
"tslint": "6.1.3",
"typescript": "5.9.2",
"watch": "1.0.2",
"watch-run": "1.2.5",
"webpack": "5.101.0",
"webpack-build-notifier": "3.1.0",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "6.0.1"
}
}