Compare commits

..

No commits in common. "7faed5af20097c3ae94d5656e142a74a2f84db62" and "dbfb10e3b4b8262509d6e83612afc038062fe4a1" have entirely different histories.

16 changed files with 1926 additions and 2611 deletions

1669
package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -9,7 +9,7 @@
"devDependencies": {
"@fontsource/fira-mono": "^4.5.10",
"@neoconfetti/svelte": "^1.0.0",
"@picocss/pico": "^2.0.6",
"@picocss/pico": "^1.5.10",
"@sveltejs/adapter-auto": "^2.0.0",
"@sveltejs/adapter-node": "^1.2.4",
"@sveltejs/adapter-static": "^2.0.3",

View file

@ -6,17 +6,6 @@
<meta name="viewport" content="width=device-width" />
%sveltekit.head%
</head>
<noscript>
<div class="noscript">This site uses JavaScript extensively. Please consider enabling it.</div>
<style>
.noscript {
background-color: #fd9696;
text-align: center;
color: black;
padding: 0.3em;
}
</style>
</noscript>
<body data-sveltekit-preload-data="hover">
<div style="display: contents">%sveltekit.body%</div>
</body>

View file

@ -1,7 +1,4 @@
// @import "@picocss/pico/scss/pico"; /* To import only what you need from Pico [check the documentaion](https://picocss.com/docs/customization.html) */
@use "@picocss/pico/scss/pico" with (
$theme-color: "green"
);
@import "@picocss/pico/scss/pico"; /* To import only what you need from Pico [check the documentaion](https://picocss.com/docs/customization.html) */
@import url('/assets/fonts/fonts.css');
/* @import url('https://cdn.jsdelivr.net/npm/@mdi/font@5.8.55/css/materialdesignicons.min.css'); */

View file

@ -1,145 +0,0 @@
<script>
import { onMount } from "svelte";
let mods = { mods: [], optional_mods: [] };
let searchQuery = "";
let selectedFile = "modlist-rekindled.json";
let fileList = [];
async function fetchData(file) {
const response = await fetch(`/assets/json/${file}`);
const data = await response.json();
mods = data;
}
onMount(async () => {
const response = await fetch("/assets/json/modlist-items.json");
const data = await response.json();
fileList = data;
await fetchData(selectedFile);
});
function fuzzySearch(query, mods) {
const regex = new RegExp(query, "i");
return mods.filter(
(mod) => regex.test(mod.name) || regex.test(mod.description),
);
}
function handleFileChange(event) {
selectedFile = event.target.value;
fetchData(selectedFile);
}
</script>
<div class="search-container" role="group">
<input type="search" placeholder="Search the mod-verse..." bind:value={searchQuery} />
<select bind:value={selectedFile} on:change={handleFileChange}>
{#each fileList as file}
<option value={file.file}>{file.name}</option>
{/each}
</select>
</div>
<hr />
{#if fuzzySearch(searchQuery, mods.mods).length === 0 && fuzzySearch(searchQuery, mods.optional_mods).length === 0}
<p>⚠️ No results found.</p>
{:else}
<div class="grid" id="mods">
{#each Array(Math.ceil(fuzzySearch(searchQuery, mods.mods).length / 3)) as _, index}
{#each fuzzySearch(searchQuery, mods.mods).slice(index * 3, (index + 1) * 3) as mod}
<a
role="button"
class="mod-card contrast invert"
href={mod.link}
target="_blank"
rel="noopener noreferrer"
>
<img src={mod.logo} alt={mod.name + "'s Icon"} class="mod-card-logo" />
<div class="mod-card-text-ct">
<p class="mod-card-name">{mod.name}</p>
<p class="mod-card-desc">{mod.description}</p>
</div>
</a>
{/each}
{/each}
</div>
<details open>
<!-- svelte-ignore a11y-no-redundant-roles -->
<summary role="button" class="secondary">Optional Mods</summary>
<div class="grid" id="optional-mods">
{#each Array(Math.ceil(fuzzySearch(searchQuery, mods.optional_mods).length / 3)) as _, index}
{#each fuzzySearch(searchQuery, mods.optional_mods).slice(index * 3, (index + 1) * 3) as mod}
<a
role="button"
class="mod-card contrast"
href={mod.link}
target="_blank"
rel="noopener noreferrer"
>
<img src={mod.logo} alt={mod.name + "'s Icon"} class="mod-card-logo" />
<div class="mod-card-text-ct">
<p class="mod-card-name">{mod.name}</p>
<p class="mod-card-desc">{mod.description}</p>
</div>
</a>
{/each}
{/each}
</div>
</details>
{/if}
<style lang="scss">
.grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
margin-bottom: 1em;
gap: 1em;
}
.grid-item {
display: flex;
flex-direction: column;
align-items: center;
padding: 1em;
}
.search-container {
display: flex;
select {
width: 40%;
border-radius: 0px 1000px 1000px 0px;
}
}
.mod-card {
display: flex;
justify-content: center;
align-items: center;
padding: 0.5em 1em 0.5em 1em;
img.mod-card-logo {
height: 4em;
width: 4em;
margin-right: 1em;
border-radius: 8px;
cursor: pointer;
}
.mod-card-text-ct {
width: 100%;
text-align: left;
p {
padding: 0;
margin: 0;
cursor: pointer;
}
p.mod-card-name {
font-weight: 700;
font-size: 1.2em;
}
}
}
</style>

View file

@ -20,7 +20,7 @@
<footer>
<p>
&copy; Sangelo & LogolicusZ, 2023-2024 | <a href="https://gitpot.org/ExploreCraft/website"> Source Code</a>
&copy; Sangelo & LogolicusZ, 2023 | <a href="https://gitpot.org/ExploreCraft/website"> Source Code</a>
</p>
</footer>
</div>

View file

@ -1,59 +1,41 @@
<script>
import { onMount } from "svelte";
import { onMount } from 'svelte';
function rand(min, max) {
return Math.floor(Math.random() * (max - min + 1) + min);
return Math.floor(Math.random() * (max - min + 1) + min)
}
onMount(() => {
document.getElementById("banner").src = document
.getElementById("banner")
.src.replace("pic0", `pic${rand(1, 30)}`);
console.log(document.getElementById("banner").src);
});
document.getElementById('banner').src = document.getElementById('banner').src.replace("pic0", `pic${rand(1,30)}`);
console.log(document.getElementById('banner').src);
})
</script>
<svelte:head>
<title>ExploreCraft</title>
<meta
name="description"
content="Welcome to ExploreCraft! An exploration-focused and Quilt based modpack for Minecraft"
/>
<meta name="description" content="Welcome to ExploreCraft! An exploration-focused and Quilt based modpack for Minecraft 1.19.2" />
</svelte:head>
<div class="text-column">
<h1 class="main-title">ExploreCraft</h1>
<h1>ExploreCraft</h1>
<p>
This is ExploreCraft! A modpack for Minecraft designed to keep you moving.<br
/>
This is ExploreCraft! A modpack for Minecraft 1.19.2 (Quilt) designed to keep you moving.<br>
You may never know what you'll find, after all
</p>
<p>
Have a look around. You can download the modpack and play, have a look in
our gallery, or take a look at our modlist.
</p>
<p>Have a look around. You can download the modpack and play, have a look in our gallery, or take a look at our modlist.</p>
</div>
<div class="grid buttons">
<a href="/downloads" role="button">Download</a>
<a href="/modlist" role="button" class="secondary outline">Modlist</a>
</div>
<!-- svelte-ignore a11y-img-redundant-alt -->
<a href="/gallery" class="banner" data-tooltip="See more...">
<img
src="assets/images/gallery/pic0.png"
id="banner"
alt="Random picture from the gallery."/>
</a>
<a href="/gallery" class="banner" data-tooltip="See more..."><img src="assets/images/gallery/pic0.png" id="banner" alt="Random picture from the gallery."></a>
<style>
.main-title {
margin-bottom: 2em;
}
a.banner img {
border-radius: 1em;
transition:
all 0.3s ease-in-out,
box-shadow 0.3s ease-in-out;
transition: all 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
align-self: center;
}
a.banner img:hover {

View file

@ -4,7 +4,7 @@
<svelte:head>
<title>Downloads</title>
<meta name="description" content="Download the ExploreCraft modpack here!" />
<meta name="description" content="About this app" />
</svelte:head>
<div class="text-column">
@ -110,10 +110,6 @@
<style>
.msg-box {
display: flex;
justify-content: center;
}
.main-card {
width: 50%;
justify-self: center;

View file

@ -0,0 +1,13 @@
<script>
import Modal from "$lib/modules/Modal.svelte";
let showModal = false;
const openModal = () => {
showModal = true;
};
</script>
<button on:click={openModal}>Open Modal</button>
{#if showModal}
<Modal title="Modal Title" msg="Modal Message" submit="https://example.com" bind:isOpen={showModal} />
{/if}

View file

@ -1,32 +1,185 @@
<script>
import ModCards from "../../lib/modules/ModCards.svelte";
</script>
<svelte:head>
<title>ExploreCraft</title>
<meta
name="description"
content="All the mods used in the ExploreCraft modpack. This list will be kept up-to-date as much as possible."
/>
</svelte:head>
<h1>Modlist</h1>
<p>
Here's ExploreCraft's modlist! We will keep this list up-to-date as much as possible.<br>
Choose an ExploreCraft version in the dropdown next to the search field.
</p>
<p>Please report any missing mods on our <a href="https://discord.gg/Z2YehhEUVr" target="_blank" rel="noopener noreferrer">Discord</a>.</p>
<div class="container">
<div class="column">
<ul>
<ul>
<li>Accurate Maps</li>
<li>Ad Astra!</li>
<li>Ada Paxels</li>
<li>Adorn</li>
<li>Advancement Plaques</li>
<li>AdventureZ</li>
<li>Alloy Forgery</li>
<li>Amethyst Tools</li>
<li>Angling Mod</li>
<li>Another Furniture</li>
<li>AntiGhost</li>
<li>Applied Energistics 2</li>
<li>Architectury</li>
<li>Auditory</li>
<li>Balm</li>
<li>Biome Makeover</li>
<li>Blocks</li>
<li>Boat Item View Fabric</li>
<li>Botarium</li>
<li>Chisel Refabricated</li>
<li>Chunky</li>
<li>Cloth Config v8</li>
<li>Continuity</li>
<li>Controlling For Fabric</li>
<li>Crafting Tweaks</li>
<li>Create Crafts and Additions</li>
<li>Croptopia</li>
<li>Detail Armor Bar</li>
<li>Eating Animaton</li>
<li>EldritchMobs</li>
<li>Enchanted Vertical Slabs</li>
<li>Enchanting Infuser</li>
<li>EntityCulling-Fabric</li>
<li>Extractinator</li>
<li>ExtrasSounds</li>
<li>Fabric language Kotlin</li>
<li>Fabric Waystones</li>
<li>Factory Blocks Mod</li>
<li>Falling Leaves</li>
<li>Fastback</li>
<li>FerriteCore</li>
<li>Frame</li>
<li>Global Packs</li>
<li>Hold That Chunk</li>
<li>Icarus</li>
<li>Iceberg</li>
<li>Indium</li>
<li>Interactic</li>
<li>Jade Addons</li>
<li>Konkrete</li>
<li>Ksyxis</li>
<li>Labels</li>
<li>Language Reload</li>
<ModCards />
</ul>
<style lang="scss">
.grid {
width: 100%;
}
</ul>
</div>
<div class="column">
<ul>
<li>Legendary Tooltips</li>
<li>Limits' Grapple</li>
<li>Ma Enchants</li>
<li>Macaw's Bridges</li>
<li>Macaw's Bridges BYG</li>
<li>Macaw's Doors</li>
<li>Macaw's Fences and Walls</li>
<li>Macaw's Furniture</li>
<li>Macaw's Paintings</li>
<li>Macaw's Paths and Pavings</li>
<li>Macaw's Roofs BYG</li>
<li>Macaw's Trapdoors</li>
<li>Macaw's Trapdoors</li>
<li>Macaw's Windows</li>
<li>Main Menu Credits</li>
<li>Mimic</li>
<li>Missing Wilds</li>
<li>MixinTrace</li>
<li>Mod Menu</li>
<li>Moonlight</li>
<li>More Chat History</li>
<li>MoreCreativeTabs</li>
<li>Mythic Metals</li>
<li>Mythic Upgrades</li>
<li>Naturalist</li>
<li>Nature's Compass</li>
<li>NiceLoad</li>
<li>No chat Reports</li>
<li>No Mob Farm</li>
<li>NotEnoughAnimations</li>
<li>Numismatic Overhaul</li>
<li>OPAC Create Mod Support</li>
<li>Open parties and claims</li>
<li>Pehkui</li>
<li>Polymorph</li>
<li>Powah!</li>
<li>Prism</li>
<li>Puzzle</li>
<li>Quartz Elevator</li>
<li>Quilt Loading Screen</li>
<li>Quiltgoslightyfasterlol</li>
<li>Recipe Book Is Pain</li>
<li>Reesse's Sodium Options</li>
<li>Resourcefulconfig</li>
<li>Roughly Enough Items</li>
<li>Satin</li>
<li>ServerCore</li>
<li>Sky Villages</li>
<li>Smooth boot</li>
<li>Sodium</li>
<li>Sodium Extra</li>
<li>Sound physics Remastered</li>
<li>Starlight</li>
<li>TerraBlender</li>
<li>Travaler's Backpack</li>
<li>Twigs</li>
<li>Villager Hats</li>
<li>Xareo's Minimap</li>
<li>Xareo's World Map</li>
<li>Your'e in Grave Danger</li>
<li>Your Reputation</li>
<li>YUNG's Better Desert Temples</li>
<li>YUNG's Better Dungeons</li>
<li>YUNG's Better Mineshaft</li>
<li>YUNG's Better Ocean Monuments</li>
<li>YUNG's Better Strongholds</li>
</ul>
</div>
</div>
<details>
<summary role="button" class="secondary">Optional Mods</summary>
<div class="container">
<div class="column">
<ul>
<li>3D Skin Layers</li>
<li>Animatica</li>
<li>AppleSkin</li>
<li>Better F3</li>
<li>CapeTweaks</li>
<li>Chat Heads</li>
<li>Chunks fade in</li>
<li>CIT Resewn</li>
<li>ClickTrough</li>
<li>DashLoader</li>
<li>Draggable Resource Packs</li>
<li>Dynamic FPS</li>
</ul>
</div>
<div class="column">
<ul>
<li>Effective 💦</li>
<li>EmuNO</li>
<li>Iris shaders</li>
<li>Jade 🔍</li>
<li>Kappa</li>
<li>LambdaBetterGrass</li>
<li>LambDynamicLights</li>
<li>Mouse Wheelie</li>
<li>Ok Zoomer</li>
<li>Presence Footsteps</li>
<li>Reeses Sodium Options</li>
<li>Too many Binds</li>
</ul>
</div>
</div>
.column {
</details>
<style>
.container {
overflow: auto;
}
.column {
width: 50%;
float: left;
}
</style>
}
</style>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

View file

@ -1,4 +0,0 @@
[
{ "name": "ExploreCraft: Rekindled", "file": "modlist-rekindled.json" },
{ "name": "ExploreCraft: Marbled", "file": "modlist-marbled.json" }
]

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -132,10 +132,10 @@
resolved "https://registry.yarnpkg.com/@neoconfetti/svelte/-/svelte-1.0.0.tgz#84a7f98981ad546d959d8c99460da8cebdf70301"
integrity sha512-SmksyaJAdSlMa9cTidVSIqYo1qti+WTsviNDwgjNVm+KQ3DRP2Df9umDIzC4vCcpEYY+chQe0i2IKnLw03AT8Q==
"@picocss/pico@^2.0.6":
version "2.0.6"
resolved "https://registry.yarnpkg.com/@picocss/pico/-/pico-2.0.6.tgz#16e6d253366ab245e67bac6faa95a45edcac4124"
integrity sha512-/d8qsykowelD6g8k8JYgmCagOIulCPHMEc2NC4u7OjmpQLmtSetLhEbt0j1n3fPNJVcrT84dRp0RfJBn3wJROA==
"@picocss/pico@^1.5.10":
version "1.5.13"
resolved "https://registry.yarnpkg.com/@picocss/pico/-/pico-1.5.13.tgz#2a2f2f5fcdd4e3f4ceedce7f95889faf39025362"
integrity sha512-BPTeE4JC95+7/vsG9r+6hDR1qUkV4YZ1blI/TI6peOmM94XubjmUDE3jUi4f6DBV6WmCL76ueTct/NerJ33E8A==
"@polka/url@^1.0.0-next.24":
version "1.0.0-next.25"
@ -297,11 +297,11 @@ brace-expansion@^2.0.1:
balanced-match "^1.0.0"
braces@~3.0.2:
version "3.0.3"
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789"
integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
version "3.0.2"
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
dependencies:
fill-range "^7.1.1"
fill-range "^7.0.1"
buffer-crc32@^0.2.5:
version "0.2.13"
@ -408,10 +408,10 @@ estree-walker@^2.0.2:
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac"
integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==
fill-range@^7.1.1:
version "7.1.1"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292"
integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
fill-range@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
dependencies:
to-regex-range "^5.0.1"
@ -483,9 +483,9 @@ hasown@^2.0.0:
function-bind "^1.1.2"
immutable@^4.0.0:
version "4.3.6"
resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.6.tgz#6a05f7858213238e587fb83586ffa3b4b27f0447"
integrity sha512-Ju0+lEMyzMVZarkTn/gqRpdqd5dOPaz1mCZ0SH3JV6iFw81PldE/PEB1hWVEA288HPt4WXW8O7AWxB10M+03QQ==
version "4.3.5"
resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.5.tgz#f8b436e66d59f99760dc577f5c99a4fd2a5cc5a0"
integrity sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==
import-meta-resolve@^4.0.0:
version "4.0.0"
@ -560,20 +560,13 @@ kleur@^4.1.5:
resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780"
integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==
magic-string@^0.30.0, magic-string@^0.30.3:
magic-string@^0.30.0, magic-string@^0.30.3, magic-string@^0.30.5:
version "0.30.8"
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.8.tgz#14e8624246d2bedba70d5462aa99ac9681844613"
integrity sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==
dependencies:
"@jridgewell/sourcemap-codec" "^1.4.15"
magic-string@^0.30.5:
version "0.30.10"
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.10.tgz#123d9c41a0cb5640c892b041d4cfb3bd0aa4b39e"
integrity sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==
dependencies:
"@jridgewell/sourcemap-codec" "^1.4.15"
min-indent@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869"
@ -719,9 +712,9 @@ sander@^0.5.0:
rimraf "^2.5.2"
sass@^1.62.0:
version "1.77.4"
resolved "https://registry.yarnpkg.com/sass/-/sass-1.77.4.tgz#92059c7bfc56b827c56eb116778d157ec017a5cd"
integrity sha512-vcF3Ckow6g939GMA4PeU7b2K/9FALXk2KF9J87txdHzXbUF9XRQRwSxcAs/fGaTnJeBFd7UoV22j3lzMLdM0Pw==
version "1.74.1"
resolved "https://registry.yarnpkg.com/sass/-/sass-1.74.1.tgz#686fc227d3707dd25cb2925e1db8e4562be29319"
integrity sha512-w0Z9p/rWZWelb88ISOLyvqTWGmtmu2QJICqDBGyNnfG4OUnPX9BBjjYIXUpXCMOOg5MQWNpqzt876la1fsTvUA==
dependencies:
chokidar ">=3.0.0 <4.0.0"
immutable "^4.0.0"
@ -774,9 +767,9 @@ svelte-hmr@^0.15.3:
integrity sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==
svelte-preprocess@^5.0.3:
version "5.1.4"
resolved "https://registry.yarnpkg.com/svelte-preprocess/-/svelte-preprocess-5.1.4.tgz#14ada075c94bbd2b71c5ec70ff72f8ebe1c95b91"
integrity sha512-IvnbQ6D6Ao3Gg6ftiM5tdbR6aAETwjhHV+UKGf5bHGYR69RQvF1ho0JKPcbUON4vy4R7zom13jPjgdOWCQ5hDA==
version "5.1.3"
resolved "https://registry.yarnpkg.com/svelte-preprocess/-/svelte-preprocess-5.1.3.tgz#7682239fe53f724c845b53026816fdfe15d028f9"
integrity sha512-xxAkmxGHT+J/GourS5mVJeOXZzne1FR5ljeOUAMXUkfEhkLEllRreXpbl3dIYJlcJRfL1LO1uIAPpBpBfiqGPw==
dependencies:
"@types/pug" "^2.0.6"
detect-indent "^6.1.0"