From 5cbf08225566a37df09a5c0a11d7d6c7ef6861ba Mon Sep 17 00:00:00 2001 From: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com> Date: Mon, 11 Mar 2024 19:48:42 -0400 Subject: [PATCH] fix: use webpack for npm dependencies --- .github/workflows/build.yml | 13 ++----- .gitignore | 6 ++-- package.json | 10 ++++++ scripts/build.sh | 23 +++++++++++++ {dist => src}/.keep | 0 {dist => src}/.nojekyll | 0 {dist => src}/CNAME | 0 .../assets/images/AdobeStock_306976163.jpeg | Bin .../images/AdobeStock_306976163_1920x1280.jpg | Bin .../assets/images/AdobeStock_372471479.jpeg | Bin .../images/AdobeStock_372471479_1920x1280.jpg | Bin .../assets/images/AdobeStock_465916245.jpeg | Bin .../images/AdobeStock_465916245_1920x1080.jpg | Bin {dist => src}/assets/images/favicon.ico | Bin {dist => src}/assets/images/logo-56x56.png | Bin {dist => src}/assets/images/logo-64x64.png | Bin {dist => src}/assets/images/og-image.png | Bin {dist => src}/css/custom.css | 0 {dist => src}/css/logos.css | 0 {dist => src}/dev.html | 12 +++---- {dist => src}/discord.html | 8 ++--- {dist => src}/feedback.html | 8 ++--- {dist => src}/index.html | 12 +++---- {dist => src}/js/crowdin.js | 0 {dist => src}/js/crowdin_web_widget.js | 0 {dist => src}/js/dev_dashboard.js | 0 {dist => src}/js/discord.js | 0 {dist => src}/js/footer.js | 0 {dist => src}/js/levenshtein_distance.js | 0 {dist => src}/js/navbar.js | 0 {dist => src}/js/projects.js | 0 {dist => src}/js/ranking_sorter.js | 0 {dist => src}/js/sleep.js | 0 {dist => src}/privacy.html | 8 ++--- {dist => src}/support.html | 10 +++--- {dist => src}/terms.html | 8 ++--- webpack.config.js | 32 ++++++++++++++++++ 37 files changed, 102 insertions(+), 48 deletions(-) create mode 100644 scripts/build.sh rename {dist => src}/.keep (100%) rename {dist => src}/.nojekyll (100%) rename {dist => src}/CNAME (100%) rename {dist => src}/assets/images/AdobeStock_306976163.jpeg (100%) rename {dist => src}/assets/images/AdobeStock_306976163_1920x1280.jpg (100%) rename {dist => src}/assets/images/AdobeStock_372471479.jpeg (100%) rename {dist => src}/assets/images/AdobeStock_372471479_1920x1280.jpg (100%) rename {dist => src}/assets/images/AdobeStock_465916245.jpeg (100%) rename {dist => src}/assets/images/AdobeStock_465916245_1920x1080.jpg (100%) rename {dist => src}/assets/images/favicon.ico (100%) rename {dist => src}/assets/images/logo-56x56.png (100%) rename {dist => src}/assets/images/logo-64x64.png (100%) rename {dist => src}/assets/images/og-image.png (100%) rename {dist => src}/css/custom.css (100%) rename {dist => src}/css/logos.css (100%) rename {dist => src}/dev.html (94%) rename {dist => src}/discord.html (92%) rename {dist => src}/feedback.html (91%) rename {dist => src}/index.html (97%) rename {dist => src}/js/crowdin.js (100%) rename {dist => src}/js/crowdin_web_widget.js (100%) rename {dist => src}/js/dev_dashboard.js (100%) rename {dist => src}/js/discord.js (100%) rename {dist => src}/js/footer.js (100%) rename {dist => src}/js/levenshtein_distance.js (100%) rename {dist => src}/js/navbar.js (100%) rename {dist => src}/js/projects.js (100%) rename {dist => src}/js/ranking_sorter.js (100%) rename {dist => src}/js/sleep.js (100%) rename {dist => src}/privacy.html (97%) rename {dist => src}/support.html (98%) rename {dist => src}/terms.html (97%) create mode 100644 webpack.config.js diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9cd3cb1d..1a5d8a58 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -31,17 +31,8 @@ jobs: - name: Build website run: | - # install npm dependencies - npm install - - # empty contents of gh-pages - rm -f -r ./gh-pages/* - - # move contents of dist to gh-pages - mv -f ./dist/* ./gh-pages/ - - # move node_modules directory to gh-pages - mv -f ./node_modules/ ./gh-pages/ + sudo chmod +x ./scripts/build.sh + ./scripts/build.sh - name: Upload Artifacts if: ${{ github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' }} diff --git a/.gitignore b/.gitignore index d0b384d7..6cdc111b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,8 @@ # ignore JetBrains project .idea/ +dist/ + # ignore node modules node_modules/ package-lock.json - -# ignore duplicated dist folder for localization -dist/en -dist/es-ES diff --git a/package.json b/package.json index de4df689..af9cbc08 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,17 @@ { + "scripts": { + "build": "webpack" + }, "dependencies": { "@fortawesome/fontawesome-free": "6.6.0", "bootstrap": "5.3.3", "jquery": "3.7.1" + }, + "devDependencies": { + "css-loader": "6.10.0", + "mini-css-extract-plugin": "2.8.1", + "script-loader": "0.7.2", + "webpack": "5.90.3", + "webpack-cli": "5.1.4" } } diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100644 index 00000000..2c43df9d --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash + +# if ./dist exists, remove it entirely +if [ -d "./dist" ]; then + rm -rf ./dist +fi + +# if ./gh-pages exists, remove the contents +if [ -d "./gh-pages" ]; then + rm -rf ./gh-pages/* +fi + +# copy ./src directory to ./dist +cp -r ./src ./dist + +# install npm dependencies +npm install +npm run build + +# copy ./dist directory to ./gh-pages +if [ -d "./gh-pages" ]; then + mv -f ./dist/* ./gh-pages/ +fi diff --git a/dist/.keep b/src/.keep similarity index 100% rename from dist/.keep rename to src/.keep diff --git a/dist/.nojekyll b/src/.nojekyll similarity index 100% rename from dist/.nojekyll rename to src/.nojekyll diff --git a/dist/CNAME b/src/CNAME similarity index 100% rename from dist/CNAME rename to src/CNAME diff --git a/dist/assets/images/AdobeStock_306976163.jpeg b/src/assets/images/AdobeStock_306976163.jpeg similarity index 100% rename from dist/assets/images/AdobeStock_306976163.jpeg rename to src/assets/images/AdobeStock_306976163.jpeg diff --git a/dist/assets/images/AdobeStock_306976163_1920x1280.jpg b/src/assets/images/AdobeStock_306976163_1920x1280.jpg similarity index 100% rename from dist/assets/images/AdobeStock_306976163_1920x1280.jpg rename to src/assets/images/AdobeStock_306976163_1920x1280.jpg diff --git a/dist/assets/images/AdobeStock_372471479.jpeg b/src/assets/images/AdobeStock_372471479.jpeg similarity index 100% rename from dist/assets/images/AdobeStock_372471479.jpeg rename to src/assets/images/AdobeStock_372471479.jpeg diff --git a/dist/assets/images/AdobeStock_372471479_1920x1280.jpg b/src/assets/images/AdobeStock_372471479_1920x1280.jpg similarity index 100% rename from dist/assets/images/AdobeStock_372471479_1920x1280.jpg rename to src/assets/images/AdobeStock_372471479_1920x1280.jpg diff --git a/dist/assets/images/AdobeStock_465916245.jpeg b/src/assets/images/AdobeStock_465916245.jpeg similarity index 100% rename from dist/assets/images/AdobeStock_465916245.jpeg rename to src/assets/images/AdobeStock_465916245.jpeg diff --git a/dist/assets/images/AdobeStock_465916245_1920x1080.jpg b/src/assets/images/AdobeStock_465916245_1920x1080.jpg similarity index 100% rename from dist/assets/images/AdobeStock_465916245_1920x1080.jpg rename to src/assets/images/AdobeStock_465916245_1920x1080.jpg diff --git a/dist/assets/images/favicon.ico b/src/assets/images/favicon.ico similarity index 100% rename from dist/assets/images/favicon.ico rename to src/assets/images/favicon.ico diff --git a/dist/assets/images/logo-56x56.png b/src/assets/images/logo-56x56.png similarity index 100% rename from dist/assets/images/logo-56x56.png rename to src/assets/images/logo-56x56.png diff --git a/dist/assets/images/logo-64x64.png b/src/assets/images/logo-64x64.png similarity index 100% rename from dist/assets/images/logo-64x64.png rename to src/assets/images/logo-64x64.png diff --git a/dist/assets/images/og-image.png b/src/assets/images/og-image.png similarity index 100% rename from dist/assets/images/og-image.png rename to src/assets/images/og-image.png diff --git a/dist/css/custom.css b/src/css/custom.css similarity index 100% rename from dist/css/custom.css rename to src/css/custom.css diff --git a/dist/css/logos.css b/src/css/logos.css similarity index 100% rename from dist/css/logos.css rename to src/css/logos.css diff --git a/dist/dev.html b/src/dev.html similarity index 94% rename from dist/dev.html rename to src/dev.html index 7fbea246..8485a6f8 100644 --- a/dist/dev.html +++ b/src/dev.html @@ -25,16 +25,18 @@ - + - + + + - - + + @@ -131,8 +133,6 @@