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.
This commit is contained in:
parent
6ef89eed3d
commit
8354b455d4
24 changed files with 167 additions and 68 deletions
11
_includes/error.njk
Normal file
11
_includes/error.njk
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
layout: "base.njk"
|
||||
---
|
||||
<h2>{{ page.fileSlug }} - Ouch! We hit a wall.</h2>
|
||||
<p>{{ errorDescription | safe }}</p>
|
||||
{% if errorQuote %}
|
||||
<p class="errorQuote"><i>"{{ errorQuote | safe }}"</i></p>
|
||||
{% endif %}
|
||||
{% if content %}
|
||||
{{ content | safe }}
|
||||
{% endif %}
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
{% set projectData = item %}
|
||||
<div class="featuredProject">
|
||||
<a href="/projects/{{ project }}">
|
||||
<img src="{% if projectData.data.logoName and projectData.data.logoExtension %}/projects/{{project}}/{{ projectData.data.logoName }}.{{ projectData.data.logoExtension }}{% else %}/assets/mod-placeholder.png{% endif %}">
|
||||
<img src="{% if projectData.data.logo %}/projects/{{project}}/{{ projectData.data.logo }}{% else %}/assets/mod-placeholder.png{% endif %}">
|
||||
</a>
|
||||
<p class="featuredProjectName">{{ projectData.data.name }}</p>
|
||||
<p>by <a href="/authors/{{ projectData.data.author }}/">{{ projectData.data.author }}</a></p>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,9 @@
|
|||
<h1 id="title">neoBeta</h1>
|
||||
<ul id="headerLinks">
|
||||
<a href="/">home</a> -
|
||||
<a href="/search">search</a>
|
||||
<a href="/search">search</a> -
|
||||
<a href="/allprojects">index</a> -
|
||||
<a href="/contribute">contribute</a>
|
||||
</ul>
|
||||
<p id="credits">Adrian Victor, 2025 (<a href="https://git.disroot.org/adrianvictor/neoBeta">Unlicense</a>)</p>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -21,11 +21,17 @@
|
|||
</div>
|
||||
<p id="projectSubtitle">{{ subtitle }}</p>
|
||||
</div>
|
||||
<a id="downloadLink" href="{{ downloadLink }}"><button id="downloadButton">Download</button></a>
|
||||
<a id="downloadLink" href="{{ downloadLink }}"><button id="downloadButton">{% if downloadLink %}Download{% else %}Unavailable{% endif %}</button></a>
|
||||
</div>
|
||||
{% include "project_image.njk" %}
|
||||
<main id="projectDescription">
|
||||
{{ content | safe }}
|
||||
{% if content %}
|
||||
{{ content | safe }}
|
||||
{% else %}
|
||||
<h2>Oopsie! :<</h2>
|
||||
<p>Seems like we don't have a description for this project.</p>
|
||||
<p class="errorQuote"><i>"If only the clockworks could speak<br>I wouldn't be so alone"</i></p>
|
||||
{% endif %}
|
||||
</main>
|
||||
</div>
|
||||
</body>
|
||||
|
|
|
|||
37
allprojects.njk
Normal file
37
allprojects.njk
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
---
|
||||
layout: base.njk
|
||||
pagination:
|
||||
data: collections.projects
|
||||
size: 10
|
||||
alias: paginatedProjects
|
||||
---
|
||||
<ul style="display: flex; flex-direction: column; gap: 1em;">
|
||||
{% for project in paginatedProjects %}
|
||||
<div class="searchItem">
|
||||
<p>
|
||||
{% if project.data.logo %}
|
||||
<img float="left" class="searchItemImage" src="{{ project.url }}{{ project.data.logo }}">
|
||||
{% endif %}
|
||||
<a class="searchItemTitle" href="{{ project.url }}">{{ project.data.name }}</a>
|
||||
{% if project.data.author %}
|
||||
by <a href="/authors/{{ project.data.author }}">{{ project.data.author }}</a>
|
||||
{% endif %}
|
||||
</p>
|
||||
<p class="searchItemDescription">{{ project.data.subtitle }}</p>
|
||||
<div class="searchItemTagHolder">
|
||||
{% for tag in project.data.tags %}
|
||||
<div class="tag-{{ tag }}">{{ tag }}</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
||||
<nav>
|
||||
{% if pagination.href.previous %}
|
||||
<a href="{{ pagination.href.previous }}">Prev</a>
|
||||
{% endif %}
|
||||
{% if pagination.href.next %}
|
||||
<a href="{{ pagination.href.next }}">Next</a>
|
||||
{% endif %}
|
||||
</nav>
|
||||
|
|
@ -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 {
|
||||
|
|
|
|||
28
contribute.md
Normal file
28
contribute.md
Normal file
|
|
@ -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"```
|
||||
4
error/404.html
Normal file
4
error/404.html
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
---
|
||||
errorQuote: "If only the clockworks could speak<br>I wouldn't be so alone"
|
||||
errorDescription: "We didn't find what you are looking for..."
|
||||
---
|
||||
3
error/error.json
Normal file
3
error/error.json
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"layout": "error.njk"
|
||||
}
|
||||
|
|
@ -5,7 +5,8 @@ layout: "base.njk"
|
|||
{% import "featured.njk" as featured %}
|
||||
|
||||
<h1>Welcome.</h1>
|
||||
<p>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.</p>
|
||||
<p>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.</p>
|
||||
<h2>Featured projects</h2>
|
||||
|
||||
{{ featured.projectShowcase(["aboukkit", "tenkumalib", "hangglidere", "devilwithin", "timekeeper", "tefreezer"], collections.projects) }}
|
||||
</ul>
|
||||
8
projects/aboukkit/index.json
Normal file
8
projects/aboukkit/index.json
Normal file
|
|
@ -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"]
|
||||
}
|
||||
|
|
@ -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
|
||||
---
|
||||
|
||||

|
||||
|
||||
|
|
|
|||
8
projects/devilwithin/index.json
Normal file
8
projects/devilwithin/index.json
Normal file
|
|
@ -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"]
|
||||
}
|
||||
|
|
@ -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).
|
||||
|
||||
|
|
|
|||
9
projects/ghostsandstuff/index.json
Normal file
9
projects/ghostsandstuff/index.json
Normal file
|
|
@ -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"]
|
||||
}
|
||||
|
|
@ -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
|
||||
|
|
|
|||
6
projects/hangglidere/index.json
Normal file
6
projects/hangglidere/index.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"name": "HangGlideRE",
|
||||
"subtitle": "Fly with a chicken!",
|
||||
"author": "tenkuma",
|
||||
"tags": ["plugin"]
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
---
|
||||
name: "HangGlideRE"
|
||||
subtitle: ""
|
||||
author: "tenkuma"
|
||||
downloadLink: "https://modrinth.com/plugin/aboukkit/versions"
|
||||
tags: plugin
|
||||
---
|
||||
8
projects/tefreezer/index.json
Normal file
8
projects/tefreezer/index.json
Normal file
|
|
@ -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"]
|
||||
}
|
||||
|
|
@ -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 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).
|
||||
|
|
|
|||
8
projects/tenkumalib/index.json
Normal file
8
projects/tenkumalib/index.json
Normal file
|
|
@ -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"]
|
||||
}
|
||||
|
|
@ -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.
|
||||
|
|
|
|||
8
projects/timekeeper/index.json
Normal file
8
projects/timekeeper/index.json
Normal file
|
|
@ -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"]
|
||||
}
|
||||
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue