From a68cdaa974d0c85789cd7520eb24153c0c16e246 Mon Sep 17 00:00:00 2001
From: Eugene <59817721+SKZGx@users.noreply.github.com>
Date: Sat, 21 Oct 2023 13:10:14 +0300
Subject: [PATCH] modified: about.html modified:
addtranslation.html new file: app.py renamed: about.css ->
css/about.css renamed: addtranslation.css -> css/addtranslation.css
renamed: load.css -> css/load.css renamed: notcompleted.css ->
css/notcompleted.css renamed: scrollbar.css -> css/scrollbar.css
renamed: search.css -> css/search.css new file: css/styles.css
renamed: submited.css -> css/submited.css modified: index.html
renamed: about.js -> js/about.js renamed: index.js -> js/index.js
renamed: script.js -> js/script.js renamed: search.js -> js/search.js
renamed: tabs.js -> js/tabs.js renamed: tabsindex.js ->
js/tabsindex.js modified: mods.json new file:
static/addtranslation.css new file: static/default-image.png new
file: static/icon.png new file: static/script.js new file:
static/style.css renamed: styles.css -> static/styles.css
modified: submited.html new file: templates/editor.html
---
about.html | 16 +-
addtranslation.html | 14 +-
app.py | 149 ++
about.css => css/about.css | 12 +-
addtranslation.css => css/addtranslation.css | 0
load.css => css/load.css | 0
notcompleted.css => css/notcompleted.css | 0
scrollbar.css => css/scrollbar.css | 0
search.css => css/search.css | 0
css/styles.css | 412 ++++
submited.css => css/submited.css | 0
index.html | 22 +-
about.js => js/about.js | 0
index.js => js/index.js | 0
script.js => js/script.js | 0
search.js => js/search.js | 0
tabs.js => js/tabs.js | 0
tabsindex.js => js/tabsindex.js | 0
mods.json | 1900 +++++++++---------
static/addtranslation.css | 128 ++
static/default-image.png | Bin 0 -> 4699 bytes
static/icon.png | Bin 0 -> 15508 bytes
static/script.js | 263 +++
static/style.css | 171 ++
styles.css => static/styles.css | 2 +-
submited.html | 14 +-
templates/editor.html | 78 +
27 files changed, 2196 insertions(+), 985 deletions(-)
create mode 100644 app.py
rename about.css => css/about.css (91%)
rename addtranslation.css => css/addtranslation.css (100%)
rename load.css => css/load.css (100%)
rename notcompleted.css => css/notcompleted.css (100%)
rename scrollbar.css => css/scrollbar.css (100%)
rename search.css => css/search.css (100%)
create mode 100644 css/styles.css
rename submited.css => css/submited.css (100%)
rename about.js => js/about.js (100%)
rename index.js => js/index.js (100%)
rename script.js => js/script.js (100%)
rename search.js => js/search.js (100%)
rename tabs.js => js/tabs.js (100%)
rename tabsindex.js => js/tabsindex.js (100%)
create mode 100644 static/addtranslation.css
create mode 100644 static/default-image.png
create mode 100644 static/icon.png
create mode 100644 static/script.js
create mode 100644 static/style.css
rename styles.css => static/styles.css (99%)
create mode 100644 templates/editor.html
diff --git a/about.html b/about.html
index 9d417e0..c287093 100644
--- a/about.html
+++ b/about.html
@@ -5,8 +5,8 @@
Спільнота українізації модів
-
-
+
+
@@ -28,11 +28,11 @@
-
-
-
-
-
+
+
+
+
+
-
+
-
-
+
+
\ No newline at end of file
diff --git a/about.js b/js/about.js
similarity index 100%
rename from about.js
rename to js/about.js
diff --git a/index.js b/js/index.js
similarity index 100%
rename from index.js
rename to js/index.js
diff --git a/script.js b/js/script.js
similarity index 100%
rename from script.js
rename to js/script.js
diff --git a/search.js b/js/search.js
similarity index 100%
rename from search.js
rename to js/search.js
diff --git a/tabs.js b/js/tabs.js
similarity index 100%
rename from tabs.js
rename to js/tabs.js
diff --git a/tabsindex.js b/js/tabsindex.js
similarity index 100%
rename from tabsindex.js
rename to js/tabsindex.js
diff --git a/mods.json b/mods.json
index fe2327b..dcc79d2 100644
--- a/mods.json
+++ b/mods.json
@@ -1,946 +1,956 @@
-[{
- "title": "Apotheosis",
- "description": "Можливості варіюються від простих змін, таких як вища цукрова тростина, до масштабних капітальних ремонтів основних систем, таких як зачарування.",
- "image": "https://media.forgecdn.net/avatars/806/643/638174667713250064.png",
- "verified": true,
- "author": "",
- "completed": true,
- "link": "https://www.curseforge.com/minecraft/mc-mods/apotheosis"
-},
-{
- "title": "Gobber2",
- "description": "Мод Gobber призначений для того, щоб зробити гру в Minecraft більш захоплюючою, надаючи покращену броню, інструменти та зброю.",
- "image": "https://media.forgecdn.net/avatars/265/418/637229299628778865.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Immersive Engineering",
- "description": "технічний мод з певним шармом, заснований на ідеях та концепціях. Загалом, це про технології, натхненні реалізмом.",
- "image": "https://media.forgecdn.net/avatars/334/842/637469274508716717.png",
- "verified": true,
- "author": "",
- "completed": true,
- "link": "https://www.curseforge.com/minecraft/mc-mods/immersive-engineering"
-},
-{
- "title": "Spice of Life: SPE",
- "description": "Цей мод додає переваги від вживання різноманітної їжі у Minecraft. Він відстежує ваш раціон і дає вам атрибути або ефекти на основі вашої оцінки різноманітності.",
- "image": "https://media.forgecdn.net/avatars/570/46/637930919653071925.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "delightful",
- "description": "Налаштовуваний аддон Farmer's Delight з функціями сумісності та захоплюючими новими продуктами.",
- "image": "https://cdn.modrinth.com/data/JtSnhtNJ/707d7697b315dd6dfc84648c893bf3e057bb3e34.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "End's Delight",
- "description": "End's Delight - це аддон-мод для Farmer's Delight, заснований на додаванні кулінарного контенту з предметів Енду!",
- "image": "https://cdn.modrinth.com/data/yHN0njMr/8b215554e49c51cb5bb5ded435263d2078e0829e.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Framed Compacting Drawers",
- "description": "Це аддон-мод до Storage Drawers, який додає безмежно велику кількість нових ящиків до гри.",
- "image": "https://media.forgecdn.net/avatars/264/387/637226486288344415.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Frozen Delight",
- "description": "Frozen Delight - це просте, але якісне доповнення для Farmer's Delight, яке робить його більш сумісним з Frozen Up!",
- "image": "https://media.forgecdn.net/avatars/807/186/638176014809459782.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Frozen Up",
- "description": "мод, який додає купу нових можливостей, зберігаючи при цьому класичний стиль Minecraft. Він додає нових чарівних пухнастих рептилій: чилу, пінгвінів, північних оленів, оновлює іглу та багато іншого!",
- "image": "https://media.forgecdn.net/avatars/595/853/637971166121370460.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Ore Excavation",
- "description": "Дозволяє гравцям видобувати цілі жили руди, рубати цілі дерева або виконувати будь-які інші дії з інструментами за один раз. ",
- "image": "https://media.forgecdn.net/avatars/50/412/636090834615920242.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Rotten Creatures",
- "description": "Мод, який має на меті додати до Minecraft багато нових чудових зомбі-мобів!",
- "image": "https://cdn.modrinth.com/data/5Zusp48B/47a8369c7bc216fdc69e2ab709d5c0a7b9f8e255.jpeg",
- "verified": true,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Nether's Exoticism",
- "description": "Додає 5 екзотичних фруктів, які існують в реальному житті, кожен біом Nether отримує фрукт.",
- "image": "https://cdn.modrinth.com/data/3e4LaIlU/37235ed4c98620770a66e50018669b6bdfa00388.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Nether's Delight",
- "description": "Використовуючи передові мисливські техніки та кулінарні навички, ви зможете приготувати безліч огидних страв і покритих мохом закусок, і навіть трохи довше прожити в Незері!",
- "image": "https://cdn.modrinth.com/data/Vv0RM7WN/bcc7b753ece2584ea956888971a98dc7f3045319.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Nether's Cruelty",
- "description": "Nether's Cruelty - це невеликий аддон до Nether's Exotism, який додає нову їжу в мод. Єдина зміна, яку додає цей мод - це нова їжа, Стейк Молоха, який грабують 2 з 3 Молохів (мобів, доданих у Nether's Exoticism).",
- "image": "https://media.forgecdn.net/avatars/614/184/637997323156423195.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "The One Probe",
- "description": "TOP, альтернатива WAILA, яка показує інформацію про те, на що ви дивитеся (істоти, блоки, предмети)",
- "image": "https://cdn.modrinth.com/data/Eyw0UxEx/ca066fbe30ebf9357896ae53711b86460159aedf.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Storage Drawers",
- "description": "Ящики для зберігання запозичили ідеї від Jabba та Bibliocraft, що дозволило створити високофункціональне, компактне та естетичне рішення для зберігання.",
- "image": "https://media.forgecdn.net/avatars/10/842/635468327818431130.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Applied Energistics 2",
- "description": "Applied Energistics 2 (AE2) - це комплексний мод для Minecraft, який представляє унікальний підхід до управління внутрішньоігровими запасами.",
- "image": "https://cdn.modrinth.com/data/XxWD5pD3/icon.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Bartering Station",
- "description": "Станція обміну додає один абсолютно новий блок утиліти: Покладіть туди всі свої золоті злитки, і вони будуть віддані свиням у цьому районі. Все добро, яке вони повернуть, буде автоматично зібрано в блоці станції.",
- "image": "https://cdn.modrinth.com/data/EOig9U0j/320cbe8a7409ef0b4928ee174b32b70860eb44a1.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Chunk Loaders",
- "description": "Мод на простий завантажувач чанків, маж декілька різних рівнів, можна обрати який саме чанк завантажити інтерфейсом мапи в блоці.",
- "image": "https://cdn.modrinth.com/data/t1VgucWo/icon.png",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Catalogue",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Magnum Torch(by Fuzs)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Create : Misc & Things",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Create Central Kitchen",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Create Enchantment Industry",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Create Slice & Dice",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Create Stuff & Additions",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Create: Crystal Clear",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Cultural Delights",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Configured",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Farmer's Respite(little bit)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Crafting Station",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "It Takes a Pillage",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "More Villagers",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "FTB Quests",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "FTB Chunks",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "FTB Teams",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Refined Storage",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Building Gadgets(Direwolf20)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Keymap",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Crafting Tweaks",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "AE2 Tools",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "AE2 Additions",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Ae2 Things",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "AE2 WTLIB",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Another Furniture(little bit)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Create Confectionery",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Energy Meter",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Integrated Dungeons and Structures",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Immersive Posts",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Item Locks",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "KeyMap(by nEinjerjar)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Ma Enchants",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Patchouli",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Slice and dice",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Sophisticated Backpacks",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Tesseract (by SuperMartijn642)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Tool Complement",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Trading Post(by Fuzs)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Trashcans(by SuperMartijn642)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "CreateDeco",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "tools complement",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "terrestria",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Advanced Reborn",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Kibe",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "packpack mod",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "VC Gliders",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Simple radio",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Simple redio",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Seasons extra",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Artifacts",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Charm",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Naturalist",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Iron CHest",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Seasons fabric",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "seasons hud",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "added tools complement",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "tiered",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "purecoppertools",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "paladins",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "numismatic-overhaul",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "nametags",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "hardcorerevival",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "environmentz",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "cinderscapes",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "chronopyre",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Blockrunner",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "spell_engine",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "botania",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "beautify",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "backpacked",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "itemalchemy",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "tokenablefurnaces",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "skylorlib",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "cloth-config2",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "RelicEX",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "PlayerEX",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "MapFrontiers",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "WizardsEX",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Charm",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "xercapaint (Joy of Painting)",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "universal graves",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "forgotten graves",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "Charm of undying",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "patchouli",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-},
-{
- "title": "expandeddelight",
- "description": "",
- "image": "",
- "verified": false,
- "author": "",
- "completed": true,
- "link": ""
-}
+[
+ {
+ "title": "Apotheosis",
+ "description": "Можливості варіюються від простих змін, таких як вища цукрова тростина, до масштабних капітальних ремонтів основних систем, таких як зачарування.",
+ "image": "https://media.forgecdn.net/avatars/806/643/638174667713250064.png",
+ "verified": true,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": "https://www.curseforge.com/minecraft/mc-mods/apotheosis"
+ },
+ {
+ "title": "Gobber 2",
+ "description": "Мод Gobber призначений для того, щоб зробити гру в Minecraft більш захоплюючою, надаючи покращену броню, інструменти та зброю.",
+ "image": "https://media.forgecdn.net/avatars/265/418/637229299628778865.png",
+ "verified": false,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Immersive Engineering",
+ "description": "технічний мод з певним шармом, заснований на ідеях та концепціях. Загалом, це про технології, натхненні реалізмом.",
+ "image": "https://media.forgecdn.net/avatars/334/842/637469274508716717.png",
+ "verified": true,
+ "author": "",
+ "completed": true,
+ "link": "https://www.curseforge.com/minecraft/mc-mods/immersive-engineering"
+ },
+ {
+ "title": "Spice of Life: SPE",
+ "description": "Цей мод додає переваги від вживання різноманітної їжі у Minecraft. Він відстежує ваш раціон і дає вам атрибути або ефекти на основі вашої оцінки різноманітності.",
+ "image": "https://media.forgecdn.net/avatars/570/46/637930919653071925.png",
+ "verified": false,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "delightful",
+ "description": "Налаштовуваний аддон Farmer's Delight з функціями сумісності та захоплюючими новими продуктами.",
+ "image": "https://cdn.modrinth.com/data/JtSnhtNJ/707d7697b315dd6dfc84648c893bf3e057bb3e34.png",
+ "verified": false,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "End's Delight",
+ "description": "End's Delight - це аддон-мод для Farmer's Delight, заснований на додаванні кулінарного контенту з предметів Енду!",
+ "image": "https://cdn.modrinth.com/data/yHN0njMr/8b215554e49c51cb5bb5ded435263d2078e0829e.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Framed Compacting Drawers",
+ "description": "Це аддон-мод до Storage Drawers, який додає безмежно велику кількість нових ящиків до гри.",
+ "image": "https://media.forgecdn.net/avatars/264/387/637226486288344415.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Frozen Delight",
+ "description": "Frozen Delight - це просте, але якісне доповнення для Farmer's Delight, яке робить його більш сумісним з Frozen Up!",
+ "image": "https://media.forgecdn.net/avatars/807/186/638176014809459782.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Frozen Up",
+ "description": "мод, який додає купу нових можливостей, зберігаючи при цьому класичний стиль Minecraft. Він додає нових чарівних пухнастих рептилій: чилу, пінгвінів, північних оленів, оновлює іглу та багато іншого!",
+ "image": "https://media.forgecdn.net/avatars/595/853/637971166121370460.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Ore Excavation",
+ "description": "Дозволяє гравцям видобувати цілі жили руди, рубати цілі дерева або виконувати будь-які інші дії з інструментами за один раз. ",
+ "image": "https://media.forgecdn.net/avatars/50/412/636090834615920242.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Rotten Creatures",
+ "description": "Мод, який має на меті додати до Minecraft багато нових чудових зомбі-мобів!",
+ "image": "https://cdn.modrinth.com/data/5Zusp48B/47a8369c7bc216fdc69e2ab709d5c0a7b9f8e255.jpeg",
+ "verified": true,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Nether's Exoticism",
+ "description": "Додає 5 екзотичних фруктів, які існують в реальному житті, кожен біом Nether отримує фрукт.",
+ "image": "https://cdn.modrinth.com/data/3e4LaIlU/37235ed4c98620770a66e50018669b6bdfa00388.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Nether's Delight",
+ "description": "Використовуючи передові мисливські техніки та кулінарні навички, ви зможете приготувати безліч огидних страв і покритих мохом закусок, і навіть трохи довше прожити в Незері!",
+ "image": "https://cdn.modrinth.com/data/Vv0RM7WN/bcc7b753ece2584ea956888971a98dc7f3045319.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Nether's Cruelty",
+ "description": "Nether's Cruelty - це невеликий аддон до Nether's Exotism, який додає нову їжу в мод. Єдина зміна, яку додає цей мод - це нова їжа, Стейк Молоха, який грабують 2 з 3 Молохів (мобів, доданих у Nether's Exoticism).",
+ "image": "https://media.forgecdn.net/avatars/614/184/637997323156423195.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "The One Probe",
+ "description": "TOP, альтернатива WAILA, яка показує інформацію про те, на що ви дивитеся (істоти, блоки, предмети)",
+ "image": "https://cdn.modrinth.com/data/Eyw0UxEx/ca066fbe30ebf9357896ae53711b86460159aedf.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Storage Drawers",
+ "description": "Ящики для зберігання запозичили ідеї від Jabba та Bibliocraft, що дозволило створити високофункціональне, компактне та естетичне рішення для зберігання.",
+ "image": "https://media.forgecdn.net/avatars/10/842/635468327818431130.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Applied Energistics 2",
+ "description": "Applied Energistics 2 (AE2) - це комплексний мод для Minecraft, який представляє унікальний підхід до управління внутрішньоігровими запасами.",
+ "image": "https://cdn.modrinth.com/data/XxWD5pD3/icon.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Bartering Station",
+ "description": "Станція обміну додає один абсолютно новий блок утиліти: Покладіть туди всі свої золоті злитки, і вони будуть віддані свиням у цьому районі. Все добро, яке вони повернуть, буде автоматично зібрано в блоці станції.",
+ "image": "https://cdn.modrinth.com/data/EOig9U0j/320cbe8a7409ef0b4928ee174b32b70860eb44a1.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Chunk Loaders",
+ "description": "Мод на простий завантажувач чанків, маж декілька різних рівнів, можна обрати який саме чанк завантажити інтерфейсом мапи в блоці.",
+ "image": "https://cdn.modrinth.com/data/t1VgucWo/icon.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Catalogue",
+ "description": "Порт оригінального мода, але модифікований та адаптований спеціально для Fabric. Каталог містить меню, яке відображає список усіх встановлених модифікацій, до якого можна отримати доступ з головного меню або з гри. ",
+ "image": "https://media.forgecdn.net/avatars/871/331/638288815121260754.png",
+ "verified": false,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Magnum Torch(by Fuzs)",
+ "description": "Магнітний смолоскип додає три види дуже потужних смолоскипів, які не дають мобам нереститися на величезній території. Запобігатимуться лише природні нерестилища, тому, наприклад, нерестилища та рейди все ще працюватимуть, як і раніше.",
+ "image": "https://media.forgecdn.net/avatars/511/74/637828965575792853.png",
+ "verified": false,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Create : Misc & Things",
+ "description": "додає корисні, будівельні та веселі дрібнички, які чудово вписуються візуально до моду Create.",
+ "image": "https://media.forgecdn.net/avatars/873/437/638293470247022480.png",
+ "verified": false,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Create Central Kitchen",
+ "description": "мод, який пропонує більше інструментів та методів для автоматизації приготування їжі для інших модів у Create. ",
+ "image": "https://media.forgecdn.net/avatars/770/583/638109213062028041.png",
+ "verified": false,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Create Enchantment Industry",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Create Slice & Dice",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Create Stuff & Additions",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Create: Crystal Clear",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Cultural Delights",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Configured",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Farmer's Respite(little bit)",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Crafting Station",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "It Takes a Pillage",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "More Villagers",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "FTB Quests",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "FTB Chunks",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "FTB Teams",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Refined Storage",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Building Gadgets(Direwolf20)",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Keymap",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Crafting Tweaks",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "AE2 Tools",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "AE2 Additions",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Ae2 Things",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "AE2 WTLIB",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Another Furniture(little bit)",
+ "description": "немає опису",
+ "image": "static/default-image.png",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Create Confectionery",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Energy Meter",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Integrated Dungeons and Structures",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Immersive Posts",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Item Locks",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "KeyMap(by nEinjerjar)",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Ma Enchants",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Patchouli",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Slice and dice",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Sophisticated Backpacks",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Tesseract (by SuperMartijn642)",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Tool Complement",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Trading Post(by Fuzs)",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Trashcans(by SuperMartijn642)",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "CreateDeco",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "tools complement",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "terrestria",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Advanced Reborn",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Kibe",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "packpack mod",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "VC Gliders",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Simple radio",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Simple redio",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Seasons extra",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Artifacts",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Charm",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Naturalist",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Iron CHest",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Seasons fabric",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "seasons hud",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "added tools complement",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "tiered",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "purecoppertools",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "paladins",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "numismatic-overhaul",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "nametags",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "hardcorerevival",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "environmentz",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "cinderscapes",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "chronopyre",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Blockrunner",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "spell_engine",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "botania",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "beautify",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "backpacked",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "itemalchemy",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "tokenablefurnaces",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "skylorlib",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "cloth-config2",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "RelicEX",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "PlayerEX",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "MapFrontiers",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "WizardsEX",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Charm",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "xercapaint (Joy of Painting)",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "universal graves",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "forgotten graves",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Charm of undying",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "patchouli",
+ "description": "",
+ "image": "",
+ "verified": false,
+ "author": "",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "expandeddelight",
+ "description": "",
+ "image": "static/default-image.png",
+ "verified": false,
+ "author": "Команда СУМ",
+ "completed": true,
+ "link": ""
+ },
+ {
+ "title": "Spectum",
+ "description": "Магічний мод, що базується на розвитку та дослідженні, де ви комбінуєте кольори для створення магічних інструментів і машин, з кінцевою метою дізнатися, що лежить під колись непроникною підлогою Bedrock.",
+ "image": "https://cdn.modrinth.com/data/3rc31Hgo/70ab94a9c980769dd3f2d17850aef9f6df497ab7.png",
+ "verified": false,
+ "author": "",
+ "completed": false,
+ "link": ""
+ }
]
\ No newline at end of file
diff --git a/static/addtranslation.css b/static/addtranslation.css
new file mode 100644
index 0000000..76d5a5a
--- /dev/null
+++ b/static/addtranslation.css
@@ -0,0 +1,128 @@
+p{
+ min-height: 160px;
+}
+
+input{
+ width: 100%;
+ margin: 5px 0;
+}
+
+.addinputp, .edit-button, .site-linka{
+ width: 70%!important;
+ margin-left: 8px;
+ background-color: #7e292a;
+ border: none;
+ border-radius: 10px;
+ padding: 20px 0;
+ justify-content: center;
+ text-align: center;
+ color: white;
+}
+
+input::placeholder{
+ color:white;
+}
+
+.checks{
+ display: flex;
+ flex-direction: row-reverse;
+ flex-wrap: nowrap;
+ align-content: center;
+ align-items: center;
+}
+
+input{
+ margin-left: 8px;
+ background-color: #7e292a;
+ border: none;
+ border-radius: 10px;
+ padding: 20px 0;
+ justify-content: center;
+ text-align: center;
+ color: white;
+ margin: 3px 0;
+}
+
+.edit-button{
+ margin-bottom: 20px;
+}
+
+.edit-button{
+ padding: 20px 10px!important;
+}
+
+span{
+ margin-bottom: 10px;
+}
+
+/* Звичайний стан посилань */
+a {
+ text-decoration: none; /* Вимкнути підкреслення тексту */
+ color: white; /* Білий колір тексту */
+}
+
+/* Стан посилань при наведенні */
+a:hover {
+ text-decoration: none; /* Вимкнути підкреслення тексту при наведенні */
+ color: white; /* Зберегти білий колір тексту при наведенні */
+}
+.site-link{
+ width: 100%;
+ display: flex;
+ align-content: flex-start;
+ flex-wrap: nowrap;
+ justify-content: center;
+ flex-direction: row;
+}
+
+.site-linka{
+ display: flex;
+}
+.edit-button, .site-linka{
+ width: 251px!important;
+}
+
+.editbuttons{
+ display: flex;
+ align-items: center;
+ align-content: center;
+ flex-wrap: nowrap;
+ justify-content: center;
+ flex-direction: row;
+ padding: 10px;
+
+}
+
+.checks{
+ margin: 5px 0;
+}
+
+.editbuttons button, .sorting{
+ width: 100px!important;
+ padding: 10px;
+ margin: 5px;
+ background-color:#7e292a;
+ color: white;
+ border: none;
+ border-radius: 10px;
+}
+
+.smallicon{
+ font-size: 30px!important;
+}
+
+
+.cancel-button:hover, .save-button:hover, .sorting:hover{
+ background-color: #c57976;
+
+}
+
+.sortcont{
+ display: flex;
+ align-items: center;
+ align-content: center;
+ flex-wrap: nowrap;
+ justify-content: center;
+ flex-direction: row;
+ padding: 10px;
+}
\ No newline at end of file
diff --git a/static/default-image.png b/static/default-image.png
new file mode 100644
index 0000000000000000000000000000000000000000..54029cc131b3fd6f9a63748df1ff2ba48fc191fb
GIT binary patch
literal 4699
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
E12(D!!vFvP
literal 0
HcmV?d00001
diff --git a/static/script.js b/static/script.js
new file mode 100644
index 0000000..b5a2fc4
--- /dev/null
+++ b/static/script.js
@@ -0,0 +1,263 @@
+$(document).ready(function () {
+ $('.edit-button').click(function () {
+ const cardDiv = $(this).closest('.card');
+ const form = cardDiv.find('.form');
+ form.toggle();
+ const cardTitle = cardDiv.data('title');
+ form.find('.new-title').val(cardTitle);
+ });
+
+ $('.site-link').each(function () {
+ const fullLink = $(this).attr('href');
+ if (fullLink) {
+ const hostname = new URL(fullLink).hostname;
+ $(this).text(hostname);
+ }
+ });
+
+ function deleteCard(cardDiv) {
+ const cardTitle = cardDiv.data('title');
+ if (confirm(`Видалити запис "${cardTitle}"? Дані запису видаляться назавжди.`)) {
+ $.ajax({
+ type: 'POST',
+ url: '/delete_card',
+ data: JSON.stringify({ title: cardTitle }),
+ contentType: 'application/json',
+ success: function () {
+ cardDiv.remove();
+ },
+ });
+ }
+ }
+
+ function saveUpdatedCard(cardDiv, form) {
+ const cardTitle = cardDiv.data('title');
+ const cardTitleElement = cardDiv.find('h3');
+ const cardDescriptionElement = cardDiv.find('p');
+ const cardImageElement = cardDiv.find('.imageitem');
+ const cardAuthorElement = cardDiv.find('.author');
+ const cardVerifiedElement = cardDiv.find('.ver');
+ const cardCompletedElement = cardDiv.find('.ove');
+ const cardLinkElement = cardDiv.find('.site-linka');
+
+ let newTitle = form.find('.new-title').val();
+ let newDescription = form.find('.new-description').val();
+ let newImage = form.find('.new-image').val();
+ let newAuthor = form.find('.new-author').val();
+ let newVerified = form.find('.new-verified').prop('checked');
+ let newCompleted = form.find('.new-completed').prop('checked');
+ let newLink = form.find('.new-link').val();
+
+ const currentLink = cardLinkElement.attr('href') || '';
+
+ const isDataChanged =
+ newTitle !== cardTitleElement.text() ||
+ newDescription !== cardDescriptionElement.text() ||
+ newImage !== cardImageElement.attr('src') ||
+ newAuthor !== cardAuthorElement.text() ||
+ newVerified !== cardVerifiedElement.text().includes('Так') ||
+ newCompleted !== cardCompletedElement.text().includes('Так') ||
+ newLink !== currentLink;
+
+ if (!isDataChanged) {
+ form.hide();
+ return;
+ }
+
+ const formData = {
+ title: cardTitle,
+ };
+
+ if (newTitle) {
+ formData.newTitle = encodeURIComponent(newTitle);
+ }
+ if (newDescription) {
+ formData.newDescription = encodeURIComponent(newDescription);
+ }
+ if (newImage) {
+ formData.newImage = encodeURIComponent(newImage);
+ }
+ if (newAuthor) {
+ formData.newAuthor = encodeURIComponent(newAuthor);
+ }
+ if (newVerified) {
+ formData.newVerified = newVerified;
+ }
+ if (newCompleted) {
+ formData.newCompleted = newCompleted;
+ }
+ if (newLink && newLink !== '#') {
+ formData.newLink = encodeURIComponent(newLink);
+ }
+
+ $.ajax({
+ type: 'POST',
+ url: '/edit_card',
+ data: JSON.stringify(formData),
+ contentType: 'application/json',
+ success: function (response) {
+ form.hide();
+ if (formData.newTitle) {
+ cardTitleElement.text(decodeURIComponent(response.title));
+ }
+ if (formData.newDescription) {
+ cardDescriptionElement.text(decodeURIComponent(response.description));
+ }
+ if (formData.newImage) {
+ cardImageElement.attr('src', decodeURIComponent(response.image));
+ }
+ if (formData.newAuthor) {
+ cardAuthorElement.text(decodeURIComponent(response.author));
+ }
+ if (formData.newVerified) {
+ cardVerifiedElement.text('Офіційно: ' + (response.verified ? 'Так' : 'Ні'));
+ }
+ if (formData.newCompleted) {
+ cardCompletedElement.text('Завершено: ' + (response.completed ? 'Так' : 'Ні'));
+ }
+ if (formData.newLink) {
+ cardLinkElement.attr('href', decodeURIComponent(response.link));
+ }
+ },
+ });
+ }
+
+
+ $('.save-button').click(function () {
+ const cardDiv = $(this).closest('.card');
+ const form = cardDiv.find('.form');
+ saveUpdatedCard(cardDiv, form);
+ });
+
+ $('.cancel-button').click(function () {
+ const form = $(this).closest('.form');
+ form.hide();
+ });
+
+ $('.add-button').click(function () {
+ const newTitle = $('#new-title').val();
+ const newDescription = $('#new-description').val();
+ const newImage = $('#new-image').val();
+ const newAuthor = $('#new-author').val();
+ const newLink = $('#new-link').val();
+ const newVerified = $('#new-verified').prop('checked');
+ const newCompleted = $('#new-completed').prop('checked');
+
+ const titleRegex = /^[^0-9!@#$%^&*()][A-Za-zА-Яа-яЁёҐґЄєЇїІі0-9\s]*$/;
+
+ if (!titleRegex.test(newTitle)) {
+ alert('Помилка: Заголовок повинен починатися не з цифри чи спеціального символу.');
+ return;
+ }
+
+ const formData = JSON.stringify({
+ title: newTitle,
+ description: newDescription,
+ image: newImage,
+ verified: newVerified,
+ author: newAuthor,
+ completed: newCompleted,
+ link: newLink,
+ });
+
+ $.ajax({
+ type: 'POST',
+ url: '/add_card',
+ data: formData,
+ contentType: 'application/json',
+ success: function (response) {
+ const newCardHtml = `
+
+ `;
+ const newCard = $(newCardHtml);
+ $('.card-container').append(newCard);
+
+ newCard.find('.delete-button').click(function () {
+ deleteCard(newCard);
+ });
+ newCard.find('.edit-button').click(function () {
+ editCard(newCard);
+ });
+
+ $('#new-title').val('');
+ $('#new-description').val('');
+ $('#new-image').val('');
+ $('#new-author').val('');
+ $('#new-link').val('');
+ $('#new-verified').prop('checked', false);
+ $('#new-completed').prop('checked', false);
+ },
+ });
+ });
+
+ function editCard(card) {
+ const form = card.find('.form');
+ form.show();
+ const cardTitle = card.data('title');
+ const currentTitle = card.find('h3').text();
+ const currentDescription = card.find('p').text();
+ const currentImage = card.find('.imageitem').attr('src');
+ const currentAuthor = card.find('.author').text();
+ const currentVerified = card.find('.ver').text().includes('Так');
+ const currentCompleted = card.find('.ove').text().includes('Так');
+ const currentLink = card.find('.link').find('a').attr('href');
+
+ form.find('.new-title').val(currentTitle);
+ form.find('.new-description').val(currentDescription);
+ form.find('.new-image').val(currentImage);
+ form.find('.new-author').val(currentAuthor);
+ form.find('.new-verified').prop('checked', currentVerified);
+ form.find('.new-completed').prop('checked', currentCompleted);
+ form.find('.new-link').val(currentLink);
+ }
+
+ $('.edit-button').click(function () {
+ editCard($(this).closest('.card'));
+ });
+
+
+
+ function sortCardsAZ() {
+ const cardContainer = $('.card-container');
+ const cards = cardContainer.find('.card').get();
+ cards.sort(function (a, b) {
+ const titleA = $(a).data('title').toLowerCase();
+ const titleB = $(b).data('title').toLowerCase();
+ return titleA.localeCompare(titleB);
+ });
+ cardContainer.empty();
+ $.each(cards, function (i, card) {
+ cardContainer.append(card);
+ });
+ }
+
+ function sortCardsZA() {
+ const cardContainer = $('.card-container');
+ const cards = cardContainer.find('.card').get();
+ cards.sort(function (a, b) {
+ const titleA = $(a).data('title').toLowerCase();
+ const titleB = $(b).data('title').toLowerCase();
+ return titleB.localeCompare(titleA);
+ });
+ cardContainer.empty();
+ $.each(cards, function (i, card) {
+ cardContainer.append(card);
+ });
+ }
+
+ $('#sort-az-button').click(sortCardsAZ);
+ $('#sort-za-button').click(sortCardsZA);
+
+ function setupCardButtons() {
+ // Add event handlers for any dynamically added card buttons
+ $('.card-container .delete-button').click(function () {
+ deleteCard($(this).closest('.card'));
+ });
+
+ $('.card-container .edit-button').click(function () {
+ editCard($(this).closest('.card'));
+ });
+ }
+
+ setupCardButtons();
+});
diff --git a/static/style.css b/static/style.css
new file mode 100644
index 0000000..b773a09
--- /dev/null
+++ b/static/style.css
@@ -0,0 +1,171 @@
+
+
+
+.dialog {
+ display: none;
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 999;
+ justify-content: center!important;
+ align-items: center!important;
+}
+
+.imageitem{
+ height: 200px;
+ width: 200px;
+ margin-bottom: 20px;
+ border-radius: 20px;
+}
+
+.dialog-content {
+ background: #fff;
+ padding: 20px;
+ border-radius: 5px;
+ text-align: center;
+}
+
+
+body {
+ background-color: #1d1b1e;
+ font-family: Arial, sans-serif;
+ color: white;
+ margin: 0;
+ padding: 0;
+}
+
+.container {
+ max-width: 960px;
+ margin: 0 auto;
+ padding: 20px;
+}
+
+.card-container, .card {
+ display: flex!important;
+ justify-content: center;
+ flex-direction: row;
+ flex-wrap: wrap;
+ align-content: flex-start;
+ align-items: flex-start;
+}
+
+
+.card {
+ display: flex!important;
+ width: 280px;
+ background-color: #2b2222;
+ border: 1px solid #7e292a;
+ border-radius: 10px;
+ margin: 10px;
+ padding: 20px;
+ display: inline-block;
+ text-align: left;
+ min-height: 450px!important;
+ flex-direction: column;
+ justify-content: flex-start;
+ align-items: center;
+ align-content: center;
+ flex-wrap: nowrap;
+}
+.delete-button{
+ width: 50%!important;
+ margin-bottom: 5px;
+}
+
+.add-button, .delete-button{
+ background-color: #7e292a;
+ font-family: 'Ubuntu', sans-serif;
+ color: #dbe1f8;
+ border: none;
+ height: 60px;
+ width: 60px;
+ align-items: center;
+ align-content: center;
+ border-radius: 20px;
+}
+
+
+.card h3 {
+ margin: 0;
+}
+
+.edit-button {
+ background-color: #7e292a;
+ color: white;
+ border: none;
+ padding: 5px 10px;
+ border-radius: 10px;
+ cursor: pointer;
+}
+
+.edit-button:hover, .add-button:hover, .delete-button:hover, .site-linka:hover {
+ background-color: #c57976;
+}
+
+
+/* Додані стилі для центрування */
+
+.dialog h3 {
+ margin: 0;
+}
+
+.dialog input {
+ width: 100%;
+ padding: 5px;
+ margin: 5px 0;
+}
+
+.dialog button {
+ background-color: #7e292a;
+ color: white;
+ border: none;
+ padding: 5px 10px;
+ border-radius: 5px;
+ cursor: pointer;
+}
+
+.dialog button:hover {
+ background-color: #c57976;
+}
+
+.adddiv{
+ border: 1px solid #7e292a;
+ display: flex!important;
+ justify-content: center;
+ flex-direction: column;
+ flex-wrap: wrap;
+ align-content: center;
+ align-items: center;
+ background-color: #2b2222;
+ padding: 50px 0;
+ font-family: 'Ubuntu', sans-serif;
+ color: #dbe1f8;
+ height: 300px;
+ width: 200px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ position: fixed;
+ bottom: 35%;
+ right: 20px;
+ cursor: pointer;
+ z-index: 1000;
+ border-radius: 20px;
+ box-shadow: -7px -6px 21px 0px rgba(0,0,0,0.75);
+-webkit-box-shadow: -7px -6px 21px 0px rgba(0,0,0,0.75);
+-moz-box-shadow: -7px -6px 21px 0px rgba(0,0,0,0.75);
+}
+
+
+.addbutttt{
+ display: flex!important;
+ justify-content: center;
+ flex-direction: column;
+ flex-wrap: wrap;
+ align-content: center;
+ align-items: center;
+
+}
\ No newline at end of file
diff --git a/styles.css b/static/styles.css
similarity index 99%
rename from styles.css
rename to static/styles.css
index 02a6e59..80b3d50 100644
--- a/styles.css
+++ b/static/styles.css
@@ -35,7 +35,7 @@ background-size: cover!important;
-webkit-border-radius: 19px 19px 0px 0px;
-moz-border-radius: 19px 19px 0px 0px;
}
- .addbutton{
+ .addbutton, .delete-button{
display: block!important; /* Показувати меню на мобільних пристроях */
position: fixed; /* Фіксована позиція */
bottom: 8px; /* Внизу екрану */
diff --git a/submited.html b/submited.html
index adaf484..bbdefa1 100644
--- a/submited.html
+++ b/submited.html
@@ -7,12 +7,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
@@ -65,7 +65,7 @@
© 2023 Спільнота українізації модів
- Створено в Україні для українців
+ Створено в Києві з 💜
NOT AN OFFICIAL MINECRAFT PRODUCT. NOT APPROVED BY OR ASSOCIATED WITH MOJANG.
diff --git a/templates/editor.html b/templates/editor.html
new file mode 100644
index 0000000..e1061dc
--- /dev/null
+++ b/templates/editor.html
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {% for card in data %}
+
+
+
+
{{ card.title }}
+
{{ card.description }}
+
Офіційно: {{ 'Так' if card.verified else 'Ні' }}
+
Завершено: {{ 'Так' if card.completed else 'Ні' }}
+
Автор: {{ card.author or 'Команда СУМ'}}
+
Посилання: {{card.link|urlparse or 'немає' }}
+
+
+
+
+
+ {% endfor %}
+
+
+
+
+
+
+
+
+
+