From 8354b455d4a8333c41bd6c821de2c827c42c22bb Mon Sep 17 00:00:00 2001 From: tenkuma Date: Sun, 26 Oct 2025 17:36:37 -0300 Subject: [PATCH] Added allprojects.njk that lists all projecs (pagination), added contributing.md that has instructinos about adding your project to neoBeta, added errors template and 404 page, moved projects metadata to json file. --- _includes/error.njk | 11 +++++++++ _includes/featured.njk | 2 +- _includes/header.njk | 4 +++- _includes/project.njk | 10 ++++++-- allprojects.njk | 37 ++++++++++++++++++++++++++++++ assets/styles.css | 13 +++++++---- contribute.md | 28 ++++++++++++++++++++++ error/404.html | 4 ++++ error/error.json | 3 +++ index.njk | 5 ++-- projects/aboukkit/index.json | 8 +++++++ projects/aboukkit/index.md | 8 ------- projects/devilwithin/index.json | 8 +++++++ projects/devilwithin/index.md | 8 ------- projects/ghostsandstuff/index.json | 9 ++++++++ projects/ghostsandstuff/index.md | 10 -------- projects/hangglidere/index.json | 6 +++++ projects/hangglidere/index.md | 7 ------ projects/tefreezer/index.json | 8 +++++++ projects/tefreezer/index.md | 8 ------- projects/tenkumalib/index.json | 8 +++++++ projects/tenkumalib/index.md | 14 ++++------- projects/timekeeper/index.json | 8 +++++++ projects/timekeeper/index.md | 8 ------- 24 files changed, 167 insertions(+), 68 deletions(-) create mode 100644 _includes/error.njk create mode 100644 allprojects.njk create mode 100644 contribute.md create mode 100644 error/404.html create mode 100644 error/error.json create mode 100644 projects/aboukkit/index.json create mode 100644 projects/devilwithin/index.json create mode 100644 projects/ghostsandstuff/index.json create mode 100644 projects/hangglidere/index.json create mode 100644 projects/tefreezer/index.json create mode 100644 projects/tenkumalib/index.json create mode 100644 projects/timekeeper/index.json diff --git a/_includes/error.njk b/_includes/error.njk new file mode 100644 index 0000000..fe1dbbd --- /dev/null +++ b/_includes/error.njk @@ -0,0 +1,11 @@ +--- +layout: "base.njk" +--- +

{{ page.fileSlug }} - Ouch! We hit a wall.

+

{{ errorDescription | safe }}

+{% if errorQuote %} +

"{{ errorQuote | safe }}"

+{% endif %} +{% if content %} +{{ content | safe }} +{% endif %} \ No newline at end of file diff --git a/_includes/featured.njk b/_includes/featured.njk index 9a9c950..43f09ef 100644 --- a/_includes/featured.njk +++ b/_includes/featured.njk @@ -7,7 +7,7 @@ {% set projectData = item %}
- +

{{ projectData.data.name }}

by {{ projectData.data.author }}

diff --git a/_includes/header.njk b/_includes/header.njk index d4b807b..864a49c 100644 --- a/_includes/header.njk +++ b/_includes/header.njk @@ -3,7 +3,9 @@

neoBeta

Adrian Victor, 2025 (Unlicense)

diff --git a/_includes/project.njk b/_includes/project.njk index e6f3e12..1d0f1b8 100644 --- a/_includes/project.njk +++ b/_includes/project.njk @@ -21,11 +21,17 @@

{{ subtitle }}

- + {% include "project_image.njk" %}
- {{ content | safe }} + {% if content %} + {{ content | safe }} + {% else %} +

Oopsie! :<

+

Seems like we don't have a description for this project.

+

"If only the clockworks could speak
I wouldn't be so alone"

+ {% endif %}
diff --git a/allprojects.njk b/allprojects.njk new file mode 100644 index 0000000..e8982e6 --- /dev/null +++ b/allprojects.njk @@ -0,0 +1,37 @@ +--- +layout: base.njk +pagination: + data: collections.projects + size: 10 + alias: paginatedProjects +--- + + + diff --git a/assets/styles.css b/assets/styles.css index 10b67e4..dc08f29 100644 --- a/assets/styles.css +++ b/assets/styles.css @@ -51,11 +51,11 @@ button:hover { } code { - font-family: Minecraft, 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background-color: rgb(75, 75, 75); border: 1px solid white; padding-left: 4px; padding-right: 4px; + font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; /* margin-left: 2px; margin-right: 2px; */ } @@ -194,13 +194,14 @@ img { image-rendering: pixelated; } -#projectDescription li { +li { margin-left: 20px; list-style-type: "> "; + margin-bottom: .4em; } -#projectDescription h1, h2 { - margin-top: 8px; +h1, h2, h3 { + margin-bottom: .4em; } #projectTitleAuthor { @@ -264,6 +265,10 @@ img { margin-bottom: 0px; } +.errorQuote { + color: gray; +} + @media only screen and (max-width: 1280px) { #everythingHelper { diff --git a/contribute.md b/contribute.md new file mode 100644 index 0000000..f1651c0 --- /dev/null +++ b/contribute.md @@ -0,0 +1,28 @@ +--- +layout: "base.njk" +--- +## How can I get my project here? + +neoBeta is an open-source content management system. There are various ways you can put your plugin/mod on our catalog: + - Clone neoBeta's repository, create your project folder inside the /projects directory with the necessary metadata (index.md for project description, index.json for metadata and any other file your project may depend on) and make a pull request. Less manual work on our side, so review should be quickier. + - Open an issue on our GitHub repository with the project information. This may take longer as a contributor will have to spend time creating the project files, but is useful if you're not confortable using Git. + - Host your own instance of neoBeta. + +### Required metadata fields + - *name* - project name. + ```"name": "Ghosts 'n Stuff"``` + - *subtitle* - project's brief description. + ```"subtitle": "Miscellaneous additions to your server."``` + - *author* - your author name, must be consistent across all your submissions. + ```"author": "tenkuma"``` + - *tags* - whether your project is a plugin or mod. + ```"tags": ["plugin", "mod"]``` + +### Optional metadata fields +Please fill as many fields as possible. + - *downloadLink* - link for when you click the download link. + ```"downloadLink": "https://example.com"``` + - *images* - lists of image files names or URLs that will appear in the project page. + ```"images": "["image1.png", "image2.png", "image3.png"]"``` + - *logo* - your logo file name or URL. + ```"logo": "logo.png"``` \ No newline at end of file diff --git a/error/404.html b/error/404.html new file mode 100644 index 0000000..fe976ff --- /dev/null +++ b/error/404.html @@ -0,0 +1,4 @@ +--- +errorQuote: "If only the clockworks could speak
I wouldn't be so alone" +errorDescription: "We didn't find what you are looking for..." +--- \ No newline at end of file diff --git a/error/error.json b/error/error.json new file mode 100644 index 0000000..c185a63 --- /dev/null +++ b/error/error.json @@ -0,0 +1,3 @@ +{ + "layout": "error.njk" +} \ No newline at end of file diff --git a/index.njk b/index.njk index f9434b2..8756e23 100644 --- a/index.njk +++ b/index.njk @@ -5,7 +5,8 @@ layout: "base.njk" {% import "featured.njk" as featured %}

Welcome.

-

This is a project that aims to preserve Minecraft Beta mods and plugins through archives of documentation and JARs and showcase new plugins for beta.

+

This is a project that aims to preserve Minecraft Beta mods and plugins through archives of documentation and JARs, and showcase new plugins for beta.

Featured projects

-{{ featured.projectShowcase(["aboukkit", "tenkumalib", "hangglidere", "devilwithin", "timekeeper", "tefreezer"], collections.projects) }} \ No newline at end of file +{{ featured.projectShowcase(["aboukkit", "tenkumalib", "hangglidere", "devilwithin", "timekeeper", "tefreezer"], collections.projects) }} + \ No newline at end of file diff --git a/projects/aboukkit/index.json b/projects/aboukkit/index.json new file mode 100644 index 0000000..b130087 --- /dev/null +++ b/projects/aboukkit/index.json @@ -0,0 +1,8 @@ +{ + "name": "Aboukkit", + "subtitle": "A simple way to add custom commands with custom responses to your server.", + "author": "tenkuma", + "downloadLink": "https://modrinth.com/plugin/aboukkit/versions", + "logo": "logo.png", + "tags": ["plugin"] +} \ No newline at end of file diff --git a/projects/aboukkit/index.md b/projects/aboukkit/index.md index 71e7b63..423b0ac 100644 --- a/projects/aboukkit/index.md +++ b/projects/aboukkit/index.md @@ -1,11 +1,3 @@ ---- -name: "Aboukkit" -subtitle: "A simple way to add custom commands with custom responses to your server." -author: "tenkuma" -downloadLink: "https://modrinth.com/plugin/aboukkit/versions" -logo: "logo.png" -tags: plugin ---- ![Aboukkit logo, abboukit written in a Minecraft's logo like font painted in red.](https://cdn.modrinth.com/data/cached_images/94b1f813f8e15f82dddcffa5284c92e59cb93b27.png) diff --git a/projects/devilwithin/index.json b/projects/devilwithin/index.json new file mode 100644 index 0000000..09ee3a7 --- /dev/null +++ b/projects/devilwithin/index.json @@ -0,0 +1,8 @@ +{ + "name": "The Devil Within", + "subtitle": "Adds enchanting to Minecraft Beta. Supports balancing through curses.", + "author": "tenkuma", + "downloadLink": "https://modrinth.com/plugin/devilwithin/versions", + "logo": "logo.png", + "tags": ["plugin"] +} \ No newline at end of file diff --git a/projects/devilwithin/index.md b/projects/devilwithin/index.md index 59126bb..820c537 100644 --- a/projects/devilwithin/index.md +++ b/projects/devilwithin/index.md @@ -1,11 +1,3 @@ ---- -name: "The Devil Within" -subtitle: "Adds enchanting to Minecraft Beta. Supports balancing through curses." -author: "tenkuma" -downloadLink: "https://modrinth.com/plugin/devilwithin/versions" -logo: "logo.png" -tags: plugin ---- This plugin is a remake of [GoldEnchant](https://dev.bukkit.org/projects/goldenchant/). This plugin depends on [tenkumaLib](https://modrinth.com/plugin/tenkumalib). diff --git a/projects/ghostsandstuff/index.json b/projects/ghostsandstuff/index.json new file mode 100644 index 0000000..76464f8 --- /dev/null +++ b/projects/ghostsandstuff/index.json @@ -0,0 +1,9 @@ +{ + "name": "Ghosts 'n Stuff", + "subtitle": "Miscellaneous additions to your Minecraft server.", + "author": "tenkuma", + "downloadLink": "https://modrinth.com/plugin/ghosts/versions", + "images": ["anti-spam.png", "rainbow-chat.png", "skibidi-blocker.png"], + "logo": "logo.png", + "tags": ["plugin"] +} \ No newline at end of file diff --git a/projects/ghostsandstuff/index.md b/projects/ghostsandstuff/index.md index f8072b9..c487d9b 100644 --- a/projects/ghostsandstuff/index.md +++ b/projects/ghostsandstuff/index.md @@ -1,13 +1,3 @@ ---- -name: "Ghosts 'n Stuff" -subtitle: "Miscellaneous additions to your Minecraft server." -author: "tenkuma" -downloadLink: "https://modrinth.com/plugin/ghosts/versions" -images: ["anti-spam.png", "rainbow-chat.png", "skibidi-blocker.png"] -logo: "logo.png" -tags: "plugin" ---- - This plugins was made to use stuff from my library that would not fit into any plugin (or not in the way presented here) that has ~~a lot~~ (WIP) of random stuff. Everything should be togglable in the config. ## Features diff --git a/projects/hangglidere/index.json b/projects/hangglidere/index.json new file mode 100644 index 0000000..81995a0 --- /dev/null +++ b/projects/hangglidere/index.json @@ -0,0 +1,6 @@ +{ + "name": "HangGlideRE", + "subtitle": "Fly with a chicken!", + "author": "tenkuma", + "tags": ["plugin"] +} \ No newline at end of file diff --git a/projects/hangglidere/index.md b/projects/hangglidere/index.md index 198b9e8..e69de29 100644 --- a/projects/hangglidere/index.md +++ b/projects/hangglidere/index.md @@ -1,7 +0,0 @@ ---- -name: "HangGlideRE" -subtitle: "" -author: "tenkuma" -downloadLink: "https://modrinth.com/plugin/aboukkit/versions" -tags: plugin ---- diff --git a/projects/tefreezer/index.json b/projects/tefreezer/index.json new file mode 100644 index 0000000..5126fc2 --- /dev/null +++ b/projects/tefreezer/index.json @@ -0,0 +1,8 @@ +{ + "name": "teFreezer", + "subtitle": "Force your players to refrigerate their food by rotting food in unrefrigerated chests!", + "author": "tenkuma", + "downloadLink": "https://modrinth.com/plugin/freezer/versions", + "logo": "logo.png", + "tags": ["plugin"] +} \ No newline at end of file diff --git a/projects/tefreezer/index.md b/projects/tefreezer/index.md index 9345e70..a99d161 100644 --- a/projects/tefreezer/index.md +++ b/projects/tefreezer/index.md @@ -1,11 +1,3 @@ ---- -name: "teFreezer" -subtitle: "Force your players to refrigerate their food by rotting food in unrefrigerated chests!" -author: "tenkuma" -downloadLink: "https://modrinth.com/plugin/freezer/versions" -logo: "logo.png" -tags: plugin ---- ![Tefreezer written in Minecraft-like font in purple.](https://cdn.modrinth.com/data/cached_images/0aaabfb51609876ece6de83e62b9641a4635fad9_0.webp) teFreezer is a fork of [Freezer by outadoc](https://dev.bukkit.org/projects/freezer), logo by [malcolmriley](https://github.com/malcolmriley/unused-textures/blob/master/items/food_pepper.png). diff --git a/projects/tenkumalib/index.json b/projects/tenkumalib/index.json new file mode 100644 index 0000000..ac8b847 --- /dev/null +++ b/projects/tenkumalib/index.json @@ -0,0 +1,8 @@ +{ + "name": "tenkuma's Library", + "subtitle": "Library to support my other plugins. Does nothing on it's own.", + "author": "tenkuma", + "downloadLink": "https://modrinth.com/plugin/tenkumalib/versions", + "logo": "logo.png", + "tags": ["plugin"] +} \ No newline at end of file diff --git a/projects/tenkumalib/index.md b/projects/tenkumalib/index.md index b369eb3..2124d73 100644 --- a/projects/tenkumalib/index.md +++ b/projects/tenkumalib/index.md @@ -1,9 +1,5 @@ ---- -name: "tenkuma's Library" -subtitle: "Library to support my other plugins. Does nothing on it's own." -author: "tenkuma" -downloadLink: "https://modrinth.com/plugin/tenkumalib/versions" -logoName: "logo" -logoExtension: "png" -tags: "plugin" ---- +This is a dependency for my other projects. This does not do anything on it's own. + +## Why do I have to install this alongside your plugins? + +You may think that installing two plugins instead of one is installing unecessary bloat that is useless. But it's not, libraries hold code that is common to more than one project, so you avoid having the same code repeated twice or more in your server. Also it's easier for the developer that has to improve only a single codebase to improve all the rest of the dependants. diff --git a/projects/timekeeper/index.json b/projects/timekeeper/index.json new file mode 100644 index 0000000..bfe9399 --- /dev/null +++ b/projects/timekeeper/index.json @@ -0,0 +1,8 @@ +{ + "name": "TimeKeeper", + "subtitle": "Syncs real world time with your Minecraft server time.", + "author": "tenkuma", + "downloadLink": "https://modrinth.com/plugin/timekeeper/versions", + "logo": "logo.png", + "tags": ["plugin"] +} \ No newline at end of file diff --git a/projects/timekeeper/index.md b/projects/timekeeper/index.md index ced7baf..27d688d 100644 --- a/projects/timekeeper/index.md +++ b/projects/timekeeper/index.md @@ -1,11 +1,3 @@ ---- -name: "TimeKeeper" -subtitle: "Syncs real world time with your Minecraft server time." -author: "tenkuma" -downloadLink: "https://modrinth.com/plugin/timekeeper/versions" -logo: "logo.png" -tags: plugin ---- This is a plugin for Minecraft beta that syncs the real world time with your in-game time. Logo by [malcolmriley](https://github.com/malcolmriley/unused-textures/blob/master/items/). ## How it works