From 3819f6262003e7740eb1947a0e7b0afd39a832c9 Mon Sep 17 00:00:00 2001 From: coolnsx Date: Fri, 16 May 2025 00:19:58 +0530 Subject: [PATCH] feat:rewrite using zola --- .gitignore | 30 + README.md | 3 - config.toml | 17 + content/blog/_index.md | 6 + index.html | 68 -- package-lock.json | 1214 +++++++++++++++++++++++++++++++++ package.json | 11 + shell-scripting.html | 17 - static/assets/background.webp | Bin 0 -> 78474 bytes static/styles/main.css | 806 ++++++++++++++++++++++ styles/main.css | 1 + tailwind.config.js | 9 + templates/base.html | 109 +++ templates/blog-page.html | 10 + templates/blog.html | 14 + templates/index.html | 126 ++++ web-scraping.html | 94 --- 17 files changed, 2353 insertions(+), 182 deletions(-) delete mode 100644 README.md create mode 100644 config.toml create mode 100644 content/blog/_index.md delete mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json delete mode 100644 shell-scripting.html create mode 100644 static/assets/background.webp create mode 100644 static/styles/main.css create mode 100644 styles/main.css create mode 100644 tailwind.config.js create mode 100644 templates/base.html create mode 100644 templates/blog-page.html create mode 100644 templates/blog.html create mode 100644 templates/index.html delete mode 100644 web-scraping.html diff --git a/.gitignore b/.gitignore index 2e2f9ab..7ef49f4 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,31 @@ allanime.xml +# Zola build output +/public/ + +# Zola cache and temp files +/.zola/ + +# Environment files +.env + +# Node modules (if you use npm/yarn for assets) +node_modules/ + +# Logs +*.log + +# macOS system files +.DS_Store + +# VSCode settings +.vscode/ + +# Editor swap files +*.swp +*.swo + +# Backup files +*~ + +# Other OS generated files +Thumbs.db diff --git a/README.md b/README.md deleted file mode 100644 index 653efbf..0000000 --- a/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# CoolnsX.github.io - -Gonna revamp it soon with css diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..e3ca248 --- /dev/null +++ b/config.toml @@ -0,0 +1,17 @@ +# The URL the site will be built for +base_url = "https://coolans.dev" + +# Whether to automatically compile all Sass files in the sass directory +compile_sass = false + +build_search_index = true + +[markdown] +highlight_code = true + +# Whether external links are to be opened in a new tab +# If this is true, a `rel="noopener"` will always automatically be added for security reasons +external_links_target_blank = true + +[extra] +# Put all your custom variables here diff --git a/content/blog/_index.md b/content/blog/_index.md new file mode 100644 index 0000000..732ec1c --- /dev/null +++ b/content/blog/_index.md @@ -0,0 +1,6 @@ ++++ +title = "Coming Soon" +sort_by = "date" +template = "blog.html" +page_template = "blog-page.html" ++++ diff --git a/index.html b/index.html deleted file mode 100644 index 49b6679..0000000 --- a/index.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - - - - - Welcome UWU - - - -

Hello World!!

-
-

New Site coming soon

-

Contents >>

- -

About Me >>

- -

Projects >>

- -

My Hobbies >>

- -

Description >>

- -

How to Reach me >>

- -
-

Go to Top

- - diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..4c3211e --- /dev/null +++ b/package-lock.json @@ -0,0 +1,1214 @@ +{ + "name": "my-website", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@tailwindcss/cli": "^4.1.7", + "@tailwindcss/typography": "^0.5.16", + "tailwindcss": "^4.1.7" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", + "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.1", + "@parcel/watcher-darwin-arm64": "2.5.1", + "@parcel/watcher-darwin-x64": "2.5.1", + "@parcel/watcher-freebsd-x64": "2.5.1", + "@parcel/watcher-linux-arm-glibc": "2.5.1", + "@parcel/watcher-linux-arm-musl": "2.5.1", + "@parcel/watcher-linux-arm64-glibc": "2.5.1", + "@parcel/watcher-linux-arm64-musl": "2.5.1", + "@parcel/watcher-linux-x64-glibc": "2.5.1", + "@parcel/watcher-linux-x64-musl": "2.5.1", + "@parcel/watcher-win32-arm64": "2.5.1", + "@parcel/watcher-win32-ia32": "2.5.1", + "@parcel/watcher-win32-x64": "2.5.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz", + "integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz", + "integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz", + "integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz", + "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz", + "integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz", + "integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz", + "integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz", + "integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", + "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz", + "integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz", + "integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz", + "integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz", + "integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/cli": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/cli/-/cli-4.1.7.tgz", + "integrity": "sha512-hJNjpov/UiJc9ZWH4j/eEQxqklADrD/71s+t8Y0wbyQVAwtLkSp+MeC/sHTb03X+28rfbe0fRXkiBsf73/IwPg==", + "license": "MIT", + "dependencies": { + "@parcel/watcher": "^2.5.1", + "@tailwindcss/node": "4.1.7", + "@tailwindcss/oxide": "4.1.7", + "enhanced-resolve": "^5.18.1", + "mri": "^1.2.0", + "picocolors": "^1.1.1", + "tailwindcss": "4.1.7" + }, + "bin": { + "tailwindcss": "dist/index.mjs" + } + }, + "node_modules/@tailwindcss/node": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.7.tgz", + "integrity": "sha512-9rsOpdY9idRI2NH6CL4wORFY0+Q6fnx9XP9Ju+iq/0wJwGD5IByIgFmwVbyy4ymuyprj8Qh4ErxMKTUL4uNh3g==", + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "enhanced-resolve": "^5.18.1", + "jiti": "^2.4.2", + "lightningcss": "1.30.1", + "magic-string": "^0.30.17", + "source-map-js": "^1.2.1", + "tailwindcss": "4.1.7" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.7.tgz", + "integrity": "sha512-5SF95Ctm9DFiUyjUPnDGkoKItPX/k+xifcQhcqX5RA85m50jw1pT/KzjdvlqxRja45Y52nR4MR9fD1JYd7f8NQ==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.4", + "tar": "^7.4.3" + }, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.1.7", + "@tailwindcss/oxide-darwin-arm64": "4.1.7", + "@tailwindcss/oxide-darwin-x64": "4.1.7", + "@tailwindcss/oxide-freebsd-x64": "4.1.7", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.7", + "@tailwindcss/oxide-linux-arm64-gnu": "4.1.7", + "@tailwindcss/oxide-linux-arm64-musl": "4.1.7", + "@tailwindcss/oxide-linux-x64-gnu": "4.1.7", + "@tailwindcss/oxide-linux-x64-musl": "4.1.7", + "@tailwindcss/oxide-wasm32-wasi": "4.1.7", + "@tailwindcss/oxide-win32-arm64-msvc": "4.1.7", + "@tailwindcss/oxide-win32-x64-msvc": "4.1.7" + } + }, + "node_modules/@tailwindcss/oxide-android-arm64": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.7.tgz", + "integrity": "sha512-IWA410JZ8fF7kACus6BrUwY2Z1t1hm0+ZWNEzykKmMNM09wQooOcN/VXr0p/WJdtHZ90PvJf2AIBS/Ceqx1emg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-darwin-arm64": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.7.tgz", + "integrity": "sha512-81jUw9To7fimGGkuJ2W5h3/oGonTOZKZ8C2ghm/TTxbwvfSiFSDPd6/A/KE2N7Jp4mv3Ps9OFqg2fEKgZFfsvg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-darwin-x64": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.7.tgz", + "integrity": "sha512-q77rWjEyGHV4PdDBtrzO0tgBBPlQWKY7wZK0cUok/HaGgbNKecegNxCGikuPJn5wFAlIywC3v+WMBt0PEBtwGw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-freebsd-x64": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.7.tgz", + "integrity": "sha512-RfmdbbK6G6ptgF4qqbzoxmH+PKfP4KSVs7SRlTwcbRgBwezJkAO3Qta/7gDy10Q2DcUVkKxFLXUQO6J3CRvBGw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.7.tgz", + "integrity": "sha512-OZqsGvpwOa13lVd1z6JVwQXadEobmesxQ4AxhrwRiPuE04quvZHWn/LnihMg7/XkN+dTioXp/VMu/p6A5eZP3g==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.7.tgz", + "integrity": "sha512-voMvBTnJSfKecJxGkoeAyW/2XRToLZ227LxswLAwKY7YslG/Xkw9/tJNH+3IVh5bdYzYE7DfiaPbRkSHFxY1xA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.7.tgz", + "integrity": "sha512-PjGuNNmJeKHnP58M7XyjJyla8LPo+RmwHQpBI+W/OxqrwojyuCQ+GUtygu7jUqTEexejZHr/z3nBc/gTiXBj4A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.7.tgz", + "integrity": "sha512-HMs+Va+ZR3gC3mLZE00gXxtBo3JoSQxtu9lobbZd+DmfkIxR54NO7Z+UQNPsa0P/ITn1TevtFxXTpsRU7qEvWg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.7.tgz", + "integrity": "sha512-MHZ6jyNlutdHH8rd+YTdr3QbXrHXqwIhHw9e7yXEBcQdluGwhpQY2Eku8UZK6ReLaWtQ4gijIv5QoM5eE+qlsA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.7.tgz", + "integrity": "sha512-ANaSKt74ZRzE2TvJmUcbFQ8zS201cIPxUDm5qez5rLEwWkie2SkGtA4P+GPTj+u8N6JbPrC8MtY8RmJA35Oo+A==", + "bundleDependencies": [ + "@napi-rs/wasm-runtime", + "@emnapi/core", + "@emnapi/runtime", + "@tybys/wasm-util", + "@emnapi/wasi-threads", + "tslib" + ], + "cpu": [ + "wasm32" + ], + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@emnapi/wasi-threads": "^1.0.2", + "@napi-rs/wasm-runtime": "^0.2.9", + "@tybys/wasm-util": "^0.9.0", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.7.tgz", + "integrity": "sha512-HUiSiXQ9gLJBAPCMVRk2RT1ZrBjto7WvqsPBwUrNK2BcdSxMnk19h4pjZjI7zgPhDxlAbJSumTC4ljeA9y0tEw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-win32-x64-msvc": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.7.tgz", + "integrity": "sha512-rYHGmvoHiLJ8hWucSfSOEmdCBIGZIq7SpkPRSqLsH2Ab2YUNgKeAPT1Fi2cx3+hnYOrAb0jp9cRyode3bBW4mQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide/node_modules/detect-libc": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/@tailwindcss/typography": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.16.tgz", + "integrity": "sha512-0wDLwCVF5V3x3b1SGXPCDcdsbDHMBe+lkFzBRaHeLvNi+nrrnZ1lA18u+OTWO8iSWU2GxUOCvlXtDuqftc1oiA==", + "license": "MIT", + "dependencies": { + "lodash.castarray": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "postcss-selector-parser": "6.0.10" + }, + "peerDependencies": { + "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "license": "Apache-2.0", + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jiti": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", + "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/lightningcss": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.1.tgz", + "integrity": "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==", + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-darwin-arm64": "1.30.1", + "lightningcss-darwin-x64": "1.30.1", + "lightningcss-freebsd-x64": "1.30.1", + "lightningcss-linux-arm-gnueabihf": "1.30.1", + "lightningcss-linux-arm64-gnu": "1.30.1", + "lightningcss-linux-arm64-musl": "1.30.1", + "lightningcss-linux-x64-gnu": "1.30.1", + "lightningcss-linux-x64-musl": "1.30.1", + "lightningcss-win32-arm64-msvc": "1.30.1", + "lightningcss-win32-x64-msvc": "1.30.1" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.1.tgz", + "integrity": "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.1.tgz", + "integrity": "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.1.tgz", + "integrity": "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.1.tgz", + "integrity": "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==", + "cpu": [ + "arm" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.1.tgz", + "integrity": "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.1.tgz", + "integrity": "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.1.tgz", + "integrity": "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.1.tgz", + "integrity": "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.1.tgz", + "integrity": "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.1.tgz", + "integrity": "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss/node_modules/detect-libc": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.castarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz", + "integrity": "sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==", + "license": "MIT" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "license": "MIT" + }, + "node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minizlib": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.2.tgz", + "integrity": "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==", + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "license": "MIT", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/mri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", + "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tailwindcss": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.7.tgz", + "integrity": "sha512-kr1o/ErIdNhTz8uzAYL7TpaUuzKIE6QPQ4qmSdxnoX/lo+5wmUHQA6h3L5yIqEImSRnAAURDirLu/BgiXGPAhg==", + "license": "MIT" + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "license": "ISC", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..c6e00da --- /dev/null +++ b/package.json @@ -0,0 +1,11 @@ +{ + "scripts": { + "build": "NODE_ENV=production npx tailwindcss -i styles/main.css -o static/styles/main.css", + "watch": "npx tailwindcss -i styles/main.css -o static/styles/main.css --watch" + }, + "dependencies": { + "@tailwindcss/cli": "^4.1.7", + "@tailwindcss/typography": "^0.5.16", + "tailwindcss": "^4.1.7" + } +} diff --git a/shell-scripting.html b/shell-scripting.html deleted file mode 100644 index acf71eb..0000000 --- a/shell-scripting.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - Shell Scripting - - -

Shell Scripting

-
-

A shell script is a computer program designed to be run by the Unix shell, a command-line interpreter. The various dialects of shell scripts are considered to be scripting languages. Typical operations performed by shell scripts include file manipulation, program execution, and printing text.

-

The Logic behind shell scripting is to create automated task that you do on regular basis.. (Source:Wikipedia)

-

My Scripts Repository link >>

-

It contains the scripts that I wrote and use on the daily basis to make my life easier.

- - diff --git a/static/assets/background.webp b/static/assets/background.webp new file mode 100644 index 0000000000000000000000000000000000000000..fc823d9b45b959535f6eacfe6b986c35e1525c17 GIT binary patch literal 78474 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

lpp)d6+s??bApi= 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 z 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 IH#p$`0aHZdp#T5? literal 0 HcmV?d00001 diff --git a/static/styles/main.css b/static/styles/main.css new file mode 100644 index 0000000..d09cfeb --- /dev/null +++ b/static/styles/main.css @@ -0,0 +1,806 @@ +/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */ +@layer properties; +@layer theme, base, components, utilities; +@layer theme { + :root, :host { + --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", + "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", + "Courier New", monospace; + --color-blue-400: oklch(70.7% 0.165 254.624); + --color-blue-600: oklch(54.6% 0.245 262.881); + --color-blue-700: oklch(48.8% 0.243 264.376); + --color-gray-300: oklch(87.2% 0.01 258.338); + --color-gray-400: oklch(70.7% 0.022 261.325); + --color-gray-700: oklch(37.3% 0.034 259.733); + --color-gray-800: oklch(27.8% 0.033 256.848); + --color-gray-900: oklch(21% 0.034 264.665); + --color-black: #000; + --color-white: #fff; + --spacing: 0.25rem; + --text-sm: 0.875rem; + --text-sm--line-height: calc(1.25 / 0.875); + --text-lg: 1.125rem; + --text-lg--line-height: calc(1.75 / 1.125); + --text-xl: 1.25rem; + --text-xl--line-height: calc(1.75 / 1.25); + --text-2xl: 1.5rem; + --text-2xl--line-height: calc(2 / 1.5); + --text-4xl: 2.25rem; + --text-4xl--line-height: calc(2.5 / 2.25); + --text-5xl: 3rem; + --text-5xl--line-height: 1; + --font-weight-medium: 500; + --font-weight-semibold: 600; + --font-weight-bold: 700; + --font-weight-extrabold: 800; + --leading-tight: 1.25; + --radius-lg: 0.5rem; + --radius-2xl: 1rem; + --blur-md: 12px; + --default-transition-duration: 150ms; + --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); + --default-font-family: var(--font-sans); + --default-mono-font-family: var(--font-mono); + } +} +@layer base { + *, ::after, ::before, ::backdrop, ::file-selector-button { + box-sizing: border-box; + margin: 0; + padding: 0; + border: 0 solid; + } + html, :host { + line-height: 1.5; + -webkit-text-size-adjust: 100%; + tab-size: 4; + font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"); + font-feature-settings: var(--default-font-feature-settings, normal); + font-variation-settings: var(--default-font-variation-settings, normal); + -webkit-tap-highlight-color: transparent; + } + hr { + height: 0; + color: inherit; + border-top-width: 1px; + } + abbr:where([title]) { + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + } + h1, h2, h3, h4, h5, h6 { + font-size: inherit; + font-weight: inherit; + } + a { + color: inherit; + -webkit-text-decoration: inherit; + text-decoration: inherit; + } + b, strong { + font-weight: bolder; + } + code, kbd, samp, pre { + font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace); + font-feature-settings: var(--default-mono-font-feature-settings, normal); + font-variation-settings: var(--default-mono-font-variation-settings, normal); + font-size: 1em; + } + small { + font-size: 80%; + } + sub, sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; + } + sub { + bottom: -0.25em; + } + sup { + top: -0.5em; + } + table { + text-indent: 0; + border-color: inherit; + border-collapse: collapse; + } + :-moz-focusring { + outline: auto; + } + progress { + vertical-align: baseline; + } + summary { + display: list-item; + } + ol, ul, menu { + list-style: none; + } + img, svg, video, canvas, audio, iframe, embed, object { + display: block; + vertical-align: middle; + } + img, video { + max-width: 100%; + height: auto; + } + button, input, select, optgroup, textarea, ::file-selector-button { + font: inherit; + font-feature-settings: inherit; + font-variation-settings: inherit; + letter-spacing: inherit; + color: inherit; + border-radius: 0; + background-color: transparent; + opacity: 1; + } + :where(select:is([multiple], [size])) optgroup { + font-weight: bolder; + } + :where(select:is([multiple], [size])) optgroup option { + padding-inline-start: 20px; + } + ::file-selector-button { + margin-inline-end: 4px; + } + ::placeholder { + opacity: 1; + } + @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) { + ::placeholder { + color: currentcolor; + @supports (color: color-mix(in lab, red, red)) { + color: color-mix(in oklab, currentcolor 50%, transparent); + } + } + } + textarea { + resize: vertical; + } + ::-webkit-search-decoration { + -webkit-appearance: none; + } + ::-webkit-date-and-time-value { + min-height: 1lh; + text-align: inherit; + } + ::-webkit-datetime-edit { + display: inline-flex; + } + ::-webkit-datetime-edit-fields-wrapper { + padding: 0; + } + ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field { + padding-block: 0; + } + :-moz-ui-invalid { + box-shadow: none; + } + button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button { + appearance: button; + } + ::-webkit-inner-spin-button, ::-webkit-outer-spin-button { + height: auto; + } + [hidden]:where(:not([hidden="until-found"])) { + display: none !important; + } +} +@layer utilities { + .visible { + visibility: visible; + } + .absolute { + position: absolute; + } + .fixed { + position: fixed; + } + .relative { + position: relative; + } + .sticky { + position: sticky; + } + .inset-0 { + inset: calc(var(--spacing) * 0); + } + .top-0 { + top: calc(var(--spacing) * 0); + } + .top-full { + top: 100%; + } + .right-4 { + right: calc(var(--spacing) * 4); + } + .-z-5 { + z-index: calc(5 * -1); + } + .-z-10 { + z-index: calc(10 * -1); + } + .z-10 { + z-index: 10; + } + .z-50 { + z-index: 50; + } + .container { + width: 100%; + @media (width >= 40rem) { + max-width: 40rem; + } + @media (width >= 48rem) { + max-width: 48rem; + } + @media (width >= 64rem) { + max-width: 64rem; + } + @media (width >= 80rem) { + max-width: 80rem; + } + @media (width >= 96rem) { + max-width: 96rem; + } + } + .mx-auto { + margin-inline: auto; + } + .my-10 { + margin-block: calc(var(--spacing) * 10); + } + .mt-2 { + margin-top: calc(var(--spacing) * 2); + } + .mt-4 { + margin-top: calc(var(--spacing) * 4); + } + .mt-6 { + margin-top: calc(var(--spacing) * 6); + } + .mb-4 { + margin-bottom: calc(var(--spacing) * 4); + } + .block { + display: block; + } + .flex { + display: flex; + } + .hidden { + display: none; + } + .inline-block { + display: inline-block; + } + .h-6 { + height: calc(var(--spacing) * 6); + } + .min-h-screen { + min-height: 100vh; + } + .w-6 { + width: calc(var(--spacing) * 6); + } + .w-full { + width: 100%; + } + .flex-grow { + flex-grow: 1; + } + .flex-col { + flex-direction: column; + } + .items-center { + align-items: center; + } + .justify-between { + justify-content: space-between; + } + .space-y-2 { + :where(& > :not(:last-child)) { + --tw-space-y-reverse: 0; + margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse)); + margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse))); + } + } + .space-x-6 { + :where(& > :not(:last-child)) { + --tw-space-x-reverse: 0; + margin-inline-start: calc(calc(var(--spacing) * 6) * var(--tw-space-x-reverse)); + margin-inline-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-x-reverse))); + } + } + .scroll-smooth { + scroll-behavior: smooth; + } + .rounded-2xl { + border-radius: var(--radius-2xl); + } + .rounded-lg { + border-radius: var(--radius-lg); + } + .border { + border-style: var(--tw-border-style); + border-width: 1px; + } + .border-gray-700 { + border-color: var(--color-gray-700); + } + .border-gray-800 { + border-color: var(--color-gray-800); + } + .bg-black { + background-color: var(--color-black); + } + .bg-black\/70 { + background-color: color-mix(in srgb, #000 70%, transparent); + @supports (color: color-mix(in lab, red, red)) { + background-color: color-mix(in oklab, var(--color-black) 70%, transparent); + } + } + .bg-blue-600 { + background-color: var(--color-blue-600); + } + .bg-gray-900\/80 { + background-color: color-mix(in srgb, oklch(21% 0.034 264.665) 80%, transparent); + @supports (color: color-mix(in lab, red, red)) { + background-color: color-mix(in oklab, var(--color-gray-900) 80%, transparent); + } + } + .bg-transparent { + background-color: transparent; + } + .bg-\[url\(\'\/assets\/background\.webp\'\)\] { + background-image: url('/assets/background.webp'); + } + .bg-cover { + background-size: cover; + } + .bg-center { + background-position: center; + } + .px-3 { + padding-inline: calc(var(--spacing) * 3); + } + .px-4 { + padding-inline: calc(var(--spacing) * 4); + } + .px-6 { + padding-inline: calc(var(--spacing) * 6); + } + .py-2 { + padding-block: calc(var(--spacing) * 2); + } + .py-3 { + padding-block: calc(var(--spacing) * 3); + } + .py-4 { + padding-block: calc(var(--spacing) * 4); + } + .py-10 { + padding-block: calc(var(--spacing) * 10); + } + .pt-6 { + padding-top: calc(var(--spacing) * 6); + } + .text-center { + text-align: center; + } + .text-2xl { + font-size: var(--text-2xl); + line-height: var(--tw-leading, var(--text-2xl--line-height)); + } + .text-4xl { + font-size: var(--text-4xl); + line-height: var(--tw-leading, var(--text-4xl--line-height)); + } + .text-lg { + font-size: var(--text-lg); + line-height: var(--tw-leading, var(--text-lg--line-height)); + } + .text-sm { + font-size: var(--text-sm); + line-height: var(--tw-leading, var(--text-sm--line-height)); + } + .text-xl { + font-size: var(--text-xl); + line-height: var(--tw-leading, var(--text-xl--line-height)); + } + .leading-tight { + --tw-leading: var(--leading-tight); + line-height: var(--leading-tight); + } + .font-bold { + --tw-font-weight: var(--font-weight-bold); + font-weight: var(--font-weight-bold); + } + .font-extrabold { + --tw-font-weight: var(--font-weight-extrabold); + font-weight: var(--font-weight-extrabold); + } + .font-medium { + --tw-font-weight: var(--font-weight-medium); + font-weight: var(--font-weight-medium); + } + .font-semibold { + --tw-font-weight: var(--font-weight-semibold); + font-weight: var(--font-weight-semibold); + } + .text-blue-400 { + color: var(--color-blue-400); + } + .text-gray-300 { + color: var(--color-gray-300); + } + .text-gray-400 { + color: var(--color-gray-400); + } + .text-white { + color: var(--color-white); + } + .shadow { + --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)); + box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); + } + .shadow-xl { + --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1)); + box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); + } + .blur-md { + --tw-blur: blur(var(--blur-md)); + filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,); + } + .backdrop-blur-md { + --tw-backdrop-blur: blur(var(--blur-md)); + -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,); + backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,); + } + .backdrop-blur-none { + --tw-backdrop-blur: ; + -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,); + backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,); + } + .transition { + transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events; + transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); + transition-duration: var(--tw-duration, var(--default-transition-duration)); + } + .transition-colors { + transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to; + transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); + transition-duration: var(--tw-duration, var(--default-transition-duration)); + } + .duration-300 { + --tw-duration: 300ms; + transition-duration: 300ms; + } + .hover\:bg-blue-700 { + &:hover { + @media (hover: hover) { + background-color: var(--color-blue-700); + } + } + } + .hover\:text-blue-400 { + &:hover { + @media (hover: hover) { + color: var(--color-blue-400); + } + } + } + .hover\:text-white { + &:hover { + @media (hover: hover) { + color: var(--color-white); + } + } + } + .hover\:underline { + &:hover { + @media (hover: hover) { + text-decoration-line: underline; + } + } + } + .focus\:ring-2 { + &:focus { + --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); + box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); + } + } + .focus\:ring-white { + &:focus { + --tw-ring-color: var(--color-white); + } + } + .focus\:outline-none { + &:focus { + --tw-outline-style: none; + outline-style: none; + } + } + .md\:static { + @media (width >= 48rem) { + position: static; + } + } + .md\:mt-0 { + @media (width >= 48rem) { + margin-top: calc(var(--spacing) * 0); + } + } + .md\:flex { + @media (width >= 48rem) { + display: flex; + } + } + .md\:hidden { + @media (width >= 48rem) { + display: none; + } + } + .md\:flex-row { + @media (width >= 48rem) { + flex-direction: row; + } + } + .md\:items-center { + @media (width >= 48rem) { + align-items: center; + } + } + .md\:space-x-6 { + @media (width >= 48rem) { + :where(& > :not(:last-child)) { + --tw-space-x-reverse: 0; + margin-inline-start: calc(calc(var(--spacing) * 6) * var(--tw-space-x-reverse)); + margin-inline-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-x-reverse))); + } + } + } + .md\:py-0 { + @media (width >= 48rem) { + padding-block: calc(var(--spacing) * 0); + } + } + .md\:text-5xl { + @media (width >= 48rem) { + font-size: var(--text-5xl); + line-height: var(--tw-leading, var(--text-5xl--line-height)); + } + } +} +@property --tw-space-y-reverse { + syntax: "*"; + inherits: false; + initial-value: 0; +} +@property --tw-space-x-reverse { + syntax: "*"; + inherits: false; + initial-value: 0; +} +@property --tw-border-style { + syntax: "*"; + inherits: false; + initial-value: solid; +} +@property --tw-leading { + syntax: "*"; + inherits: false; +} +@property --tw-font-weight { + syntax: "*"; + inherits: false; +} +@property --tw-shadow { + syntax: "*"; + inherits: false; + initial-value: 0 0 #0000; +} +@property --tw-shadow-color { + syntax: "*"; + inherits: false; +} +@property --tw-shadow-alpha { + syntax: ""; + inherits: false; + initial-value: 100%; +} +@property --tw-inset-shadow { + syntax: "*"; + inherits: false; + initial-value: 0 0 #0000; +} +@property --tw-inset-shadow-color { + syntax: "*"; + inherits: false; +} +@property --tw-inset-shadow-alpha { + syntax: ""; + inherits: false; + initial-value: 100%; +} +@property --tw-ring-color { + syntax: "*"; + inherits: false; +} +@property --tw-ring-shadow { + syntax: "*"; + inherits: false; + initial-value: 0 0 #0000; +} +@property --tw-inset-ring-color { + syntax: "*"; + inherits: false; +} +@property --tw-inset-ring-shadow { + syntax: "*"; + inherits: false; + initial-value: 0 0 #0000; +} +@property --tw-ring-inset { + syntax: "*"; + inherits: false; +} +@property --tw-ring-offset-width { + syntax: ""; + inherits: false; + initial-value: 0px; +} +@property --tw-ring-offset-color { + syntax: "*"; + inherits: false; + initial-value: #fff; +} +@property --tw-ring-offset-shadow { + syntax: "*"; + inherits: false; + initial-value: 0 0 #0000; +} +@property --tw-blur { + syntax: "*"; + inherits: false; +} +@property --tw-brightness { + syntax: "*"; + inherits: false; +} +@property --tw-contrast { + syntax: "*"; + inherits: false; +} +@property --tw-grayscale { + syntax: "*"; + inherits: false; +} +@property --tw-hue-rotate { + syntax: "*"; + inherits: false; +} +@property --tw-invert { + syntax: "*"; + inherits: false; +} +@property --tw-opacity { + syntax: "*"; + inherits: false; +} +@property --tw-saturate { + syntax: "*"; + inherits: false; +} +@property --tw-sepia { + syntax: "*"; + inherits: false; +} +@property --tw-drop-shadow { + syntax: "*"; + inherits: false; +} +@property --tw-drop-shadow-color { + syntax: "*"; + inherits: false; +} +@property --tw-drop-shadow-alpha { + syntax: ""; + inherits: false; + initial-value: 100%; +} +@property --tw-drop-shadow-size { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-blur { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-brightness { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-contrast { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-grayscale { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-hue-rotate { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-invert { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-opacity { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-saturate { + syntax: "*"; + inherits: false; +} +@property --tw-backdrop-sepia { + syntax: "*"; + inherits: false; +} +@property --tw-duration { + syntax: "*"; + inherits: false; +} +@layer properties { + @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) { + *, ::before, ::after, ::backdrop { + --tw-space-y-reverse: 0; + --tw-space-x-reverse: 0; + --tw-border-style: solid; + --tw-leading: initial; + --tw-font-weight: initial; + --tw-shadow: 0 0 #0000; + --tw-shadow-color: initial; + --tw-shadow-alpha: 100%; + --tw-inset-shadow: 0 0 #0000; + --tw-inset-shadow-color: initial; + --tw-inset-shadow-alpha: 100%; + --tw-ring-color: initial; + --tw-ring-shadow: 0 0 #0000; + --tw-inset-ring-color: initial; + --tw-inset-ring-shadow: 0 0 #0000; + --tw-ring-inset: initial; + --tw-ring-offset-width: 0px; + --tw-ring-offset-color: #fff; + --tw-ring-offset-shadow: 0 0 #0000; + --tw-blur: initial; + --tw-brightness: initial; + --tw-contrast: initial; + --tw-grayscale: initial; + --tw-hue-rotate: initial; + --tw-invert: initial; + --tw-opacity: initial; + --tw-saturate: initial; + --tw-sepia: initial; + --tw-drop-shadow: initial; + --tw-drop-shadow-color: initial; + --tw-drop-shadow-alpha: 100%; + --tw-drop-shadow-size: initial; + --tw-backdrop-blur: initial; + --tw-backdrop-brightness: initial; + --tw-backdrop-contrast: initial; + --tw-backdrop-grayscale: initial; + --tw-backdrop-hue-rotate: initial; + --tw-backdrop-invert: initial; + --tw-backdrop-opacity: initial; + --tw-backdrop-saturate: initial; + --tw-backdrop-sepia: initial; + --tw-duration: initial; + } + } +} diff --git a/styles/main.css b/styles/main.css new file mode 100644 index 0000000..f1d8c73 --- /dev/null +++ b/styles/main.css @@ -0,0 +1 @@ +@import "tailwindcss"; diff --git a/tailwind.config.js b/tailwind.config.js new file mode 100644 index 0000000..dffa131 --- /dev/null +++ b/tailwind.config.js @@ -0,0 +1,9 @@ +module.exports = { + purge: ["./templates/**/*.html", "./theme/**/*.html"], + darkMode: "class", + theme: {}, + variants: {}, + plugins: [ + require('@tailwindcss/typography'), + ], +}; diff --git a/templates/base.html b/templates/base.html new file mode 100644 index 0000000..d40c6c8 --- /dev/null +++ b/templates/base.html @@ -0,0 +1,109 @@ + + + + + + {% block title %}{% endblock title %} - Coolans + + + + + + +

+
+ + +
+ + +
+
+
+ {% block content %}{% endblock content %} +
+
+
+ + +
+
+
+ © {{ now() | date(format="%Y") }} Coolans. All rights + reserved. +
+
+
+ + diff --git a/templates/blog-page.html b/templates/blog-page.html new file mode 100644 index 0000000..aebfa59 --- /dev/null +++ b/templates/blog-page.html @@ -0,0 +1,10 @@ +{% extends "base.html" %} + +{% block content %} +

+ {{ page.title }} +

+

{{ page.date }}

+{{ page.content | safe }} +{% endblock content %} + diff --git a/templates/blog.html b/templates/blog.html new file mode 100644 index 0000000..c8050f6 --- /dev/null +++ b/templates/blog.html @@ -0,0 +1,14 @@ +{% extends "base.html" %} + +{% block title %} Blogs {% endblock title %} + +{% block content %} +

+ {{ section.title }} +

+ +{% endblock content %} diff --git a/templates/index.html b/templates/index.html new file mode 100644 index 0000000..9a130cb --- /dev/null +++ b/templates/index.html @@ -0,0 +1,126 @@ +{% extends "base.html" %} {% block title %}Welcome{% endblock title %} {% block +content %} +

+ Hi, I'm Tanveer — a Full Stack Developer & Self-Taught SysAdmin. +

+ +

+ I build performant, secure, and maintainable web applications using + Laravel. Beyond web + development, I handle Linux servers, automate deployment pipelines, and + optimize infrastructure using tools like + NGINX, + Docker, and + systemd. +

+ +

+ From building REST APIs and scalable backends to managing uptime and DevOps + workflows — I care deeply about clean code, automation, and reliability. +

+ +

+ My goal? Deliver fast, secure, and elegant solutions that make an impact — + whether for a side project, startup, or enterprise system. +

+ + + +
+ +
+

📬 Get in Touch

+

+ I'm always open to collaborating, freelancing, or just chatting tech. +

+ +
+ + + +{% endblock content %} diff --git a/web-scraping.html b/web-scraping.html deleted file mode 100644 index d446bfe..0000000 --- a/web-scraping.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - - Web Scraping - - -

Web Scraping

-
-

Web scraping is an automatic method to obtain large amounts of data from websites. Most of this data is unstructured data in an HTML format which is then converted into structured data in a spreadsheet or a database so that it can be used in various applications.

-

There are many different ways to perform web scraping to obtain data from websites. These include using online services, particular API’s or even creating your code for web scraping from scratch. (Source:Geeks for geeks)

-

Repository link

-

Websites which I scraped successfully >>

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Website NameVideo QualitiesSTATUS

Gogoanime

    -
  • Auto
  • -

Animixplay

    -
  • Auto
  • -

Xstreamcdn

    -
  • 480p
  • -
  • 720p
  • -
  • 1080p
  • -

Doodstream

    -
  • High
  • -

Mp4Upload

    -
  • High
  • -

Odnoklassniki(okru)

    -
  • 144p
  • -
  • 240p
  • -
  • 360p
  • -
  • 480p
  • -
  • 720p
  • -
  • 1080p
  • -

Streamlare

    -
  • High
  • -

Hentaimama(NSFW)

    -
  • Auto
  • -

Theflix

    -
  • High
  • -
- -