updated image optimisation, updated readme accrodingly. fixed image issues, fixed navbar on mobile view + more
3
.github/workflows/build-deploy.yml
vendored
@@ -32,6 +32,9 @@ jobs:
|
|||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: npm ci
|
run: npm ci
|
||||||
|
|
||||||
|
- name: Optimise images
|
||||||
|
run: node scripts/optimise-images.js
|
||||||
|
|
||||||
- name: Build project
|
- name: Build project
|
||||||
run: npm run build
|
run: npm run build
|
||||||
|
|
||||||
|
|||||||
3
.gitignore
vendored
@@ -12,6 +12,9 @@ dist
|
|||||||
dist-ssr
|
dist-ssr
|
||||||
*.local
|
*.local
|
||||||
|
|
||||||
|
# Image optimization cache
|
||||||
|
public/assets/**/optimised
|
||||||
|
|
||||||
# Editor directories and files
|
# Editor directories and files
|
||||||
.vite/
|
.vite/
|
||||||
.vscode/
|
.vscode/
|
||||||
|
|||||||
64
README.md
@@ -83,7 +83,15 @@ cd lapikud.github.io
|
|||||||
npm install
|
npm install
|
||||||
```
|
```
|
||||||
|
|
||||||
**3. Start the dev server** — this runs the site locally so you can see your changes live:
|
**3. Optimise images** — the optimised image variants are not stored in the repo, so you need to generate them locally before running the site:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run optimise
|
||||||
|
```
|
||||||
|
|
||||||
|
> You only need to run this once after cloning, and again whenever you add or change images in any `original/` folder.
|
||||||
|
|
||||||
|
**4. Start the dev server** — this runs the site locally so you can see your changes live:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
npm run dev
|
npm run dev
|
||||||
@@ -93,64 +101,22 @@ Then open the URL it gives you (usually `http://localhost:5173`) in your browser
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🖼️ Images — please optimize before committing!
|
## 🖼️ Adding images
|
||||||
|
|
||||||
Nobody wants to load a 5MB photo that's displayed at 100×100px. Always resize images before adding them to the project.
|
Place your original image files (PNG, JPG, etc.) into the appropriate `public/assets/{category}/original/` folder, then run:
|
||||||
|
|
||||||
Install FFmpeg first:
|
|
||||||
|
|
||||||
<details>
|
|
||||||
<summary>Linux / WSL / Ubuntu</summary>
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo apt install ffmpeg
|
npm run optimise
|
||||||
```
|
```
|
||||||
|
|
||||||
</details>
|
The script will generate optimised WebP and JPG variants automatically. **Do not commit anything inside `optimised/` folders** — those are generated and ignored by git.
|
||||||
|
|
||||||
<details>
|
> SVGs don't need optimising — just place them directly where they're needed, no `original/` folder required.
|
||||||
<summary>Windows (without WSL)</summary>
|
|
||||||
|
|
||||||
**Option A — via winget:**
|
|
||||||
```bash
|
|
||||||
winget install ffmpeg
|
|
||||||
```
|
|
||||||
|
|
||||||
**Option B — manually:**
|
|
||||||
1. Download from [ffmpeg.org/download.html](https://ffmpeg.org/download.html)
|
|
||||||
2. Extract the archive
|
|
||||||
3. Add the `bin` folder to your PATH
|
|
||||||
|
|
||||||
</details>
|
|
||||||
|
|
||||||
<details>
|
|
||||||
<summary>macOS</summary>
|
|
||||||
|
|
||||||
```bash
|
|
||||||
brew install ffmpeg
|
|
||||||
```
|
|
||||||
|
|
||||||
</details>
|
|
||||||
|
|
||||||
### Resize commands
|
|
||||||
|
|
||||||
Once FFmpeg is installed, use the right size for the job:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Small thumbnails (shown at 100–300px)
|
|
||||||
ffmpeg -i input -vf scale=400:-1 output.jpg
|
|
||||||
|
|
||||||
# Medium images (shown at 300–800px)
|
|
||||||
ffmpeg -i input -vf scale=1200:-1 output.jpg
|
|
||||||
|
|
||||||
# Hero / full-width images
|
|
||||||
ffmpeg -i input -vf scale=1920:-1 output.jpg
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🚀 Deployment
|
## 🚀 Deployment
|
||||||
|
|
||||||
Nothing to do here — GitHub automatically builds and deploys the site whenever something is pushed to the `main` branch.
|
Nothing to do here — GitHub automatically builds and deploys the site whenever something is pushed to the `v2` branch. The optimised images are generated as part of the build, so you don't need to worry about that either.
|
||||||
|
|
||||||
It usually takes **2–5 minutes**. You can watch it happen in the [Actions tab](https://github.com/Lapikud/lapikud.github.io/actions).
|
It usually takes **2–5 minutes**. You can watch it happen in the [Actions tab](https://github.com/Lapikud/lapikud.github.io/actions).
|
||||||
|
Before Width: | Height: | Size: 96 KiB After Width: | Height: | Size: 96 KiB |
571
package-lock.json
generated
@@ -12,6 +12,7 @@
|
|||||||
"js-yaml": "^4.1.1",
|
"js-yaml": "^4.1.1",
|
||||||
"lucide-svelte": "^0.554.0",
|
"lucide-svelte": "^0.554.0",
|
||||||
"maplibre-gl": "^5.19.0",
|
"maplibre-gl": "^5.19.0",
|
||||||
|
"sharp": "^0.34.5",
|
||||||
"svelte-maplibre": "^1.2.6",
|
"svelte-maplibre": "^1.2.6",
|
||||||
"tailwindcss": "^4.1.17"
|
"tailwindcss": "^4.1.17"
|
||||||
},
|
},
|
||||||
@@ -517,6 +518,471 @@
|
|||||||
"node": ">=18"
|
"node": ">=18"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@img/colour": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-darwin-arm64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-darwin-arm64": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-darwin-x64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-darwin-x64": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-darwin-arm64": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-darwin-x64": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-linux-arm": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==",
|
||||||
|
"cpu": [
|
||||||
|
"arm"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-linux-arm64": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-linux-ppc64": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==",
|
||||||
|
"cpu": [
|
||||||
|
"ppc64"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-linux-riscv64": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==",
|
||||||
|
"cpu": [
|
||||||
|
"riscv64"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-linux-s390x": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==",
|
||||||
|
"cpu": [
|
||||||
|
"s390x"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-linux-x64": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-linuxmusl-arm64": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-libvips-linuxmusl-x64": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-linux-arm": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-linux-arm": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-linux-arm64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-linux-arm64": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-linux-ppc64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==",
|
||||||
|
"cpu": [
|
||||||
|
"ppc64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-linux-ppc64": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-linux-riscv64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==",
|
||||||
|
"cpu": [
|
||||||
|
"riscv64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-linux-riscv64": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-linux-s390x": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==",
|
||||||
|
"cpu": [
|
||||||
|
"s390x"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-linux-s390x": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-linux-x64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-linux-x64": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-linuxmusl-arm64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-linuxmusl-arm64": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-linuxmusl-x64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-libvips-linuxmusl-x64": "1.2.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-wasm32": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==",
|
||||||
|
"cpu": [
|
||||||
|
"wasm32"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT",
|
||||||
|
"optional": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@emnapi/runtime": "^1.7.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-win32-arm64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0 AND LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-win32-ia32": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==",
|
||||||
|
"cpu": [
|
||||||
|
"ia32"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0 AND LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@img/sharp-win32-x64": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "Apache-2.0 AND LGPL-3.0-or-later",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@jridgewell/gen-mapping": {
|
"node_modules/@jridgewell/gen-mapping": {
|
||||||
"version": "0.3.13",
|
"version": "0.3.13",
|
||||||
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
|
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
|
||||||
@@ -1540,6 +2006,12 @@
|
|||||||
"@types/geojson": "*"
|
"@types/geojson": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@types/trusted-types": {
|
||||||
|
"version": "2.0.7",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz",
|
||||||
|
"integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==",
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/@vitest/expect": {
|
"node_modules/@vitest/expect": {
|
||||||
"version": "3.2.4",
|
"version": "3.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.4.tgz",
|
"resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.4.tgz",
|
||||||
@@ -1645,6 +2117,7 @@
|
|||||||
"version": "5.3.2",
|
"version": "5.3.2",
|
||||||
"resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz",
|
||||||
"integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==",
|
"integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==",
|
||||||
|
"dev": true,
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">= 0.4"
|
"node": ">= 0.4"
|
||||||
@@ -1886,6 +2359,12 @@
|
|||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/devalue": {
|
||||||
|
"version": "5.7.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/devalue/-/devalue-5.7.1.tgz",
|
||||||
|
"integrity": "sha512-MUbZ586EgQqdRnC4yDrlod3BEdyvE4TapGYHMW2CiaW+KkkFmWEFqBUaLltEZCGi0iFXCEjRF0OjF0DV2QHjOA==",
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/dom-accessibility-api": {
|
"node_modules/dom-accessibility-api": {
|
||||||
"version": "0.5.16",
|
"version": "0.5.16",
|
||||||
"resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz",
|
"resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz",
|
||||||
@@ -1987,12 +2466,20 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/esrap": {
|
"node_modules/esrap": {
|
||||||
"version": "2.1.3",
|
"version": "2.2.5",
|
||||||
"resolved": "https://registry.npmjs.org/esrap/-/esrap-2.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/esrap/-/esrap-2.2.5.tgz",
|
||||||
"integrity": "sha512-T/Dhhv/QH+yYmiaLz9SA3PW+YyenlnRKDNdtlYJrSOBmNsH4nvPux+mTwx7p+wAedlJrGoZtXNI0a0MjQ2QkVg==",
|
"integrity": "sha512-/yLB1538mag+dn0wsePTe8C0rDIjUOaJpMs2McodSzmM2msWcZsBSdRtg6HOBt0A/r82BN+Md3pgwSc/uWt2Ig==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@jridgewell/sourcemap-codec": "^1.4.15"
|
"@jridgewell/sourcemap-codec": "^1.4.15"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@typescript-eslint/types": "^8.2.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@typescript-eslint/types": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/fdir": {
|
"node_modules/fdir": {
|
||||||
@@ -2608,9 +3095,9 @@
|
|||||||
"license": "ISC"
|
"license": "ISC"
|
||||||
},
|
},
|
||||||
"node_modules/picomatch": {
|
"node_modules/picomatch": {
|
||||||
"version": "4.0.3",
|
"version": "4.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz",
|
||||||
"integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==",
|
"integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=12"
|
"node": ">=12"
|
||||||
@@ -2680,9 +3167,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/protocol-buffers-schema": {
|
"node_modules/protocol-buffers-schema": {
|
||||||
"version": "3.6.0",
|
"version": "3.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.6.1.tgz",
|
||||||
"integrity": "sha512-TdDRD+/QNdrCGCE7v8340QyuXd4kIWIgapsE2+n/SaGiSSbomYl4TjHlvIoCWRpE7wFt02EpB35VVA2ImcBVqw==",
|
"integrity": "sha512-VG2K63Igkiv9p76tk1lilczEK1cT+kCjKtkdhw1dQZV3k3IXJbd3o6Ho8b9zJZaHSnT2hKe4I+ObmX9w6m5SmQ==",
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/quickselect": {
|
"node_modules/quickselect": {
|
||||||
@@ -2834,7 +3321,6 @@
|
|||||||
"version": "7.7.4",
|
"version": "7.7.4",
|
||||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
|
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
|
||||||
"integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
|
"integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
|
||||||
"dev": true,
|
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"bin": {
|
"bin": {
|
||||||
"semver": "bin/semver.js"
|
"semver": "bin/semver.js"
|
||||||
@@ -2843,6 +3329,50 @@
|
|||||||
"node": ">=10"
|
"node": ">=10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/sharp": {
|
||||||
|
"version": "0.34.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz",
|
||||||
|
"integrity": "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==",
|
||||||
|
"hasInstallScript": true,
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"dependencies": {
|
||||||
|
"@img/colour": "^1.0.0",
|
||||||
|
"detect-libc": "^2.1.2",
|
||||||
|
"semver": "^7.7.3"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/libvips"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@img/sharp-darwin-arm64": "0.34.5",
|
||||||
|
"@img/sharp-darwin-x64": "0.34.5",
|
||||||
|
"@img/sharp-libvips-darwin-arm64": "1.2.4",
|
||||||
|
"@img/sharp-libvips-darwin-x64": "1.2.4",
|
||||||
|
"@img/sharp-libvips-linux-arm": "1.2.4",
|
||||||
|
"@img/sharp-libvips-linux-arm64": "1.2.4",
|
||||||
|
"@img/sharp-libvips-linux-ppc64": "1.2.4",
|
||||||
|
"@img/sharp-libvips-linux-riscv64": "1.2.4",
|
||||||
|
"@img/sharp-libvips-linux-s390x": "1.2.4",
|
||||||
|
"@img/sharp-libvips-linux-x64": "1.2.4",
|
||||||
|
"@img/sharp-libvips-linuxmusl-arm64": "1.2.4",
|
||||||
|
"@img/sharp-libvips-linuxmusl-x64": "1.2.4",
|
||||||
|
"@img/sharp-linux-arm": "0.34.5",
|
||||||
|
"@img/sharp-linux-arm64": "0.34.5",
|
||||||
|
"@img/sharp-linux-ppc64": "0.34.5",
|
||||||
|
"@img/sharp-linux-riscv64": "0.34.5",
|
||||||
|
"@img/sharp-linux-s390x": "0.34.5",
|
||||||
|
"@img/sharp-linux-x64": "0.34.5",
|
||||||
|
"@img/sharp-linuxmusl-arm64": "0.34.5",
|
||||||
|
"@img/sharp-linuxmusl-x64": "0.34.5",
|
||||||
|
"@img/sharp-wasm32": "0.34.5",
|
||||||
|
"@img/sharp-win32-arm64": "0.34.5",
|
||||||
|
"@img/sharp-win32-ia32": "0.34.5",
|
||||||
|
"@img/sharp-win32-x64": "0.34.5"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/source-map": {
|
"node_modules/source-map": {
|
||||||
"version": "0.6.1",
|
"version": "0.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||||
@@ -2921,21 +3451,23 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/svelte": {
|
"node_modules/svelte": {
|
||||||
"version": "5.43.13",
|
"version": "5.55.4",
|
||||||
"resolved": "https://registry.npmjs.org/svelte/-/svelte-5.43.13.tgz",
|
"resolved": "https://registry.npmjs.org/svelte/-/svelte-5.55.4.tgz",
|
||||||
"integrity": "sha512-K1QJbpc71OHs3egN/ZHN+nsH/eE/eJQUbtlTAAXVejOOjsFx9hM96fCX5fwPQIYclJfVS8D96RDFA76nZsrJ3w==",
|
"integrity": "sha512-q8DFohk6vUswSng95IZb9nzWJnbINZsK7OiM1snAa3qCjJBL0ZQpvMyAaVXjUukdM75J/m8UE8xwqat8Ors/zQ==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@jridgewell/remapping": "^2.3.4",
|
"@jridgewell/remapping": "^2.3.4",
|
||||||
"@jridgewell/sourcemap-codec": "^1.5.0",
|
"@jridgewell/sourcemap-codec": "^1.5.0",
|
||||||
"@sveltejs/acorn-typescript": "^1.0.5",
|
"@sveltejs/acorn-typescript": "^1.0.5",
|
||||||
"@types/estree": "^1.0.5",
|
"@types/estree": "^1.0.5",
|
||||||
|
"@types/trusted-types": "^2.0.7",
|
||||||
"acorn": "^8.12.1",
|
"acorn": "^8.12.1",
|
||||||
"aria-query": "^5.3.1",
|
"aria-query": "5.3.1",
|
||||||
"axobject-query": "^4.1.0",
|
"axobject-query": "^4.1.0",
|
||||||
"clsx": "^2.1.1",
|
"clsx": "^2.1.1",
|
||||||
|
"devalue": "^5.6.4",
|
||||||
"esm-env": "^1.2.1",
|
"esm-env": "^1.2.1",
|
||||||
"esrap": "^2.1.0",
|
"esrap": "^2.2.4",
|
||||||
"is-reference": "^3.0.3",
|
"is-reference": "^3.0.3",
|
||||||
"locate-character": "^3.0.0",
|
"locate-character": "^3.0.0",
|
||||||
"magic-string": "^0.30.11",
|
"magic-string": "^0.30.11",
|
||||||
@@ -3020,6 +3552,15 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/svelte/node_modules/aria-query": {
|
||||||
|
"version": "5.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.1.tgz",
|
||||||
|
"integrity": "sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==",
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/svelte2tsx": {
|
"node_modules/svelte2tsx": {
|
||||||
"version": "0.7.51",
|
"version": "0.7.51",
|
||||||
"resolved": "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.7.51.tgz",
|
"resolved": "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.7.51.tgz",
|
||||||
|
|||||||
@@ -9,8 +9,8 @@
|
|||||||
"preview": "vite preview",
|
"preview": "vite preview",
|
||||||
"storybook": "storybook dev -p 6006",
|
"storybook": "storybook dev -p 6006",
|
||||||
"build-storybook": "storybook build",
|
"build-storybook": "storybook build",
|
||||||
"prestorybook": "node generate-stories.js",
|
"generate-stories": "node scripts/generate-stories.js",
|
||||||
"prebuild-storybook": "node generate-stories.js"
|
"optimise": "node scripts/optimise-images.js"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@storybook/addon-svelte-csf": "^5.0.11",
|
"@storybook/addon-svelte-csf": "^5.0.11",
|
||||||
@@ -29,6 +29,7 @@
|
|||||||
"js-yaml": "^4.1.1",
|
"js-yaml": "^4.1.1",
|
||||||
"lucide-svelte": "^0.554.0",
|
"lucide-svelte": "^0.554.0",
|
||||||
"maplibre-gl": "^5.19.0",
|
"maplibre-gl": "^5.19.0",
|
||||||
|
"sharp": "^0.34.5",
|
||||||
"svelte-maplibre": "^1.2.6",
|
"svelte-maplibre": "^1.2.6",
|
||||||
"tailwindcss": "^4.1.17"
|
"tailwindcss": "^4.1.17"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,35 +1,35 @@
|
|||||||
# Management contact info
|
# Management contact info
|
||||||
|
|
||||||
- name: Christopher Rammul
|
- name: Christopher Rammul
|
||||||
photo: Christopher_Rammul.jpg
|
photo: Christopher_Rammul
|
||||||
role: Juhatuse esimees
|
role: Juhatuse esimees
|
||||||
subrole: Meie suur isa
|
subrole: Meie suur isa
|
||||||
email: christopher@lapikud.ee
|
email: christopher@lapikud.ee
|
||||||
phone: +372 555 00 221
|
phone: +372 555 00 221
|
||||||
|
|
||||||
- name: Erki Lasberg
|
- name: Erki Lasberg
|
||||||
photo: Erki_Lasberg.jpg
|
photo: Erki_Lasberg
|
||||||
role: Juhatuse liige
|
role: Juhatuse liige
|
||||||
subrole: Helpdeski juht
|
subrole: Helpdeski juht
|
||||||
email: erki@lapikud.ee
|
email: erki@lapikud.ee
|
||||||
phone: +372 5907 9190
|
phone: +372 5907 9190
|
||||||
|
|
||||||
- name: Kerdo Käärma
|
- name: Kerdo Käärma
|
||||||
photo: Kerdo_Kaarma.jpg
|
photo: Kerdo_Kaarma
|
||||||
role: Juhatuse liige
|
role: Juhatuse liige
|
||||||
subrole: Tarkvaravaldkonna juht
|
subrole: Tarkvaravaldkonna juht
|
||||||
email: kerdo@lapikud.ee
|
email: kerdo@lapikud.ee
|
||||||
phone: +372 5807 2867
|
phone: +372 5807 2867
|
||||||
|
|
||||||
- name: Reio Opromei
|
- name: Reio Opromei
|
||||||
photo: Reio_Opromei.jpg
|
photo: Reio_Opromei
|
||||||
role: Juhatuse liige
|
role: Juhatuse liige
|
||||||
subrole: Kultuurivaldkonna juht
|
subrole: Kultuurivaldkonna juht
|
||||||
email: reio@lapikud.ee
|
email: reio@lapikud.ee
|
||||||
phone: +372 5315 8489
|
phone: +372 5315 8489
|
||||||
|
|
||||||
- name: Rene Arumetsa
|
- name: Rene Arumetsa
|
||||||
photo: Rene_Arumetsa.jpg
|
photo: Rene_Arumetsa
|
||||||
role: Juhatuse liige
|
role: Juhatuse liige
|
||||||
subrole: Finantsjuht
|
subrole: Finantsjuht
|
||||||
email: rene@lapikud.ee
|
email: rene@lapikud.ee
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
- name: Agnes Triin Saga
|
- name: Agnes Triin Saga
|
||||||
age: 28
|
age: 28
|
||||||
photo: agnes_triin_saga_mentor.jpg
|
photo: agnes_triin_saga_mentor
|
||||||
speciality: Süsteemi administaator
|
speciality: Süsteemi administaator
|
||||||
teams: ['Helpdesk']
|
teams: ['Helpdesk']
|
||||||
term: 3
|
term: 3
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
- name: Christopher Rammul
|
- name: Christopher Rammul
|
||||||
age: 23
|
age: 23
|
||||||
photo: christopher_rammul_mentor.jpg
|
photo: christopher_rammul_mentor
|
||||||
speciality: Mehhatroonika
|
speciality: Mehhatroonika
|
||||||
teams: ['Kultuur', 'Juhatus']
|
teams: ['Kultuur', 'Juhatus']
|
||||||
contactMethods:
|
contactMethods:
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
- name: Erki Lasberg
|
- name: Erki Lasberg
|
||||||
age: 23
|
age: 23
|
||||||
photo: erki_lasberg_mentor.jpg
|
photo: erki_lasberg_mentor
|
||||||
speciality: IT süsteemide administreerimine
|
speciality: IT süsteemide administreerimine
|
||||||
teams: ['Helpdesk', 'Juhatus']
|
teams: ['Helpdesk', 'Juhatus']
|
||||||
term: 3
|
term: 3
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
|
|
||||||
- name: Jürjo Eibak
|
- name: Jürjo Eibak
|
||||||
age: 26
|
age: 26
|
||||||
photo: jürjo_eibak_mentor.jpg
|
photo: jürjo_eibak_mentor
|
||||||
speciality: Salastatud
|
speciality: Salastatud
|
||||||
teams: ['Kultuur']
|
teams: ['Kultuur']
|
||||||
contactMethods:
|
contactMethods:
|
||||||
@@ -69,7 +69,7 @@
|
|||||||
|
|
||||||
- name: Katri Lotamõis
|
- name: Katri Lotamõis
|
||||||
age: 29
|
age: 29
|
||||||
photo: katri_lotamõis_mentor.jpg
|
photo: katri_lotamõis_mentor
|
||||||
speciality: Tarkvaraarendus
|
speciality: Tarkvaraarendus
|
||||||
teams: ['Kultuur', 'Tarkvara']
|
teams: ['Kultuur', 'Tarkvara']
|
||||||
term:
|
term:
|
||||||
@@ -83,7 +83,7 @@
|
|||||||
|
|
||||||
- name: Kerdo Käärma
|
- name: Kerdo Käärma
|
||||||
age: 22
|
age: 22
|
||||||
photo: kerdo_käärma_mentor.jpg
|
photo: kerdo_käärma_mentor
|
||||||
speciality: IT süsteemide arendus
|
speciality: IT süsteemide arendus
|
||||||
teams: ['Kultuur', 'Tarkvara', 'Juhatus']
|
teams: ['Kultuur', 'Tarkvara', 'Juhatus']
|
||||||
term: 3
|
term: 3
|
||||||
@@ -103,7 +103,7 @@
|
|||||||
|
|
||||||
- name: Reio Opromei
|
- name: Reio Opromei
|
||||||
age: 24
|
age: 24
|
||||||
photo: reio_opromei_mentor.jpg
|
photo: reio_opromei_mentor
|
||||||
speciality: IT süsteemide arendus
|
speciality: IT süsteemide arendus
|
||||||
teams: ['Kultuur', 'Juhatus']
|
teams: ['Kultuur', 'Juhatus']
|
||||||
term:
|
term:
|
||||||
@@ -121,7 +121,7 @@
|
|||||||
|
|
||||||
- name: Rene Arumetsa
|
- name: Rene Arumetsa
|
||||||
age: 29
|
age: 29
|
||||||
photo: rene_arumetsa_mentor.jpg
|
photo: rene_arumetsa_mentor
|
||||||
speciality: IT süsteemide administeerimine
|
speciality: IT süsteemide administeerimine
|
||||||
teams: ['Helpdesk', 'Tarkvara', 'Juhatus']
|
teams: ['Helpdesk', 'Tarkvara', 'Juhatus']
|
||||||
term: 3
|
term: 3
|
||||||
@@ -142,7 +142,7 @@
|
|||||||
|
|
||||||
- name: Lembitu Valdmets
|
- name: Lembitu Valdmets
|
||||||
age: 31
|
age: 31
|
||||||
photo: lembitu_valdmets_mentor.jpg
|
photo: lembitu_valdmets_mentor
|
||||||
speciality: Arvutisüsteemid (Lõpetanud)
|
speciality: Arvutisüsteemid (Lõpetanud)
|
||||||
teams: ['Helpdesk']
|
teams: ['Helpdesk']
|
||||||
term: null
|
term: null
|
||||||
|
|||||||
@@ -1,22 +1,22 @@
|
|||||||
# Our work
|
# Our work
|
||||||
#
|
#
|
||||||
- title: Tipilan
|
- title: Tipilan
|
||||||
photo: tipilan.jpg
|
photo: tipilan
|
||||||
url: http://tipilan.ee/
|
url: http://tipilan.ee/
|
||||||
description: Tipilan on Eesti suurim üliõpilaste korraldatav LAN-üritus. Lapikud tagas ürituse IT-infrastruktuuri ja veebilehe toimimise.
|
description: Tipilan on Eesti suurim üliõpilaste korraldatav LAN-üritus. Lapikud tagas ürituse IT-infrastruktuuri ja veebilehe toimimise.
|
||||||
|
|
||||||
- title: Remondikohvik
|
- title: Remondikohvik
|
||||||
photo: remondikohvik.jpg
|
photo: remondikohvik
|
||||||
url: https://remondikohvik.lapikud.ee/
|
url: https://remondikohvik.lapikud.ee/
|
||||||
description: Remondikohvik on Lapikute poolt algatatud ja korraldatud projekt, mis annab asjadele teise elu läbi parandamise. Projekt hõlmab nii ürituste korraldamist kui ka veebilehe väljatöötamist.
|
description: Remondikohvik on Lapikute poolt algatatud ja korraldatud projekt, mis annab asjadele teise elu läbi parandamise. Projekt hõlmab nii ürituste korraldamist kui ka veebilehe väljatöötamist.
|
||||||
|
|
||||||
- title: Tallinna Tehnikaülikooli Muuseumi eksponaadid
|
- title: Tallinna Tehnikaülikooli Muuseumi eksponaadid
|
||||||
photo: ttu_muusem_placeholder.jpg
|
photo: ttu_muusem_placeholder
|
||||||
url:
|
url:
|
||||||
description: Töö valmis september 2018.
|
description: Töö valmis september 2018.
|
||||||
|
|
||||||
- title: ENLi koduleht
|
- title: ENLi koduleht
|
||||||
photo: eesti_noorteühenduste_liit.jpg
|
photo: eesti_noorteühenduste_liit
|
||||||
url: http://enl.ee/
|
url: http://enl.ee/
|
||||||
description: Tegime Eesti Noorteühenduste Liidule uue landing lehe, samuti tegime pluginatega seotud parandusi.
|
description: Tegime Eesti Noorteühenduste Liidule uue landing lehe, samuti tegime pluginatega seotud parandusi.
|
||||||
|
|
||||||
@@ -33,72 +33,72 @@
|
|||||||
# description: Tartus toimus IRL Hitmani mäng mille veebirakenduse me valmistasime
|
# description: Tartus toimus IRL Hitmani mäng mille veebirakenduse me valmistasime
|
||||||
|
|
||||||
- title: Taksod.net Android äpp
|
- title: Taksod.net Android äpp
|
||||||
photo: taksod-net-android.jpg
|
photo: taksod-net-android
|
||||||
url: https://play.google.com/store/apps/details?id=net.taksod.android
|
url: https://play.google.com/store/apps/details?id=net.taksod.android
|
||||||
description: Androidi äpp, milles on võimalik taksofirma otsida ning läbi äpi kohe helistada ja takso tellida.
|
description: Androidi äpp, milles on võimalik taksofirma otsida ning läbi äpi kohe helistada ja takso tellida.
|
||||||
|
|
||||||
- title: Taksod.net iOS äpp
|
- title: Taksod.net iOS äpp
|
||||||
photo: taksod-net-ios.jpg
|
photo: taksod-net-ios
|
||||||
url: https://itunes.apple.com/ee/app/taksod-net/id1230208509?mt=8
|
url: https://itunes.apple.com/ee/app/taksod-net/id1230208509?mt=8
|
||||||
description: iOS äpp, milles on võimalik taksofirma otsida ning läbi äpi kohe helistada ja takso tellida.
|
description: iOS äpp, milles on võimalik taksofirma otsida ning läbi äpi kohe helistada ja takso tellida.
|
||||||
|
|
||||||
- title: Osaluskogud Eestis
|
- title: Osaluskogud Eestis
|
||||||
photo: osaluskogud_eestis.jpg
|
photo: osaluskogud_eestis
|
||||||
url:
|
url:
|
||||||
description: Teostasime lehel täiendusi. Tänaseks on portaali omanikud selle sulgenud.
|
description: Teostasime lehel täiendusi. Tänaseks on portaali omanikud selle sulgenud.
|
||||||
|
|
||||||
- title: Tallinna Tehnikaülikooli Puhkpilliorkester
|
- title: Tallinna Tehnikaülikooli Puhkpilliorkester
|
||||||
photo: orkester.jpg
|
photo: orkester
|
||||||
url: http://orkester.ee
|
url: http://orkester.ee
|
||||||
description: Andsime lehele kaasaegse väljanägemise.
|
description: Andsime lehele kaasaegse väljanägemise.
|
||||||
|
|
||||||
- title: Tallinna Tehnikaülikooli Studentlife
|
- title: Tallinna Tehnikaülikooli Studentlife
|
||||||
photo: studentlife.jpg
|
photo: studentlife
|
||||||
url:
|
url:
|
||||||
description: Arendasime WordPressi platvormil kliendi ettenägemise järgi uue keskkonna, kus tudengid saavad blogipostitusi kirjutada/lugeda ning ka tulevaste ürituste ja organisatsioonide tegevustega kursis olla. Aegajalt viime lehel ka läbi uuendustöid. Tänaseks on portaali omanikud selle sulgenud.
|
description: Arendasime WordPressi platvormil kliendi ettenägemise järgi uue keskkonna, kus tudengid saavad blogipostitusi kirjutada/lugeda ning ka tulevaste ürituste ja organisatsioonide tegevustega kursis olla. Aegajalt viime lehel ka läbi uuendustöid. Tänaseks on portaali omanikud selle sulgenud.
|
||||||
|
|
||||||
- title: Eesti Üliõpilasesinduse Liit
|
- title: Eesti Üliõpilasesinduse Liit
|
||||||
photo: sallivkool.jpg
|
photo: sallivkool
|
||||||
url:
|
url:
|
||||||
description:
|
description:
|
||||||
|
|
||||||
- title: ISIC
|
- title: ISIC
|
||||||
photo: isic.jpg
|
photo: isic
|
||||||
url:
|
url:
|
||||||
description: WordPressi platvormil arendatud veebileht, kust leiab kõik vajaliku info ISIC kaardi kohta (soodustused, tellimine jpm).
|
description: WordPressi platvormil arendatud veebileht, kust leiab kõik vajaliku info ISIC kaardi kohta (soodustused, tellimine jpm).
|
||||||
|
|
||||||
|
|
||||||
- title: Eesti Jalgratta Virtuaalmuuseum
|
- title: Eesti Jalgratta Virtuaalmuuseum
|
||||||
photo: jalgrattaveeb.jpg
|
photo: jalgrattaveeb
|
||||||
url: http://www.velomuseum.ee/
|
url: http://www.velomuseum.ee/
|
||||||
description:
|
description:
|
||||||
|
|
||||||
|
|
||||||
- title: Meremeeste tööotsingu portaal
|
- title: Meremeeste tööotsingu portaal
|
||||||
photo: nauticalcrew.jpg
|
photo: nauticalcrew
|
||||||
url:
|
url:
|
||||||
description: Tänaseks on portaali omanikud selle sulgenud.
|
description: Tänaseks on portaali omanikud selle sulgenud.
|
||||||
|
|
||||||
|
|
||||||
- title: Võti Tulevikku 2013 infoveeb
|
- title: Võti Tulevikku 2013 infoveeb
|
||||||
photo: votitulevikku.jpg
|
photo: votitulevikku
|
||||||
url:
|
url:
|
||||||
description:
|
description:
|
||||||
|
|
||||||
|
|
||||||
- title: Ukseproff
|
- title: Ukseproff
|
||||||
photo: ukseproff.jpg
|
photo: ukseproff
|
||||||
url:
|
url:
|
||||||
description: Tänaseks on portaali omanikud selle sulgenud.
|
description: Tänaseks on portaali omanikud selle sulgenud.
|
||||||
|
|
||||||
|
|
||||||
- title: Nõmme Tenniseklubi koduleht
|
- title: Nõmme Tenniseklubi koduleht
|
||||||
photo: nommetenniseklubi.jpg
|
photo: nommetenniseklubi
|
||||||
url:
|
url:
|
||||||
description: Tänaseks on portaali omanikud selle sulgenud.
|
description: Tänaseks on portaali omanikud selle sulgenud.
|
||||||
|
|
||||||
|
|
||||||
- title: Sporditrennid.ee trenni otsinguportaal
|
- title: Sporditrennid.ee trenni otsinguportaal
|
||||||
photo: sporditrennid.jpg
|
photo: sporditrennid
|
||||||
url:
|
url:
|
||||||
description: Tänaseks on portaali omanikud selle sulgenud.
|
description: Tänaseks on portaali omanikud selle sulgenud.
|
||||||
|
|||||||
@@ -1,25 +1,25 @@
|
|||||||
- name: Tehnopol
|
- name: Tehnopol
|
||||||
image: tehnopollogo.png
|
image: tehnopollogo
|
||||||
url: https://www.tehnopol.ee/
|
url: https://www.tehnopol.ee/
|
||||||
additionalText:
|
additionalText:
|
||||||
|
|
||||||
- name: Tallinna Tehnikaülikool
|
- name: Tallinna Tehnikaülikool
|
||||||
image: taltech_logo.jpg
|
image: taltech_logo
|
||||||
url: https://www.ttu.ee/
|
url: https://www.ttu.ee/
|
||||||
additionalText:
|
additionalText:
|
||||||
|
|
||||||
- name: Eesti Üliõpilaskondade Liit
|
- name: Eesti Üliõpilaskondade Liit
|
||||||
image: eyl_logo.png
|
image: eyl_logo
|
||||||
url: https://eyl.ee/
|
url: https://eyl.ee/
|
||||||
additionalText:
|
additionalText:
|
||||||
|
|
||||||
- name: Tallinna Tehnikaülikooli Robotiklubi
|
- name: Tallinna Tehnikaülikooli Robotiklubi
|
||||||
image: robotiklubi_logo.png
|
image: robotiklubi_logo
|
||||||
url: https://www.robotiklubi.ee/
|
url: https://www.robotiklubi.ee/
|
||||||
additionalText:
|
additionalText:
|
||||||
|
|
||||||
- name: Tallinna Tehnikaülikooli Infotehnoloogia teaduskond
|
- name: Tallinna Tehnikaülikooli Infotehnoloogia teaduskond
|
||||||
image: taltech_IT_teaduskond_logo.png
|
image: taltech_IT_teaduskond_logo
|
||||||
url: https://taltech.ee/et/infotehnoloogia-teaduskond
|
url: https://taltech.ee/et/infotehnoloogia-teaduskond
|
||||||
additionalText:
|
additionalText:
|
||||||
|
|
||||||
|
|||||||
@@ -1,190 +1,190 @@
|
|||||||
- year: 2025 (talv, kevad)
|
- year: 2025 (talv, kevad)
|
||||||
members:
|
members:
|
||||||
- name: Christopher Rammul
|
- name: Christopher Rammul
|
||||||
image: christopher_rammul.jpg
|
image: christopher_rammul
|
||||||
|
|
||||||
- name: Erki Lasberg
|
- name: Erki Lasberg
|
||||||
image: erki_lasberg.jpg
|
image: erki_lasberg
|
||||||
|
|
||||||
- name: Rene Arumetsa
|
- name: Rene Arumetsa
|
||||||
image: rene_arumetsa.jpg
|
image: rene_arumetsa
|
||||||
|
|
||||||
- name: Hanno Vene
|
- name: Hanno Vene
|
||||||
image: hanno_vene2.jpg
|
image: hanno_vene2
|
||||||
|
|
||||||
|
|
||||||
- year: 2024 (suvi, sügis, talv)
|
- year: 2024 (suvi, sügis, talv)
|
||||||
members:
|
members:
|
||||||
- name: Eva-Marie Alasi
|
- name: Eva-Marie Alasi
|
||||||
image: Eva-Marie_Alasi.jpg
|
image: Eva-Marie_Alasi
|
||||||
|
|
||||||
- name: Erki Lasberg
|
- name: Erki Lasberg
|
||||||
image: erki_lasberg.jpg
|
image: erki_lasberg
|
||||||
|
|
||||||
- name: Rene Arumetsa
|
- name: Rene Arumetsa
|
||||||
image: rene_arumetsa.jpg
|
image: rene_arumetsa
|
||||||
|
|
||||||
- name: Christopher Rammul
|
- name: Christopher Rammul
|
||||||
image: christopher_rammul.jpg
|
image: christopher_rammul
|
||||||
|
|
||||||
- name: Karina Reisel
|
- name: Karina Reisel
|
||||||
image: karina_reisel.jpg
|
image: karina_reisel
|
||||||
|
|
||||||
- year: 2023
|
- year: 2023
|
||||||
members:
|
members:
|
||||||
- name: Lembitu Valdmets
|
- name: Lembitu Valdmets
|
||||||
image: lembitu_valdmets2.jpg
|
image: lembitu_valdmets2
|
||||||
|
|
||||||
- name: Ott-Eerik Õun
|
- name: Ott-Eerik Õun
|
||||||
image: ott-eerik_oun.jpg
|
image: ott-eerik_oun
|
||||||
|
|
||||||
- name: Andree Uuetoa
|
- name: Andree Uuetoa
|
||||||
image: andree_uuetoa.jpg
|
image: andree_uuetoa
|
||||||
|
|
||||||
- name: Pearu Vaalma
|
- name: Pearu Vaalma
|
||||||
image: siinus.jpg
|
image: siinus
|
||||||
|
|
||||||
- name: Karina Reisel
|
- name: Karina Reisel
|
||||||
image: karina_reisel.jpg
|
image: karina_reisel
|
||||||
|
|
||||||
- year: 2022
|
- year: 2022
|
||||||
members:
|
members:
|
||||||
- name: Carina Ruut
|
- name: Carina Ruut
|
||||||
image: carina_ruut.jpg
|
image: carina_ruut
|
||||||
|
|
||||||
- name: Karl Eric Mõttus
|
- name: Karl Eric Mõttus
|
||||||
image: karl_eric_mottus.jpg
|
image: karl_eric_mottus
|
||||||
|
|
||||||
- name: Laura Anni
|
- name: Laura Anni
|
||||||
image: laura_anni.jpg
|
image: laura_anni
|
||||||
|
|
||||||
- name: Anet Mitt
|
- name: Anet Mitt
|
||||||
image: anet_mitt.jpg
|
image: anet_mitt
|
||||||
|
|
||||||
- name: Taeri Saar
|
- name: Taeri Saar
|
||||||
image: taeri_saar.jpg
|
image: taeri_saar
|
||||||
|
|
||||||
- year: 2021
|
- year: 2021
|
||||||
members:
|
members:
|
||||||
- name: Carina Ruut
|
- name: Carina Ruut
|
||||||
image: carina_ruut.jpg
|
image: carina_ruut
|
||||||
|
|
||||||
- name: Andrei Gužovski
|
- name: Andrei Gužovski
|
||||||
image: andrei_guzovski.jpg
|
image: andrei_guzovski
|
||||||
|
|
||||||
- name: Kristjan Kõiv
|
- name: Kristjan Kõiv
|
||||||
image: kristjan_koiv.png
|
image: kristjan_koiv
|
||||||
|
|
||||||
- name: Ingrid-Regina Vähi
|
- name: Ingrid-Regina Vähi
|
||||||
image: ingrid_regina_vahi.jpg
|
image: ingrid_regina_vahi
|
||||||
|
|
||||||
- name: Marcus Pruks
|
- name: Marcus Pruks
|
||||||
image: marcus_pruks.JPG
|
image: marcus_pruks
|
||||||
|
|
||||||
- year: 2020
|
- year: 2020
|
||||||
members:
|
members:
|
||||||
- name: Liisa Heinla
|
- name: Liisa Heinla
|
||||||
image: liisa_heinla.jpg
|
image: liisa_heinla
|
||||||
|
|
||||||
- name: Andrei Gužovski
|
- name: Andrei Gužovski
|
||||||
image: andrei_guzovski.jpg
|
image: andrei_guzovski
|
||||||
|
|
||||||
- name: Mattias Vahtra
|
- name: Mattias Vahtra
|
||||||
image: mattias_vahtra.jpg
|
image: mattias_vahtra
|
||||||
|
|
||||||
- name: Sander Kornet
|
- name: Sander Kornet
|
||||||
image: sander_kornet.jpg
|
image: sander_kornet
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- year: 2019
|
- year: 2019
|
||||||
members:
|
members:
|
||||||
- name: Risto Leesmäe
|
- name: Risto Leesmäe
|
||||||
image: risto_leesmäe.jpg
|
image: risto_leesmäe
|
||||||
|
|
||||||
- name: Lembitu Valdmets
|
- name: Lembitu Valdmets
|
||||||
image: lembitu_valdmets.jpg
|
image: lembitu_valdmets
|
||||||
|
|
||||||
- name: Hanno Vene
|
- name: Hanno Vene
|
||||||
image: hanno_vene.jpg
|
image: hanno_vene
|
||||||
|
|
||||||
- name: Peter-Sten Annus
|
- name: Peter-Sten Annus
|
||||||
image: peter-sten_annus.jpg
|
image: peter-sten_annus
|
||||||
|
|
||||||
- name: Roosi-Ann Tõlgu
|
- name: Roosi-Ann Tõlgu
|
||||||
image: roosi-ann_tõlgu.jpg
|
image: roosi-ann_tõlgu
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- year: 2018
|
- year: 2018
|
||||||
members:
|
members:
|
||||||
- name: Hanno Vene
|
- name: Hanno Vene
|
||||||
image: hanno_vene.jpg
|
image: hanno_vene
|
||||||
|
|
||||||
- name: Kaarel Pärtel
|
- name: Kaarel Pärtel
|
||||||
image: kaarel_pärtel.jpg
|
image: kaarel_pärtel
|
||||||
|
|
||||||
- name: Martin Oblikas
|
- name: Martin Oblikas
|
||||||
image: martin_oblikas.jpg
|
image: martin_oblikas
|
||||||
|
|
||||||
- name: Risto Leesmäe
|
- name: Risto Leesmäe
|
||||||
image: risto_leesmäe.jpg
|
image: risto_leesmäe
|
||||||
|
|
||||||
- name: Asko Närep
|
- name: Asko Närep
|
||||||
image: asko_närep.jpg
|
image: asko_närep
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- year: 2017
|
- year: 2017
|
||||||
members:
|
members:
|
||||||
- name: Kertu Nurmberg
|
- name: Kertu Nurmberg
|
||||||
image: kertu_nurmberg.jpg
|
image: kertu_nurmberg
|
||||||
|
|
||||||
- name: Tõnis Piirits
|
- name: Tõnis Piirits
|
||||||
image: tõnis_piirits.jpg
|
image: tõnis_piirits
|
||||||
|
|
||||||
- name: Lembitu Valdmets
|
- name: Lembitu Valdmets
|
||||||
image: lembitu_valdmets.jpg
|
image: lembitu_valdmets
|
||||||
|
|
||||||
- name: Rasmus Koit
|
- name: Rasmus Koit
|
||||||
image: rasmus_koit.jpg
|
image: rasmus_koit
|
||||||
|
|
||||||
- name: Sigrid Kirss
|
- name: Sigrid Kirss
|
||||||
image: sigrid_kirss.jpg
|
image: sigrid_kirss
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- year: 2016
|
- year: 2016
|
||||||
members:
|
members:
|
||||||
- name: Kertu Pikk
|
- name: Kertu Pikk
|
||||||
image: kertu_pikk_2016.jpg
|
image: kertu_pikk_2016
|
||||||
|
|
||||||
- name: Kertu Nurmberg
|
- name: Kertu Nurmberg
|
||||||
image: kertu_nurmberg.jpg
|
image: kertu_nurmberg
|
||||||
|
|
||||||
- name: Lembitu Valdmets
|
- name: Lembitu Valdmets
|
||||||
image: lembitu_valdmets.jpg
|
image: lembitu_valdmets
|
||||||
|
|
||||||
- name: Nansy Ly Endma
|
- name: Nansy Ly Endma
|
||||||
image: nansy_ly_endma.jpg
|
image: nansy_ly_endma
|
||||||
|
|
||||||
|
|
||||||
- year: 2015
|
- year: 2015
|
||||||
members:
|
members:
|
||||||
- name: Berta Härsing
|
- name: Berta Härsing
|
||||||
image: berta_harsing.jpg
|
image: berta_harsing
|
||||||
|
|
||||||
- name: Ann-Claire Utt
|
- name: Ann-Claire Utt
|
||||||
image: ann-claire_utt.jpg
|
image: ann-claire_utt
|
||||||
|
|
||||||
- name: Oole Tuurmaa
|
- name: Oole Tuurmaa
|
||||||
image: oole_tuurmaa.png
|
image: oole_tuurmaa
|
||||||
|
|
||||||
- name: Pärlin Luhila
|
- name: Pärlin Luhila
|
||||||
image: pärlin_luhila.png
|
image: pärlin_luhila
|
||||||
|
|
||||||
- name: Kertu Pikk
|
- name: Kertu Pikk
|
||||||
image: kertu_pikk_2015.png
|
image: kertu_pikk_2015
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -192,177 +192,177 @@
|
|||||||
- year: 2014
|
- year: 2014
|
||||||
members:
|
members:
|
||||||
- name: Karli Oruste
|
- name: Karli Oruste
|
||||||
image: karli_oruste.jpg
|
image: karli_oruste
|
||||||
|
|
||||||
- name: Berta Härsing
|
- name: Berta Härsing
|
||||||
image: berta_harsing.jpg
|
image: berta_harsing
|
||||||
|
|
||||||
- name: Siim Talts
|
- name: Siim Talts
|
||||||
image: siim_talts.jpg
|
image: siim_talts
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- year: 2013
|
- year: 2013
|
||||||
members:
|
members:
|
||||||
- name: Märt Lepik
|
- name: Märt Lepik
|
||||||
image: märt_lepik.jpg
|
image: märt_lepik
|
||||||
|
|
||||||
- name: Karli Oruste
|
- name: Karli Oruste
|
||||||
image: karli_oruste.jpg
|
image: karli_oruste
|
||||||
|
|
||||||
- name: Aleksandr Požidajev
|
- name: Aleksandr Požidajev
|
||||||
image: aleksandr_požidajev.jpg
|
image: aleksandr_požidajev
|
||||||
|
|
||||||
|
|
||||||
- year: 2012
|
- year: 2012
|
||||||
members:
|
members:
|
||||||
- name: Märt Lepik
|
- name: Märt Lepik
|
||||||
image: märt_lepik.jpg
|
image: märt_lepik
|
||||||
|
|
||||||
- name: Helen Tiitma
|
- name: Helen Tiitma
|
||||||
image: helen_tiitma.jpg
|
image: helen_tiitma
|
||||||
|
|
||||||
- name: Raul Aassalu
|
- name: Raul Aassalu
|
||||||
image: raul_aassalu.jpg
|
image: raul_aassalu
|
||||||
|
|
||||||
- year: 2011
|
- year: 2011
|
||||||
members:
|
members:
|
||||||
- name: Märt Lepik
|
- name: Märt Lepik
|
||||||
image: märt_lepik.jpg
|
image: märt_lepik
|
||||||
|
|
||||||
- name: Risto Maasing
|
- name: Risto Maasing
|
||||||
image: risto_maasing.jpg
|
image: risto_maasing
|
||||||
|
|
||||||
- name: Roel Rahkema
|
- name: Roel Rahkema
|
||||||
image: roel_rahkema.jpg
|
image: roel_rahkema
|
||||||
|
|
||||||
|
|
||||||
- year: 2010
|
- year: 2010
|
||||||
members:
|
members:
|
||||||
- name: Margus Mahler
|
- name: Margus Mahler
|
||||||
image: margus_mahler.jpg
|
image: margus_mahler
|
||||||
|
|
||||||
- name: Janne Raudsepp
|
- name: Janne Raudsepp
|
||||||
image: janne_raudsepp.jpg
|
image: janne_raudsepp
|
||||||
|
|
||||||
- name: Tõnis Märtmaa
|
- name: Tõnis Märtmaa
|
||||||
image: tõnis_märtmaa.jpg
|
image: tõnis_märtmaa
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- year: 2009
|
- year: 2009
|
||||||
members:
|
members:
|
||||||
- name: Margus Mahler
|
- name: Margus Mahler
|
||||||
image: margus_mahler.jpg
|
image: margus_mahler
|
||||||
|
|
||||||
- name: Risto Maasing
|
- name: Risto Maasing
|
||||||
image: risto_maasing.jpg
|
image: risto_maasing
|
||||||
|
|
||||||
- name: Tõnis Trumaa
|
- name: Tõnis Trumaa
|
||||||
image: tõnis_trumaa.jpg
|
image: tõnis_trumaa
|
||||||
|
|
||||||
- name: Tõnis Märtmaa
|
- name: Tõnis Märtmaa
|
||||||
image: tõnis_märtmaa.jpg
|
image: tõnis_märtmaa
|
||||||
|
|
||||||
- name: Janne Raudsepp
|
- name: Janne Raudsepp
|
||||||
image: janne_raudsepp.jpg
|
image: janne_raudsepp
|
||||||
|
|
||||||
|
|
||||||
- year: 2008
|
- year: 2008
|
||||||
members:
|
members:
|
||||||
- name: Tõnis Märtmaa
|
- name: Tõnis Märtmaa
|
||||||
image: tõnis_märtmaa.jpg
|
image: tõnis_märtmaa
|
||||||
|
|
||||||
- name: Kristjan Haavik
|
- name: Kristjan Haavik
|
||||||
image: kristjan_haavik_2008.jpg
|
image: kristjan_haavik_2008
|
||||||
|
|
||||||
- name: Risto Maasing
|
- name: Risto Maasing
|
||||||
image: risto_maasing.jpg
|
image: risto_maasing
|
||||||
|
|
||||||
- name: Karin Viil
|
- name: Karin Viil
|
||||||
image: karin_viil.jpg
|
image: karin_viil
|
||||||
|
|
||||||
- name: Petri Behm
|
- name: Petri Behm
|
||||||
image: petri_behm.jpg
|
image: petri_behm
|
||||||
|
|
||||||
|
|
||||||
- year: 2007
|
- year: 2007
|
||||||
members:
|
members:
|
||||||
- name: Kristjan Haavik
|
- name: Kristjan Haavik
|
||||||
image: kristjan_haavik_2007.jpg
|
image: kristjan_haavik_2007
|
||||||
|
|
||||||
- name: Priit Lepp
|
- name: Priit Lepp
|
||||||
image: priit_lepp.jpg
|
image: priit_lepp
|
||||||
|
|
||||||
- name: Ave Tarend
|
- name: Ave Tarend
|
||||||
image: ave_tarend.jpg
|
image: ave_tarend
|
||||||
|
|
||||||
- name: Õnne Laanmets
|
- name: Õnne Laanmets
|
||||||
image: õnne_laanmets.jpg
|
image: õnne_laanmets
|
||||||
|
|
||||||
- name: Tõnis Märtmaa
|
- name: Tõnis Märtmaa
|
||||||
image: tõnis_märtmaa.jpg
|
image: tõnis_märtmaa
|
||||||
|
|
||||||
- name: Margus Mahler
|
- name: Margus Mahler
|
||||||
image: margus_mahler.jpg
|
image: margus_mahler
|
||||||
|
|
||||||
|
|
||||||
- year: 2006
|
- year: 2006
|
||||||
members:
|
members:
|
||||||
- name: Aive Uus
|
- name: Aive Uus
|
||||||
image: aive_uus.jpg
|
image: aive_uus
|
||||||
|
|
||||||
- name: Margus Mahler
|
- name: Margus Mahler
|
||||||
image: margus_mahler.jpg
|
image: margus_mahler
|
||||||
|
|
||||||
- name: Kristjan Haavik
|
- name: Kristjan Haavik
|
||||||
image: kristjan_haavik_2007.jpg
|
image: kristjan_haavik_2007
|
||||||
|
|
||||||
|
|
||||||
- year: 2005
|
- year: 2005
|
||||||
members:
|
members:
|
||||||
- name: Aive Uus
|
- name: Aive Uus
|
||||||
image: aive_uus.jpg
|
image: aive_uus
|
||||||
|
|
||||||
- name: Eret Rääk
|
- name: Eret Rääk
|
||||||
image: eret_rääk.jpg
|
image: eret_rääk
|
||||||
|
|
||||||
- name: Kristjan Haavik
|
- name: Kristjan Haavik
|
||||||
image: kristjan_haavik_2007.jpg
|
image: kristjan_haavik_2007
|
||||||
|
|
||||||
- year: 2004
|
- year: 2004
|
||||||
members:
|
members:
|
||||||
- name: Aive Uus
|
- name: Aive Uus
|
||||||
image: aive_uus.jpg
|
image: aive_uus
|
||||||
|
|
||||||
- name: Eret Rääk
|
- name: Eret Rääk
|
||||||
image: eret_rääk.jpg
|
image: eret_rääk
|
||||||
|
|
||||||
- name: Kristjan Haavik
|
- name: Kristjan Haavik
|
||||||
image: kristjan_haavik_2007.jpg
|
image: kristjan_haavik_2007
|
||||||
|
|
||||||
|
|
||||||
- year: 2003
|
- year: 2003
|
||||||
members:
|
members:
|
||||||
- name: Aive Uus
|
- name: Aive Uus
|
||||||
image: aive_uus.jpg
|
image: aive_uus
|
||||||
|
|
||||||
- name: Jaak Lember
|
- name: Jaak Lember
|
||||||
image: jaak_lember.jpg
|
image: jaak_lember
|
||||||
|
|
||||||
- name: Siim Valgeväli
|
- name: Siim Valgeväli
|
||||||
image: siim_valgeväli.jpg
|
image: siim_valgeväli
|
||||||
|
|
||||||
|
|
||||||
- year: 2002
|
- year: 2002
|
||||||
members:
|
members:
|
||||||
- name: Lauri Till
|
- name: Lauri Till
|
||||||
image: lauri_till.jpg
|
image: lauri_till
|
||||||
|
|
||||||
- name: Jaak Lember
|
- name: Jaak Lember
|
||||||
image: jaak_lember.jpg
|
image: jaak_lember
|
||||||
|
|
||||||
- name: Meelik Gornoi
|
- name: Meelik Gornoi
|
||||||
image: meelik_gornoi.jpg
|
image: meelik_gornoi
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -16,8 +16,8 @@
|
|||||||
en: March 2026
|
en: March 2026
|
||||||
est: Märts 2026
|
est: Märts 2026
|
||||||
gallery:
|
gallery:
|
||||||
- temp1.jpg
|
- temp1
|
||||||
- temp2.jpg
|
- temp2
|
||||||
|
|
||||||
- title:
|
- title:
|
||||||
en: C workshop
|
en: C workshop
|
||||||
@@ -35,7 +35,7 @@
|
|||||||
en: March 2026
|
en: March 2026
|
||||||
est: Märts 2026
|
est: Märts 2026
|
||||||
gallery:
|
gallery:
|
||||||
- temp1.jpg
|
- temp1
|
||||||
- temp2.jpg
|
- temp2
|
||||||
- temp3.jpg
|
- temp3
|
||||||
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 241 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 363 KiB After Width: | Height: | Size: 363 KiB |
|
Before Width: | Height: | Size: 3.2 MiB After Width: | Height: | Size: 3.2 MiB |
|
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 358 KiB After Width: | Height: | Size: 358 KiB |
|
Before Width: | Height: | Size: 275 KiB After Width: | Height: | Size: 275 KiB |
|
Before Width: | Height: | Size: 264 KiB After Width: | Height: | Size: 264 KiB |
|
Before Width: | Height: | Size: 521 KiB After Width: | Height: | Size: 521 KiB |
|
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 87 KiB |
|
Before Width: | Height: | Size: 85 KiB After Width: | Height: | Size: 85 KiB |
|
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 91 KiB |
|
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 93 KiB |
@@ -1,11 +0,0 @@
|
|||||||
mkdir -p optimised
|
|
||||||
for file in original/*; do
|
|
||||||
echo $file
|
|
||||||
base_name=$(basename $file)
|
|
||||||
if [[ $base_name == *"airiin"* ]] || [[ $base_name == *"lembitu"* ]] ; then
|
|
||||||
gravity=north
|
|
||||||
else
|
|
||||||
gravity=center
|
|
||||||
fi
|
|
||||||
convert ${file} -resize "400x400^>" -gravity $gravity -extent 400x400 optimised/${base_name%}
|
|
||||||
done
|
|
||||||
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 8.9 KiB |
|
Before Width: | Height: | Size: 61 KiB |
|
Before Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 136 KiB |
|
Before Width: | Height: | Size: 76 KiB |
|
Before Width: | Height: | Size: 29 KiB |
@@ -1,8 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
mkdir -p optimised
|
|
||||||
for file in original-jpg-converted/*; do
|
|
||||||
echo $file
|
|
||||||
base_name=$(basename $file)
|
|
||||||
convert ${file} -resize "1000x1000>" -quality 89 optimised/${base_name}
|
|
||||||
done
|
|
||||||
|
Before Width: | Height: | Size: 143 KiB |
|
Before Width: | Height: | Size: 146 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 189 KiB |
|
Before Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 688 KiB |
|
Before Width: | Height: | Size: 152 KiB |
|
Before Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 145 KiB |
|
Before Width: | Height: | Size: 76 KiB |
|
Before Width: | Height: | Size: 82 KiB |
|
Before Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 53 KiB |
|
Before Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 214 KiB |
|
Before Width: | Height: | Size: 158 KiB |
|
Before Width: | Height: | Size: 97 KiB |
|
Before Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 97 KiB |
|
Before Width: | Height: | Size: 280 KiB |
|
Before Width: | Height: | Size: 178 KiB |
|
Before Width: | Height: | Size: 164 KiB |
|
Before Width: | Height: | Size: 103 KiB |
|
Before Width: | Height: | Size: 430 KiB |
|
Before Width: | Height: | Size: 121 KiB |
|
Before Width: | Height: | Size: 337 KiB |
|
Before Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 98 KiB |
|
Before Width: | Height: | Size: 58 KiB |
@@ -1,6 +0,0 @@
|
|||||||
mkdir -p optimised
|
|
||||||
for file in original/*; do
|
|
||||||
echo $file
|
|
||||||
base_name=$(basename $file)
|
|
||||||
convert ${file} -resize "200x200^>" -gravity center -crop 200x200+0+0 -quality 89 optimised/${base_name}
|
|
||||||
done
|
|
||||||
|
Before Width: | Height: | Size: 6.3 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 4.6 KiB |
|
Before Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 3.5 KiB |