From c7a52700fe1f7f1c0e9f6f18b1e697a86fa2361c Mon Sep 17 00:00:00 2001 From: dvelo <52332868+DeveloLongScript@users.noreply.github.com> Date: Mon, 26 Aug 2024 22:50:16 -0500 Subject: [PATCH] feat: docs? coming soon --- docs/advanced/command-bar.mdx | 34 ++++++++++++++++ docs/advanced/tech-stack.mdx | 23 +++++++++++ docs/getting-started.mdx | 31 ++++++++++++++ docs/guides/customization.mdx | 5 +++ docs/guides/linking.mdx | 28 +++++++++++++ docs/guides/owning-a-server.mdx | 16 ++++++++ docs/guides/reporting-server.mdx | 12 ++++++ docs/legal/external-content-agreement.mdx | 49 +++++++++++++++++++++++ 8 files changed, 198 insertions(+) create mode 100644 docs/advanced/command-bar.mdx create mode 100644 docs/advanced/tech-stack.mdx create mode 100644 docs/getting-started.mdx create mode 100644 docs/guides/customization.mdx create mode 100644 docs/guides/linking.mdx create mode 100644 docs/guides/owning-a-server.mdx create mode 100644 docs/guides/reporting-server.mdx create mode 100644 docs/legal/external-content-agreement.mdx diff --git a/docs/advanced/command-bar.mdx b/docs/advanced/command-bar.mdx new file mode 100644 index 0000000..e6123f7 --- /dev/null +++ b/docs/advanced/command-bar.mdx @@ -0,0 +1,34 @@ +--- +title: "Using the Command-bar" +--- + +# Using the Command-bar + +The command-bar has many mods and is a great tool for power-users to use as its built to be fast, while showing optimal information to the scenario + + + +## Triggering the command-bar + +There are two ways to trigger the command bar, using `Ctrl+K` and `Ctrl+Shift+K`. Both put you in a command-bar, however when using `Ctrl+K`, you go into a general page with other settings. +Using `Ctrl+Shift+K` opens a server viewer, and this may be faster then going through the general page. + +## Functions using `Ctrl+K` + +- **Servers** opens a server list, same as `Ctrl+Shift+K` +- **Sort Servers** allows you to go into a sorted server list quickly +- **Links** shows links useful for MHSF +- **Pick Random Server** picks a random server and shows the user what that server is, is similar to the one on [the server list](/) +

+ **Profile (requires log-in):** +- **Favorites** shows the user their favorited servers +- **User Settings** shows the user the settings for Clerk + +## Servers + +This view shows the most popular 50 servers, and when searching, you can search for any server that exists (offline or online). +When clicking on a server, you see a simple view showing information about the server, along with a link to the server page. + +## Trigger from information popover + +Click the top-right info button, and click Open Commands. This will open the same `Ctrl+K` command-bar, if you would like to use it on mobile. diff --git a/docs/advanced/tech-stack.mdx b/docs/advanced/tech-stack.mdx new file mode 100644 index 0000000..432788f --- /dev/null +++ b/docs/advanced/tech-stack.mdx @@ -0,0 +1,23 @@ +--- +title: "Tech-stack" +--- + +# Teck Stack of MHSF +The tech stack of MHSF is relatively modern to ensure MHSF keeps up with standards set for accessibility and usability. + +## Front-end +- **React** is used as a way to replicate components already used, and use the eco-system of pre-existing components +- **shadcn/ui** is the UI framework used to keep the whole website consistent. +- **Contentlayer** manages all the pages used for documentation +- **TailwindCSS** makes MHSF use (mostly) no CSS for better efficency +- **react-hot-toast** provides the Toast used for MHSF + +## Back-end +- **Inngest** runs periodic tasks +- **MongoDB** is the database of choice for MHSF + +## Both +- **Clerk** is used for authentication of users +- **Next.js** is used to make sure API endpoints and front-end endpoints are on the same domain, along with lots of convient features +- **Vercel** is hosting MHSF (along with non-tracking analytics) + diff --git a/docs/getting-started.mdx b/docs/getting-started.mdx new file mode 100644 index 0000000..7d46c2d --- /dev/null +++ b/docs/getting-started.mdx @@ -0,0 +1,31 @@ +--- +title: "Getting Started" +--- + +# Getting Started to MHSF + +MHSF is an open-source wrapper for the traditional Minehut server list, either in the lobby or the one [built-in to the minehut.com website directly](https://app.minehut.com/servers). +The way MHSF communicates with Minehut is using the closed Minehut API discovered by using DevTools on the original Minehut page. +Along with this, there are entries that are completely third-party like for adding descriptions or banners. + +## What is a wrapper? + +Wrappers are usually free & open-source software that goes on-top of existing software that may be proprietary. There are many reasons for a wrapper to exist (privacy, automation, etc.), in MHSF's case, its because the Minehut server list provided by default just doesn't cut it. +Wrappers usually communicate using an API that was provided by the service its self, making software like MHSF completely legal. + +## Why to use MHSF + +- **Faster response times** MHSF is completely ad-free, and as a result of being open-source, constantly tries to cut down on unnecessary things slowing down the page. +- **Open-source & no tracking** As a result of being open-source, MHSF will never track or sell your to advertisers. Anybody can look at the code, and can be verified to be completely secure. +- **Make your server stand out** Server owners can configure after appropriate verification banners, Discord widgets, descriptions & color schemes. +- **Customize your experience** Filters, sorts & different spacing settings can make your experience just how you like it while you are browsing servers. +- **Better & more intuitive UX/UI** UI is a big point for MHSF, using UI designed to be more user friendly, and to be more straight-forward then Minehut's +- **One focus** Because MHSF is only a server-list, it only has to be, _a server list!_ This means more updates and higher quality ones because all MHSF has to worry about, is the server list! + +## Will you get banned for this? + +No. Your Minehut account is not associated with your MHSF one, and consequently, you cannot be banned. There is no risk of getting banned by Minehut, as we are posing no threat to them. As long as you aren't spamming MHSF (or the API in general), you should be good. + +## Conclusion + +If you'd like to use MHSF, go to the server list [here](/) to try it out! You may also give MHSF a star on GitHub if you feel like this project deserves it. diff --git a/docs/guides/customization.mdx b/docs/guides/customization.mdx new file mode 100644 index 0000000..7ad0ba9 --- /dev/null +++ b/docs/guides/customization.mdx @@ -0,0 +1,5 @@ +--- +title: "Customization" +--- + +# Customize your server diff --git a/docs/guides/linking.mdx b/docs/guides/linking.mdx new file mode 100644 index 0000000..917a8da --- /dev/null +++ b/docs/guides/linking.mdx @@ -0,0 +1,28 @@ +--- +title: "Linking your account" +--- + +# Linking your Minecraft account + +MHSF uses a safe & secure system to link your account that **doesn't use your Microsoft account in any way**. MHSF uses a simple system of logging into a server, and then putting a code into the website. + + + +## Prerequisites + +- An active account with MHSF (either linked through GitHub or Discord, or just a standard email account) +- A Minecraft Java Edition account (Bedrock accounts are not guaranteed to work, and could malfunction at some times) + +## Linking + +To get started, go into your account settings (your profile picture in top-right, and Profile & Security) and click Link Account. +Login to the server `MHSFPV.minehut.gg`. (its on a free plan, you may have to start it in the lobby) Take the code shown in chat, and put it into the OTP box. Hit Submit, and if the code is correct, your account will be linked! Congratulations! + +## Functions + +You can do many things with a linked account: + +- [Own a server](/docs/guides/owning-a-server) +- [Customize a server](/docs/guides/customization) + +More will be coming in future updates, however the only thing you can do with a linked account is server-based functions. diff --git a/docs/guides/owning-a-server.mdx b/docs/guides/owning-a-server.mdx new file mode 100644 index 0000000..07855d8 --- /dev/null +++ b/docs/guides/owning-a-server.mdx @@ -0,0 +1,16 @@ +--- +title: "Own a server" +--- + +# Owning a server + +Owning a server is quite simple and allows you to [customize your server](/docs/guides/customization) your server and make it stand out from other servers. Before owning your server, make sure you agree to the [ECA](/docs/legal/external-content-agreement). + +## Linking + +Find the server you would like to own, and make sure your account has [already been linked with your Minecraft account](/docs/guides/linking). Go to the server, and hit the Customization tab. If the owner of the server, and the user your linked to match, you will gain access to the server. +If they match, you should see a button named Click to own. Press that button, and you should automagically own the server. Congratulations! + +## I can't link my server, because my server doesn't have a author + +Your server must have an author in-order to be automagically linked, and if it doesn't have an author, that means you will have to manually link your server. To do that, make an issue on GitHub, showing that your server has no author, but needs to be linked. Show proof that you own the server, and your account will own the server you need. diff --git a/docs/guides/reporting-server.mdx b/docs/guides/reporting-server.mdx new file mode 100644 index 0000000..d966d56 --- /dev/null +++ b/docs/guides/reporting-server.mdx @@ -0,0 +1,12 @@ +--- +title: "Reporting a server" +--- + +# Reporting a server + +If you believe a server that you've seen is under breach of the [ECA Agreement](/docs/legal/external-content-agreement), you may request the server in question to be taken down. +Make sure you are logged into a account, and go to the server page and hit the customization tab. Hit the Report button, and add a reason to your report. +Your report will be processed and the appropriate action will be taken. + +## Issue inside the server +If an issue is inside of the server, because MHSF doesn't provide the server list source (Minehut API), you must [go to Minehut and make a ticket](https://support.minehut.com/hc/en-us/requests/new?tf_subject=Reporting%20Server&tf_27062997154195=reports_appeals&tf_27063229498259=report_server). \ No newline at end of file diff --git a/docs/legal/external-content-agreement.mdx b/docs/legal/external-content-agreement.mdx new file mode 100644 index 0000000..5cf6b43 --- /dev/null +++ b/docs/legal/external-content-agreement.mdx @@ -0,0 +1,49 @@ +--- +title: "External Content Agreement" +--- + +# External Content Agreement (ECA) + +By making external content available for anyone to see, there needs to +be an agreement to keep MHSF ("Minehut Server List") a friendly place +for anyone to look at. _As such, this agreement outlines what you can't and can do, when making content on the platform._ The goal by making an agreement like this, is not to make you worried +what you can upload, its just showing what the limits of content +uploaded onto the platform are. + +## Source Code + +The source code for MHSF is defined by the [MIT License](https://github.com/DeveloLongScript/MHSF/blob/main/LICENSE). You are free to use MHSF for commercial use, and you may modify the software however you'd like. Taking copies of the software (aka _"forking"_) is also freely allowed. + +## What your limits are + +When creating content, if its a matter of making a profile picture, +or editing the description for a server, (and more), you must follow +the underlying agreements below.
+For making banners & descriptions, you must follow [Minehuts Terms of Service](https://minehut.wiki.gg/wiki/Rules) _as all content made is associated to Minehut (as the server is mostly on a community for Minehut)._
+For making Discord server embeds, you must follow [Discords Terms of Service](https://discord.com/terms/) _as all content made is associated to Discord._ + +### All other content + +For all other content, they must follow the following: + +- No inappropriate/adult images +- No swear words of any kind or slurs +- Endorsing unethical client modifications (aka cheating or hacking) + +## When you agree to the ECA + +When you add customization to your server, or add a profile picture (linking an account is included), you must follow the ECA. + +## When linking an account + +When linking an account, you must follow the privacy policy and terms of service to the associated service that you linked your MHSF account to. Additionally, if you link an external account{" "} +_after_ account creation, everything said before is still true. + +## Violations + +Violations from above have 1 warning. Your first interaction is a warning by removing the content from MHSF, and your 2nd is banning/deleting your account. (some violations are an instant delete) + +## Reporting + +If you personally see a violation of the ECA, you can report it by clicking the customization tab on a server, and hitting the Report +button (it doesn't appear when the server was never owned). If you misuse this feature, you may get your account deleted.