Compare commits

..

142 Commits
1.7 ... main

Author SHA1 Message Date
giftedly
42dfb646ee
Update README.md 2025-08-04 03:09:46 -05:00
dvelo
130e12e2e5
Create action.yml 2025-05-11 12:07:38 -05:00
dvelo
cc39b1c4ea
Update FUNDING.yml 2025-05-05 17:19:42 -05:00
dvelo
2f7ed14cfd
Update FUNDING.yml 2025-05-05 17:17:59 -05:00
dvelo
cf7d8537a4
Create FUNDING.yml 2025-05-05 17:17:12 -05:00
dvelo
b168abd0f7
Merge pull request #100 from DeveloLongScript/dependabot/npm_and_yarn/react-markdown-10.1.0 2025-05-03 00:25:45 -05:00
dependabot[bot]
f33fc1a0e8
chore(deps-dev): bump react-markdown from 9.1.0 to 10.1.0
Bumps [react-markdown](https://github.com/remarkjs/react-markdown) from 9.1.0 to 10.1.0.
- [Release notes](https://github.com/remarkjs/react-markdown/releases)
- [Changelog](https://github.com/remarkjs/react-markdown/blob/main/changelog.md)
- [Commits](https://github.com/remarkjs/react-markdown/compare/9.1.0...10.1.0)

---
updated-dependencies:
- dependency-name: react-markdown
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-03 04:06:10 +00:00
8498ed78f8 feat: update clerk 2025-04-27 12:00:37 -05:00
b343c95223 feat(embeds): switch off embeds subdomain infrastructure 2025-04-04 22:04:54 -05:00
dvelo
8cc6384b57
Merge pull request #106 from DeveloLongScript/dependabot/npm_and_yarn/apps/stage1-clk-transfer/next-15.2.3
chore(deps): bump next from 15.1.6 to 15.2.3 in /apps/stage1-clk-transfer
2025-03-24 21:10:25 -05:00
dvelo
5058400419
Merge pull request #105 from DeveloLongScript/dependabot/npm_and_yarn/next-15.2.3
chore(deps): bump next from 15.1.6 to 15.2.3
2025-03-24 21:10:15 -05:00
dvelo
7b696c6b1d
Update suggestion.yml 2025-03-24 21:08:59 -05:00
dvelo
e1d0abf330
feat: add suggestions 2025-03-24 21:08:32 -05:00
dependabot[bot]
0aa6cc2bfe
chore(deps): bump next in /apps/stage1-clk-transfer
Bumps [next](https://github.com/vercel/next.js) from 15.1.6 to 15.2.3.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v15.1.6...v15.2.3)

---
updated-dependencies:
- dependency-name: next
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-25 02:03:00 +00:00
dependabot[bot]
f52059ec36
chore(deps): bump next from 15.1.6 to 15.2.3
Bumps [next](https://github.com/vercel/next.js) from 15.1.6 to 15.2.3.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v15.1.6...v15.2.3)

---
updated-dependencies:
- dependency-name: next
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-25 02:02:20 +00:00
dvelo
411b583e5f
Merge pull request #104 from DeveloLongScript/dependabot/npm_and_yarn/apps/stage2-clk-transfer/next-15.2.3
chore(deps): bump next from 15.1.6 to 15.2.3 in /apps/stage2-clk-transfer
2025-03-24 21:00:43 -05:00
dependabot[bot]
83184e9d87
chore(deps): bump next in /apps/stage2-clk-transfer
Bumps [next](https://github.com/vercel/next.js) from 15.1.6 to 15.2.3.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v15.1.6...v15.2.3)

---
updated-dependencies:
- dependency-name: next
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 22:16:52 +00:00
dvelo
23aa98e738
Update README.md 2025-03-12 23:06:10 -05:00
dvelo
fbd98a0616
Create SECURITY.md 2025-03-12 23:00:47 -05:00
dvelo
695bf0fbee
chore(readme): revamp readme 2025-03-12 22:45:44 -05:00
dvelo
5b98bd3c8d
Add files via upload 2025-03-12 22:32:54 -05:00
dvelo
6767286ed9
Delete .github/github-banner.png 2025-03-12 22:32:34 -05:00
dvelo
e51a89ce19
Add files via upload 2025-03-12 22:30:49 -05:00
dvelo
e8be5f341d
Delete .github/github-banner.png 2025-03-12 22:27:58 -05:00
dvelo
9a82bf5f17 feat(www): add signout clause 2025-03-12 22:21:24 -05:00
dvelo
b50040dfa5 feat(www): clerk + posthog 2025-03-12 22:20:03 -05:00
dvelo
68e46b8eea feat(www): posthog 2025-03-12 21:01:26 -05:00
dvelo
d51bef8da0 Merge branch 'main' of https://github.com/DeveloLongScript/MHSF 2025-03-12 17:18:19 -05:00
dvelo
981f106acc fix: update react 2025-03-12 17:18:12 -05:00
dvelo
b003f08fe5
Add files via upload 2025-03-12 16:53:31 -05:00
dvelo
f2e9c9c5e2
Delete .github/github-banner.png 2025-03-12 16:53:19 -05:00
dvelo
c784f965cd
Add files via upload 2025-03-12 16:50:58 -05:00
dvelo
21d4bc2041 chore(copyright): change to remove ECA clause 2025-03-08 21:23:30 -06:00
dvelo
35a0f6dca9 feat(www): make statistics faster 2025-03-08 21:10:00 -06:00
dvelo
b36815f5f6 feat(www): add compliance to banner 2025-03-07 17:02:02 -06:00
dvelo
efb9a908ea feat(docs): new compliance 2025-03-07 16:44:09 -06:00
dvelo
79da6e7bc7 feat(docs): add icons to pages 2025-03-02 17:22:46 -06:00
dvelo
e8e4e899e5 feat(docs): change headers 2025-03-02 16:27:18 -06:00
dvelo
e729895729 fix(server-linking): remove useless backend condition 2025-03-02 15:27:07 -06:00
dvelo
1a6e50868c fix(www): switch ECA -> Rules 2025-03-02 15:21:53 -06:00
dvelo
ca46d33978 fix(www): banner being broken 2025-03-02 15:17:50 -06:00
dvelo
2450000c0f feat(docs): add anchor for update discord 2025-03-02 15:11:05 -06:00
dvelo
c1a8dfbd81 fix(www): don't show the banner too close to the top of the screen 2025-03-02 14:45:36 -06:00
dvelo
c093c283a7 fix(www): temp-fix for domains being broken 2025-03-02 14:37:10 -06:00
dvelo
c7754da7ff chore(www): clean up old code 2025-03-02 14:35:18 -06:00
dvelo
221979d2f9 fix(www): switch to redirects 2025-03-02 11:39:23 -06:00
dvelo
5e5f5e86ef fix(docs): remove the old copies and make some misc changes 2025-03-02 10:53:08 -06:00
dvelo
6e21d5b566 fix(www): finally fix all da issues 2025-03-02 10:44:11 -06:00
dvelo
62dacccbee
chore(license): add MIT license back 2025-03-01 23:32:34 -06:00
dvelo
d5c291c8fe fix(www): make mhsf presentable for gs teams and finally fix the issue 2025-03-01 21:05:50 -06:00
dvelo
c4c8b82f8b fix(www): 404 null error #12 2025-03-01 20:15:10 -06:00
dvelo
e29262893e fix(www) 404 null error #11 2025-03-01 20:09:55 -06:00
dvelo
43d8706472 fix(www): 404 null error #10 (vercel decided bro was having enough) 2025-03-01 20:09:40 -06:00
dvelo
fbb8ae91fb fix(www): excuse me vercel? 2025-03-01 20:01:17 -06:00
dvelo
d0c01919c5 fix(www): 404 null error #9 2025-03-01 19:58:27 -06:00
dvelo
bc06b79bf5 fix(www): 404 null error #8 2025-03-01 19:53:41 -06:00
dvelo
032a4b67f1 fix(www): 404 null error #7 2025-03-01 19:48:15 -06:00
dvelo
299e34d21f fix(www): 404 null error #6 2025-03-01 19:24:08 -06:00
dvelo
43ec081367 fix(www): 404 null error #5 2025-03-01 19:12:09 -06:00
dvelo
8fd0f90472 fix(www): 404 null error #4 2025-03-01 19:10:49 -06:00
dvelo
5a95f5edd8 fix(www): 404 null error #3 2025-03-01 18:30:43 -06:00
dvelo
4bc9b6ebcc fix(www): 404 null error #2 2025-03-01 18:20:33 -06:00
dvelo
2c292228ce fix(www): 404 null error (i hope) 2025-03-01 18:09:56 -06:00
dvelo
24b83d2f8c fix(docs): changelog 2025-03-01 17:59:00 -06:00
dvelo
6833f07545 fix(www): docs breadcrumb 2025-03-01 17:47:05 -06:00
dvelo
3bc11d7397 fix(www): deps 2025-03-01 17:38:08 -06:00
dvelo
830699a9ef fix(www): redirect loop 2025-03-01 17:27:59 -06:00
dvelo
8f9dc59583 fix(www): remove nextjs content collections 2025-03-01 17:23:46 -06:00
dvelo
43451a9a27 fix: move docs 2025-03-01 17:20:43 -06:00
dvelo
31836df9e5 feat(docs): swap docs.json & mint.json 2025-03-01 13:08:55 -06:00
dvelo
4b6abbf186 Documentation edits made through Mintlify web editor 2025-03-01 13:06:23 -06:00
dvelo
2efe2dbcc5 Documentation edits made through Mintlify web editor 2025-03-01 13:04:14 -06:00
dvelo
54d63c4084 chore(merge): merge from git 2025-03-01 13:01:03 -06:00
dvelo
73b68e7b9b feat: actually move to mintlify 2025-03-01 12:58:52 -06:00
dvelo
944c657003
feat: move to mintlify for v2 2025-03-01 12:54:08 -06:00
dvelo
d679e19b84 chore(next): move to Next.js 15 2025-03-01 10:31:11 -06:00
dvelo
2551dabf82 fix: add 404 page 2025-03-01 10:00:09 -06:00
dvelo
f000cdeaf9 fix: it was a good run, but I don't have the time for this anymore 😭 2025-03-01 08:58:45 -06:00
dvelo
98c834dad5
fix: what is this? 😭 2025-02-26 20:39:50 -06:00
dvelo
c7baf55cc1
feat: merge clerk conversion sites into MHSF
feat: merge clerk conversion sites into MHSF
2025-02-14 20:11:15 -06:00
dvelo
176f6f2cf4 fix: remove toast hook 2025-02-14 20:02:20 -06:00
dvelo
701ad07340 fix: 2025-02-14 19:59:10 -06:00
dvelo
4b962d8321 fix: remove setting component 2025-02-14 19:11:58 -06:00
dvelo
219935c0d4 fix: remove loading button 2025-02-14 19:06:49 -06:00
dvelo
4f9126fd02 fix: radix types 2025-02-14 19:03:45 -06:00
dvelo
4f02ea507a fix: eslint configs 2025-02-14 18:40:01 -06:00
dvelo
b2e66a0efd
feat: make components actually work
feat: make components actually work
2025-02-14 18:27:06 -06:00
dvelo
dee5612abb feat: make components actually work 2025-02-14 18:26:36 -06:00
dvelo
381b3c25e4
fix: remove accordion 2025-02-14 17:11:24 -06:00
dvelo
2ab6749d23
fix: remove accordion 2025-02-14 17:11:06 -06:00
dvelo
5f721a58e2
fix: mis-matched README 2025-02-14 17:09:21 -06:00
dvelo
b03ee997e3
feat: open-source clerk stage system
feat: open-source clerk stage system
2025-02-14 16:51:52 -06:00
dvelo
8b5041c4cd fix: package name 2025-02-14 16:47:45 -06:00
dvelo
1e750a190c fix: add ACTUAL code 2025-02-14 16:45:45 -06:00
dvelo
ea7492e609 feat: open-source clerk stage system 2025-02-14 16:40:46 -06:00
dvelo
b29a72c956
feat: bump to 1.8
feat: bump to 1.8
2025-02-14 14:57:44 -06:00
dvelo
656dab897c fix: padding & size for banner 2025-02-14 14:40:34 -06:00
dvelo
49397e6f9e fix: banner size 2025-02-14 14:18:24 -06:00
dvelo
2a44e4e49f fix: type error for banner page 2025-02-14 13:58:55 -06:00
dvelo
6dfa07a164 feat: bump to 1.8 2025-02-14 13:54:10 -06:00
dvelo
0424becf3f
feat: move to monorepo and update copyright
feat: move to monorepo and update copyright
2025-02-13 22:09:11 -06:00
dvelo
a3554bcf7d fix: remove legacy cron tasks 2025-02-13 22:06:16 -06:00
dvelo
d18a29c5e7 fix: rules of hooks 2025-02-13 21:53:29 -06:00
dvelo
5391d44e20 fix: add frontend 2025-02-13 21:48:41 -06:00
dvelo
2f6abd4587 feat: move to monorepo and update copyright 2025-02-13 21:46:49 -06:00
dvelo
ba8ce11a1d feat: move to monorepo and update copyright 2025-02-13 21:46:49 -06:00
dvelo
91ec423b85 feat: move to monorepo and update copyright 2025-02-13 21:44:15 -06:00
dvelo
d35e570d6c Merge remote-tracking branch 'gh/dev' into dev 2025-02-13 21:41:36 -06:00
dvelo
38c10ff5cf feat: move to monorepo and update copyright 2025-02-13 21:41:10 -06:00
dvelo
91d913a261
feat: redo bug issues
feat: redo bug issues
2025-02-07 16:51:52 -06:00
dvelo
5acaa476ba
fix: yaml issues (really!) 2025-02-07 16:46:12 -06:00
dvelo
a94555bdd6
fix: yaml issues (again 2) 2025-02-07 16:45:56 -06:00
dvelo
901405f7ac
fix: yaml issues (again) 2025-02-07 16:45:30 -06:00
dvelo
7b026910b2
fix: yaml issuses 2025-02-07 16:44:48 -06:00
dvelo
f21c216f0e
Update bug_report.yml 2025-02-07 16:43:00 -06:00
dvelo
9a3f53001f
Update bug_report.yml 2025-02-07 16:28:38 -06:00
dvelo
28f90a8b40
Update and rename bug_report.md to bug_report.yml 2025-02-07 16:28:15 -06:00
dvelo
fd278b3e8d
chore: update contributing guide
Update CONTRIBUTING.md
2025-02-07 15:33:13 -06:00
dvelo
b3d2763106
Update CONTRIBUTING.md 2025-02-07 15:28:27 -06:00
dvelo
8538ac5672
Update CONTRIBUTING.md 2025-02-07 15:27:15 -06:00
dvelo
45fcc618c2
fix: status is broken
fix: status is broken
2025-02-06 19:16:52 -06:00
dvelo
7e7c1a8648 Merge branch 'dev' of https://github.com/DeveloLongScript/MHSF into dev 2025-02-06 18:34:01 -06:00
dvelo
17f444fbf4 fix: status is broken 2025-02-06 18:33:59 -06:00
dvelo
d8e1f96948
Merge pull request #84 from DeveloLongScript/dev
Update bug_report.md
2025-02-06 18:05:40 -06:00
dvelo
c4bd338b2e
Update bug_report.md 2025-02-06 17:36:43 -06:00
dvelo
dbfb1de4c8
fix: more seo-friendly
fix: more seo-friendly
2025-02-04 20:21:42 -06:00
dvelo
f2feb1ae73 fix: more seo-friendly 2025-02-04 20:12:19 -06:00
dvelo
2bcda5fd3b
feat: migrate accounts 2025-01-29 21:12:42 -06:00
dvelo
21c0f75e4c fix: type issue 2025-01-29 21:10:43 -06:00
dvelo
532ead4bdf feat: migrate accounts from development to production 2025-01-29 21:03:20 -06:00
dvelo
fa7e1b1278
feat: remove snow 2025-01-25 10:45:03 -06:00
dvelo
e51a2ecd16 fix: remove extra padding on the topbar 2025-01-25 10:44:35 -06:00
dvelo
00f8a1f33e fix: remove snow topbar items as well 2025-01-25 10:40:56 -06:00
dvelo
13489a4145 feat: remove snow 2025-01-25 10:28:21 -06:00
dvelo
185bd77d5f
fix: google not crawling (again) 2025-01-24 20:26:10 -06:00
dvelo
48c038df0f fix: google not crawling (again) 2025-01-24 19:37:10 -06:00
dvelo
49c0a599a4
fix: google crawling 2025-01-24 17:25:39 -06:00
dvelo
7caf2c1b4e fix: google crawling 2025-01-24 17:24:58 -06:00
dvelo
c19f56b685
feat: new auto-link redirect (release) 2025-01-19 17:46:39 -06:00
dvelo
f1fa1d98c1 fix: more type issues 2025-01-19 17:35:05 -06:00
dvelo
51b3050528 fix: type issues 2025-01-19 17:31:01 -06:00
dvelo
2589552592 feat: new auto-link redirect 2025-01-19 17:28:24 -06:00
458 changed files with 32441 additions and 8795 deletions

1
.github/FUNDING.yml vendored Normal file

@ -0,0 +1 @@
buy_me_a_coffee: dvelo

@ -1,38 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]
**Additional context**
Add any other context about the problem here.

36
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file

@ -0,0 +1,36 @@
name: Bug report
title: '[bug]: '
labels: ['bug']
description: Create a report to help us improve
body:
- type: markdown
attributes:
value: |
Thank you for coming here to submit a bug report. We care about anything from big to small relating to MHSF, making a better experience for you and others.
Try and be as descriptive as possible & type in a way thats able to understood by other contributors.
- type: textarea
attributes:
label: Current and Expected Behavior
description: What are you experiencing right now, and what did you expect to happen?
placeholder: I was trying to do XYZ, however X happened instead of Y.
validations:
required: true
- type: textarea
attributes:
label: To Reproduce
description: If this is self-explanatory with information above, keep this blank.
placeholder: |
1. Open X
2. Click Y
3. See Z
validations:
required: false
- type: input
attributes:
label: MHSF Username (if applicable)
description: If this bug has soft-locked your account or something similar where we need to know your username, please put it here.
- type: input
attributes:
label: Minecraft Username (if applicable)
description: If this bug is related to Minecraft account linking, please put your username here.

22
.github/ISSUE_TEMPLATE/suggestion.yml vendored Normal file

@ -0,0 +1,22 @@
name: Suggestion
title: '[sug]: '
labels: ['suggestion']
description: Suggest a feature that could be added to MHSF
body:
- type: markdown
attributes:
value: |
Thank you! Filling out this suggestion will help improve MHSF and to make it usable by all users.
Try and be as descriptive as possible & type in a way thats able to understood by other contributors.
- type: textarea
attributes:
label: Your Idea
description: Tell us what you want! Be specific!
placeholder: Custom filters built in TypeScript is a great featur...
validations:
required: true
- type: textarea
attributes:
label: Screenshots, art, or any other information
description: You could create a screenshot or Figma design showing how you invision your feature.

BIN
.github/github-banner.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 474 KiB

62
.gitignore vendored

@ -1,48 +1,38 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
# Dependencies
node_modules
.pnp
.pnp.js
.yarn/install-state.gz
# Local env files
.env
apps/www/.env.local
.env.development.local
.env.test.local
.env.production.local
# Testing
coverage
# Turbo
.turbo
# contentlayer
.contentlayer
# Vercel
.vercel
# cron
/cron/dist
/cron/node_modules
# Build Outputs
.next/
out/
build
dist
# testing
/coverage
# next.js
/.next/
/out/
# production
/build
# misc
.DS_Store
*.pem
# debug
# Debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# local env files
.env*.local
# vercel
.vercel
# typescript
*.tsbuildinfo
next-env.d.ts
css-obfuscator
*.sync-conflict*
# Misc
.DS_Store
*.pem

16
.idea/.gitignore generated vendored

@ -1,8 +1,8 @@
# Ignore everything for IntelliJ except for project essential code-styles
*
!copyright/*
!codeStyles/*
!.gitignore
!*/
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

12
.idea/MHSF-Modern.iml generated Normal file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.tmp" />
<excludeFolder url="file://$MODULE_DIR$/temp" />
<excludeFolder url="file://$MODULE_DIR$/tmp" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

@ -1,7 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<JSCodeStyleSettings version="0">
<option name="SPACES_WITHIN_IMPORTS" value="true" />
</JSCodeStyleSettings>
</code_scheme>
</component>

@ -1,5 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>

@ -1,6 +1,6 @@
<component name="CopyrightManager">
<copyright>
<option name="notice" value="MHSF, Minehut Server List&#10;All external content is rather licensed under the ECA Agreement&#10;located here: https://mhsf.app/docs/legal/external-content-agreement&#10;&#10;All code under MHSF is licensed under the MIT License&#10;by open source contributors&#10;&#10;Copyright (c) 2024 dvelo&#10;&#10;Permission is hereby granted, free of charge, to any person obtaining a copy &#10;of this software and associated documentation files (the &quot;Software&quot;), to &#10;deal in the Software without restriction, including without limitation the&#10;rights to use, copy, modify, merge, publish, distribute, sublicense, and/or &#10;sell copies of the Software, and to permit persons to whom the Software is &#10;furnished to do so, subject to the following conditions:&#10;&#10;The above copyright notice and this permission notice shall be included in all &#10;copies or substantial portions of the Software.&#10;&#10;THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, &#10;EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES &#10;OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND &#10;NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT &#10;HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, &#10;WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING &#10;FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR &#10;OTHER DEALINGS IN THE SOFTWARE." />
<option name="notice" value="MHSF, Minehut Server List&#10;&#10;All code under MHSF is licensed under the MIT License&#10;by open source contributors&#10;&#10;Copyright (c) 2025 dvelo&#10;&#10;Permission is hereby granted, free of charge, to any person obtaining a copy &#10;of this software and associated documentation files (the &quot;Software&quot;), to &#10;deal in the Software without restriction, including without limitation the&#10;rights to use, copy, modify, merge, publish, distribute, sublicense, and/or &#10;sell copies of the Software, and to permit persons to whom the Software is &#10;furnished to do so, subject to the following conditions:&#10;&#10;The above copyright notice and this permission notice shall be included in all &#10;copies or substantial portions of the Software.&#10;&#10;THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, &#10;EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES &#10;OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND &#10;NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT &#10;HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, &#10;WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING &#10;FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR &#10;OTHER DEALINGS IN THE SOFTWARE." />
<option name="myName" value="MIT License f/ MHSF" />
</copyright>
</component>

@ -1,3 +1,7 @@
<component name="CopyrightManager">
<settings default="MIT License f/ MHSF" />
<settings default="MIT License f/ MHSF">
<module2copyright>
<element module="All" copyright="MIT License f/ MHSF" />
</module2copyright>
</settings>
</component>

@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
</profile>
</component>

8
.idea/modules.xml generated Normal file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/MHSF-Modern.iml" filepath="$PROJECT_DIR$/.idea/MHSF-Modern.iml" />
</modules>
</component>
</project>

9
.idea/vcs.xml generated Normal file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
<mapping directory="$PROJECT_DIR$/apps/stage1-clk-transfer" vcs="Git" />
<mapping directory="$PROJECT_DIR$/apps/stage2-clk-transfer" vcs="Git" />
<mapping directory="$PROJECT_DIR$/apps/www" vcs="Git" />
</component>
</project>

0
.npmrc Normal file

@ -1,2 +0,0 @@
backend-mh-api/
cron/

@ -1,3 +1,3 @@
{
"copyright-header-injector.copyrightText": "/*\n * MHSF, Minehut Server List\n * All external content is rather licensed under the ECA Agreement\n * located here: https://mhsf.app/docs/legal/external-content-agreement\n *\n * All code under MHSF is licensed under the MIT License\n * by open source contributors\n *\n * Copyright (c) 2024 dvelo\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n * OTHER DEALINGS IN THE SOFTWARE.\n */"
"copyright-header-injector.copyrightText": "/*\n * MHSF, Minehut Server List\n * All external content is rather licensed under the ECA Agreement\n * located here: https://mhsf.app/docs/legal/external-content-agreement\n *\n * All code under MHSF is licensed under the MIT License\n * by open source contributors\n *\n * Copyright (c) 2025 dvelo\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n * OTHER DEALINGS IN THE SOFTWARE.\n */"
}

@ -28,6 +28,10 @@ The primary stack for MHSF is Next.js, a React framework, which you can start by
[You can also opt out of telemetry if you'd like.](https://nextjs.org/telemetry)
## Clerk
> [!CAUTION]
> Clerk is no longer optional. If Clerk is not setup, you *will* get a `Non-authenticated environments are disallowed on this origin.` error on the frontend.
> You may be able to modify/test API endpoints as long as they do not require accounts.
If you want to test out accounts, [you must create an Clerk key from their website.](https://clerk.com)
Set the following variables in the .env.local file:
```dotenv

@ -1,6 +1,6 @@
MIT License
Copyright (c) 2024 dvelo
Copyright (c) 2025 dvelo
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

@ -1,30 +1,23 @@
<div align="center"><img src="https://github.com/user-attachments/assets/3864f785-7a68-47fd-ac9f-0632ad440264" align="center"></div>
<h1 align="center">MHSF</h1>
> **MHSF has been discontinued due to a lack of resources**
# ![MHSF Cover](/.github/github-banner.png)
<div align="center"><img alt="nextjs" height="56" src="https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy-minimal/built-with/nextjs_64h.png" /> <a href="https://mhsf.app/docs"><img alt="docs" height="56" src="https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/documentation/generic_64h.png" />&nbsp;<a href="https://mhsf.app/"><img alt="mhsf.app" height="56" src="https://github.com/user-attachments/assets/9e0d0a39-1a88-4683-8567-a0b59a6cdb66" /></a></div>
## The MHSF Project
An open-source customizable server-list for Minehut built in React. Check it out at [mhsf.app](https://mhsf.app), and maybe give this repo a star!
A modern, third-party Minehut server list that is completely open-source, built using top of the line web technologies. Not built to take your money or time, find a server in minutes. Completely ad-free.
## Info
![Alt](https://repobeats.axiom.co/api/embed/0ee8fb5584604adac02f04cff49f1091af45c3a8.svg "Repobeats analytics image")
## Tech-stack
[React](https://react.dev): Component based syntaxing for the web <br/>
[Next.js](https://nextjs.org): Handles API, server-based metadata, and so much more.<br/>
[Clerk](https://clerk.com): Authentication for MHSF (very cool library) <br/>
[TailwindCSS](https://tailwindcss.com): Styling without CSS, simplified<br/>
[shadcn/ui](https://ui.shadcn.com): Provides the awesome UI for MHSF<br/>
And many other smaller libraries are in use to make sure MHSF is feature-packed.<br/>
## Security
Please privately disclose any security problems with a support email or via GitHub (`Security` tab -> `Report a vulnerability`).
## Contributing
> [!NOTE]
> Do you use Java and not JavaScript/TypeScript? You can also contribute to [MHSFPV (Minehut Server List Player Validator)](https://github.com/DeveloLongScript/MHSFPV), a player validator plugin to link accounts. It's relatively small, but can use commits.
Thank you for taking your time to contribute!
Please make sure you read this guide [here](https://github.com/DeveloLongScript/MHSF/blob/main/CONTRIBUTING.md).
The contributing guide is [here](https://github.com/DeveloLongScript/MHSF/blob/main/CONTRIBUTING.md).
## Support
Make a GitHub issue or contact via email, [`support@mhsf.app`](mailto:support@mhsf.app).
## Licensing

26
SECURITY.md Normal file

@ -0,0 +1,26 @@
# Security Policy
This is the security notice for MHSF. The policy explains how vulnerabilities should be reported.
## Reporting a Vulnerability
If you've found a vulnerability, we would like to know so we can fix it before it is released publicly. **Do not open a GitHub issue for a found vulnerability.**
Send details to either *a)* `support@mhsf.app` or *b)* GitHub Security (`Security` tab -> `Report a vulnerability`) including:
- the website, page or repository where the vulnerability can be observed
- a brief description of the vulnerability
- optionally the type of vulnerability and any related [OWASP category](https://www.owasp.org/index.php/Category:OWASP_Top_Ten_2017_Project)
- non-destructive exploitation details
We will do our best to reply as fast as possible.
## Scope
The following vulnerabilities are not in scope:
- volumetric vulnerabilities, for example overwhelming a service with a high volume of requests
- reports indicating that our services do not fully align with "best practice", for example missing security headers
If you aren't sure, you can still reach out via email or direct message.
---
This notice is inspired by the [Python Discord Security Notice](https://www.pythondiscord.com/pages/security-notice/).

32
apps/docs/README.md Normal file

@ -0,0 +1,32 @@
# Mintlify Starter Kit
Click on `Use this template` to copy the Mintlify starter kit. The starter kit contains examples including
- Guide pages
- Navigation
- Customizations
- API Reference pages
- Use of popular components
### Development
Install the [Mintlify CLI](https://www.npmjs.com/package/mintlify) to preview the documentation changes locally. To install, use the following command
```
npm i -g mintlify
```
Run the following command at the root of your documentation (where docs.json is)
```
mintlify dev
```
### Publishing Changes
Install our Github App to auto propagate changes from your repo to your deployment. Changes will be deployed to production automatically after pushing to the default branch. Find the link to install on your dashboard.
#### Troubleshooting
- Mintlify dev isn't running - Run `mintlify install` it'll re-install dependencies.
- Page loads as a 404 - Make sure you are running in a folder with `docs.json`

@ -0,0 +1,27 @@
---
title: "Achievement Collection"
folder: "Advanced"
icon: "stars"
---
Achievements are a page that every server gets which contains certain requirements which could be embedded in an servers history.
These achievements are accessable using the "Achievements" tab on the left of any server page.
Achievements are _not_ collected instantly, and are collected every 12 hours when the server is online (this is not timezone dependent).
There are currently 4 possible achievements to get, ranging from easiest to hardest.
## 1 thousand favorites achievement
After getting 1 thousand favorites on MHSF, and your server is online during the achievement collection, _you will get this achievement showing_ when you got **1,000 users to favorite your server**.
## 1 thousand total joins achievement
After getting 1 thousand total joins on Minehut, and your server is online during the achievement collection, _you will get this achievement showing_ when you got **1,000 users to join your server**.
## 100 thousand favorites achievement
After getting 100 thousand favorites on MHSF, and your server is online during the achievement collection, _you will get this achievement showing_ when you got **100 thousand users to favorite your server**.
## 100 thousand total joins achievement
After getting 100 thousand total joins on Minehut, and your server is online during the achievement collection, _you will get this achievement showing_ when you got **100 thousand users to join your server**.

@ -1,10 +1,9 @@
---
title: "Using the Command-bar"
folder: "Advanced"
icon: "terminal"
---
# 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
<Separator />

@ -1,12 +1,13 @@
---
title: "Tech-stack"
folder: "Advanced"
icon: "layer-group"
---
# 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
@ -14,11 +15,12 @@ The tech stack of MHSF is relatively modern to ensure MHSF keeps up with standar
- **Sonner** 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)

143
apps/docs/changelog.mdx Normal file

@ -0,0 +1,143 @@
---
title: "Changelog"
icon: "newspaper"
---
<Update label="v1.8.0" description="Feb 14, 2025">
<img src="/docs/content/v2-banner.png" className="rounded-lg"/>
## Changelog
- Moved entire technical structure from single-project to mono-repo to prepare for v2.
- Added new banner
## v2
MHSF has been a great project of mine for nearly 9 months now, however the frontend of MHSF has always been buggy and complex to modify. MHSF was built at first as a project that was expected to only last a week & be one of my many abandoned projects, meaning it was not meant to have the best code. v2 is a complete redo of the frontend from the server-list to your settings, expecting to look even better than before.
I always didn't have the best idea of UI concepts for the project, and when it started I was definitely worse than where I was at this point. v2 is expected to change that with my own custom UI that very much looks a lot better than pre-v2 MHSF. And of course, it will be fully open-source along-side MHSF and documented for others to use in their own projects, and will be aimed to be compatible with shadcn/ui for an ideal developer experience.
From the bottom of my heart, I am very grateful for the relatively small amount of support we got with this project and with v2, we are expected to do even better and bring in more people. Always remember you can contact me on Discord (`@giftedly`) if you have any suggestions, bug issues (or use GitHub issues) or anything else related to MHSF done for you, it would be greatly appreciated.
Happy valentines y'all. See you guys when v2 is done. 💗
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.8)
</Update>
<Update label="v1.7.5" description="Jan 29, 2025">
## Changelog
- Migrated accounts from development to production
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.7.5)
</Update>
<Update label="v1.7.0" description="Jan 18, 2025">
<img src="/docs/content/v1.7-banner.png" className="rounded-lg"/>
## Changelog
- Partnered with CoreBoxx!
- You can now link your Minecraft account on CoreBoxx! (check out CB 3.0.15)
- Revamped the server finding controls
- Fixed various bugs
- Made banners a different style
- Made Discord embed not inside a card
- Added incorrect server capitalization detection
- Made the MOTD area slightly bigger
- New footer
- Added padding for settings page
- Added new table mode
- Added new button for GitHub release on changelog
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.7)
</Update>
<Update label="v1.6.5" description="Dec 21, 2024">
## Changelog
- New MOTD engine that is over 3,000% faster, runs client-side, and doesn't need any requests to run.
- Adding snowfall finally (better late then ever)
- Fixed issue where GitHub link was broken if you were signed-out
This is going to (probably) be the last version of 2024. Happy holidays to everyone!
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.6.5)
</Update>
<Update label="v1.6.0" description="Nov 17, 2024">
## Changelog
- Completely redid top of server view
- New theme transition (smooth)
- New favorite button
- Favorite counts are now prominent on the server view
- Added more padding in the server view
- Separated the tabs on the side for sharing actions
- Added new QR code generator
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.6)
</Update>
<Update label="v1.5.0" description="Nov 16, 2024">
<img src="/docs/content/v1.5-banner.png" className="rounded-lg"/>
## Changelog
- New embeds
- More mobile friendly elements
- Better tabs in the server
- Fixed issue where some servers due to their age were not loading
## More about our domain change
For the past months or so, we were using the https://list.mlnehut.com domain. (yes, the website is still a rickroll 😆 ) I was not intending for the long-term to use this domain, but I didn't have the time to actually buy a domain then. The old domain was provided by Tarna, thanks! However, now I've moved MHSF to a simplistic domain, MHSF!
I hope I can update MHSF more and more going into the holiday season! ❤️
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.5)
</Update>
<Update label="v1.4.5" description="Nov 9, 2024">
## Changelog
- Completely revamped the documentation using the new Sidebar component
- Completely redid the change log for different tabs and using the new Sidebar component
- New inbuilt joins chart inside of the hover menu of a server
- Added new server icons tab on servers with rarities and their names
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.4.5)
</Update>
<Update label="v1.3.2" description="Oct 4, 2024">
## Changelog
- Some minor backend changes
FYI: Hey! Recently I've broken my wrist, and I couldn't work on MHSF for longer. I've taken some weeks to take a break from MHSF & heal my wrist. Expect to see some new updates over the weekend and for the next weeks or so. I'm still not giving up on MHSF any time soon, and I'm working on affiliates for MHSF as well.
Thank you for sticking around for the time ❤️
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.3.2)
</Update>
<Update label="v1.3.0" description="Sep 12, 2024">
<img src="/docs/content/v1.3-banner.png" className="rounded-lg"/>
## Changelog
- New documentation linking
- Achievements are here!
- Finally fixed Cron actions for the final time™
- Overhauled account preferences
- Better contributing documentation
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.3)
</Update>
<Update label="v1.2.0" description="Sep 4, 2024">
<img src="/docs/content/v1.2-banner.png" className="rounded-lg"/>
## Changelog
- Brand new documentation
- Syncing server list customizations across account
- Fixed bugs & some more
_PS_: This release took over 5 days from the last release, why? Because we have made a brand new system to add Cron actions. This will make the statistics more consistent.
[<Icon icon="github" iconType="solid" /> View on GitHub](https://github.com/DeveloLongScript/MHSF/releases/tag/1.2)
</Update>

@ -0,0 +1,43 @@
<!--
- MHSF, Minehut Server List
-
- All code under MHSF is licensed under the MIT License
- by open source contributors
-
- Copyright (c) 2025 dvelo
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- OTHER DEALINGS IN THE SOFTWARE.
-->
<svg width="129" height="128" viewBox="0 0 129 128" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="0.775696" width="127.238" height="127.238" rx="63.6192" fill="url(#paint0_linear_1_189)"/>
<path d="M50.7168 59.2012H46.0867C44.8588 59.2012 43.6811 58.7134 42.8128 57.8451C41.9445 56.9768 41.4567 55.7991 41.4567 54.5712V45.311C41.4567 44.0831 41.9445 42.9054 42.8128 42.0371C43.6811 41.1688 44.8588 40.681 46.0867 40.681H83.1273C84.3552 40.681 85.5329 41.1688 86.4012 42.0371C87.2695 42.9054 87.7573 44.0831 87.7573 45.311V54.5712C87.7573 55.7991 87.2695 56.9768 86.4012 57.8451C85.5329 58.7134 84.3552 59.2012 83.1273 59.2012H78.4972M50.7168 68.4614H46.0867C44.8588 68.4614 43.6811 68.9492 42.8128 69.8175C41.9445 70.6858 41.4567 71.8635 41.4567 73.0914V82.3516C41.4567 83.5795 41.9445 84.7572 42.8128 85.6255C43.6811 86.4938 44.8588 86.9816 46.0867 86.9816H83.1273C84.3552 86.9816 85.5329 86.4938 86.4012 85.6255C87.2695 84.7572 87.7573 83.5795 87.7573 82.3516V73.0914C87.7573 71.8635 87.2695 70.6858 86.4012 69.8175C85.5329 68.9492 84.3552 68.4614 83.1273 68.4614H78.4972M50.7168 49.9411H50.7399M50.7168 77.7215H50.7399M66.922 49.9411L57.6619 63.8313H71.5521L62.292 77.7215" stroke="white" stroke-width="5" stroke-linecap="round" stroke-linejoin="round"/>
<circle cx="64.395" cy="63.6192" r="41.8058" stroke="url(#paint1_linear_1_189)" stroke-width="8"/>
<defs>
<linearGradient id="paint0_linear_1_189" x1="52.3073" y1="26.296" x2="111.261" y2="108.153" gradientUnits="userSpaceOnUse">
<stop stop-color="#007BFF"/>
<stop offset="1" stop-color="#BF00FF" stop-opacity="0.5"/>
</linearGradient>
<linearGradient id="paint1_linear_1_189" x1="64.395" y1="17.8134" x2="64.395" y2="109.425" gradientUnits="userSpaceOnUse">
<stop stop-color="#EFEC32"/>
<stop offset="1" stop-color="#98FF60"/>
</linearGradient>
</defs>
</svg>

@ -1,12 +1,10 @@
<!--
- MHSF, Minehut Server List
- All external content is rather licensed under the ECA Agreement
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
-
- All code under MHSF is licensed under the MIT License
- by open source contributors
-
- Copyright (c) 2024 dvelo
- Copyright (c) 2025 dvelo
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
<!--
- MHSF, Minehut Server List
- All external content is rather licensed under the ECA Agreement
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
-
- All code under MHSF is licensed under the MIT License
- by open source contributors
-
- Copyright (c) 2024 dvelo
- Copyright (c) 2025 dvelo
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to

Binary file not shown.

After

Width:  |  Height:  |  Size: 711 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 623 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 486 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 KiB

80
apps/docs/docs.json Normal file

@ -0,0 +1,80 @@
{
"$schema": "https://mintlify.com/docs.json",
"theme": "maple",
"name": "MHSF Docs",
"colors": {
"primary": "#817abb",
"light": "#817abb",
"dark": "#c15281"
},
"favicon": "/content/favicon.svg",
"navigation": {
"global": {
"anchors": [
{
"anchor": "MHSF Update Discord",
"href": "https://discord.gg/QC2GfgWXVD",
"icon": "discord"
}
]
},
"tabs": [
{
"tab": "Documentation",
"groups": [
{
"group": "General",
"pages": ["getting-started"]
},
{
"group": "Guides",
"pages": [
"guides/customization",
"guides/linking",
"guides/owning-a-server",
"guides/reporting-server"
]
},
{
"group": "Advanced",
"pages": [
"advanced/achievements",
"advanced/command-bar",
"advanced/tech-stack"
]
},
{
"group": "Legal",
"pages": ["legal/rules", "legal/compliance"]
}
]
},
{
"tab": "Changelog",
"pages": ["changelog"]
}
]
},
"logo": {
"light": "/content/icon-gl.svg",
"dark": "/content/icon-gd.svg"
},
"navbar": {
"links": [
{
"label": "Support",
"href": "mailto:support@mhsf.app"
}
],
"primary": {
"type": "button",
"label": "MHSF",
"href": "https://mhsf.app"
}
},
"footer": {
"socials": {
"github": "https://github.com/DeveloLongScript/MHSF"
}
}
}

@ -1,8 +1,9 @@
---
title: "Getting Started"
icon: "play"
---
# Getting Started to MHSF
<img src="/docs/content/main-banner.png" />
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.
@ -28,4 +29,4 @@ No. Your Minehut account is not associated with your MHSF one, and consequently,
## Conclusion
If you'd like to use MHSF, go to the server list [here](Special:Root) to try it out! You may also give MHSF a star on GitHub if you feel like this project deserves it.
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.

@ -1,26 +1,39 @@
---
title: "Customization"
folder: "Guides"
icon: "gear"
---
# Customize your server
Customizing your server is very easy after you have [linked your account](Docs:guides/linking). Make sure you have done that before then.
Customizing your server is very easy after you have [linked your account](/docs/guides/linking). Make sure you have done that before then.
## Getting started
Make sure you've also [owned your server](Docs:guides/owning-a-server).
Make sure you've also [owned your server](/docs/guides/owning-a-server).
## Customization Types
### Discord Server
Enable the server widget in your Discord server settings, and copy and paste in the Discord server ID, and your Discord server will appear!
You can see the people inside of your server, and how many are online, along with a link to your server.
### Banner
Your server must have an image from [Imgur](https://imgur.com), and can be any image type that can be rendered on the web. Copy and paste the link (not the link after uploading the image, but by right clicking and hitting "Copy Image Address") into the input box!
Your server can have an image from anywhere, and can be any _static_ image type that can be rendered on the web. Copy and paste the link (not the link after uploading the image, but by right clicking and hitting "Copy Image Address") into the input box!
<Warning>
Except for images hosted by Imgur, `wsrv.nl` is used to make sure users aren't
IP logged.
</Warning>
### Color Scheme
You can pick any color in the box and choosing a color scheme to show on your server specificly.
### Description
You can use Markdown formatting to add a description to describe what your server is.
## Thats it!
If you have additional customization types or other things you'd like us to add, [feel free to hit us with an issue on GitHub!](Special:GitHub)
If you have additional customization types or other things you'd like us to add, [feel free to hit us with an issue on GitHub!](Special:GitHub)

@ -0,0 +1,60 @@
---
title: "Linking your account"
folder: "Guides"
icon: "link"
---
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.
<Separator />
## 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
<Steps>
<Step title="Go to your account settings">
Hit your profile on the top, and go to the settings
</Step>
<Step title="Hit link account button">
If your account hasn't already been linked, you should be able to hit the
Link button.
</Step>
<Step title="Pick a server">
You can pick either one of these options: - **CoreBoxx**, a popular box
server, is also a MHSF partner who has partnered to add the plugin to allow
you to link through the server. The server should be online all day, and is
recommended to use. - **MHSFPV** was a server designed for only linking.
This option is not recommended because **the server is always offline** and
must be turned on manually.
</Step>
<Step title="Join your chosen server">
Join the server using either `CoreBoxx.minehut.gg` or `MHSFPV.minehut.gg`
<Info>
Like said above, MHSFPV will most likely need to be turned on via the
lobby.
</Info>
If using CoreBoxx, type the `/mhsf` command.
<Warning>
If either server denies you saying you were already linked, and you were
linked before, hit the "Force unlink" link in the "Unlink" section. This
is a known bug.
</Warning>
</Step>
<Step title="Input code from server into MHSF">
Use the code from this server and input it into MHSF, and then submit.
</Step>
<Step title="You're linked!">You should be linked.</Step>
</Steps>
## Functions
You can do many things with a linked account:
- [Own a server](/guides/owning-a-server)
- [Customize a server](/guides/customization)
More will be coming in future updates, however the only thing you can do with a linked account is server-based functions.

@ -1,21 +1,45 @@
---
title: "Own a server"
folder: "Guides"
icon: "server"
---
# Owning a server
Owning a server is quite simple and allows you to [customize your server](/docs/guides/customization) 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 (either by looking for it, or using the keyboard shortcut <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>K</kbd> and searching for it), 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!
<Steps>
## I can't link my server, because my server doesn't have a author
<Step title="Link your account">
If you haven't already, make sure your account has [already been linked with
your Minecraft account](/docs/guides/linking)
</Step>
<Step title="Find your server">
Find the server you would like to own (either by looking for it, or using the
keyboard shortcut <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>K</kbd> and searching
for it)
</Step>
<Step title="Server customization tab">
Go to the server customization tab at the top.
</Step>
<Step title="Own the server">
If the owner of the server, and the user your linked to match, you will be
able to own your server. You should see a button named Click to own. Press
that button, and you should automagically own the server
</Step>
</Steps>
## Troubleshooting
### 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, along with your account username, and your account will own the server you need.
## There is an error while linking my server!
### There is an error while linking my server!
This most likely is because the Minehut API is blocking the server-side request to verify your the owner of that server, or your server [has no author](#i-cant-link-my-server-because-my-server-doesnt-have-a-author).
Try again in 30 minute intervals, or just make an issue on GitHub to link your server.
Try again in 30 minute intervals, or just make an issue on GitHub to link your server.

@ -0,0 +1,41 @@
---
title: "Reporting a server"
folder: "Guides"
icon: "flag"
---
If you believe a server that you've seen is under breach of the [Rules](/docs/legal/rules), you may request the server in question to be taken down.
<Steps>
<Step title="Before starting..">
- Make sure you are logged into a account
</Step>
<Step title="Go to server page">
Find the server you would like to own (either by looking for it, or using
the keyboard shortcut <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>K</kbd> and
searching for it)
</Step>
<Step title="Customization tab">Go to the customization tab</Step>
<Step title="Report server">
<Warning>
This will send a notification to MHSF maintainers. This server must be in
violation of the <Link href="/docs/legal/rules">Rules</Link> to be a valid
report. Typical response times include 1 hour to 1 day, and you will not
be notified if your report is successful or not.{" "}
<b>
Please do not spam this form with mindless reports. If you do, your
account will be banned. We are not Minehut support, we cannot help you
with a problem within the Minehut platform or within the server, we can
only moderate the customization of the server.
</b>
(if the problem is within the server, [report it on
Minehut](https://support.minehut.com/hc/en-us/requests/new?tf_subject=Reporting%20Server&tf_27062997154195=reports_appeals&tf_27063229498259=report_server))
</Warning>
Hit the Report button, and add a reason to your report. Your report will be
processed and the appropriate action will be taken.
</Step>
</Steps>
## 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).

@ -0,0 +1,47 @@
---
title: "Minehut Compliance"
icon: "truck"
---
<Info>
This document will be regularly updated in accordance with new information.
</Info>
Recently, we've been in contact with Minehut staff to ensure our compliance with users & server owners that use the platform.
We've decided to compile a list of important information to ensure you will not be punished.
## MHSF Communication
As said above, we've been in contact with Minehut staff. As said in a statement:
> **Please do not abuse the APIs** or collaborate with anyone using your APIs to compromise our systems in any way.
>
> _said privately from Tim at GamerSafer_
We'd like to share what abusing the APIs that are provided by Minehut really means.
### What is considered "abusing" Minehut APIs?
There are various different things this could mean. Here is an inclusive list of what is considered "abusing" Minehut APIs (or MHSF's):
- Spamming, "DDoS"-ing or repetitively requesting information from MHSF or Minehut's API[s]
- Using MHSF or Minehut's API[s] to violate rules stated in Minehut's ruleset:
1. Using it directly to grab information of player's who advertise your server
2. To get private information about another player or user that could be used in malicious intent
- Using MHSF or Minehut's API[s] to violate legal regulations
<Warning>
Remember, this list isn't exhaustive. There may be things that aren't listed
here that are considered "abusing" Minehut APIs.
</Warning>
## Other information
There is not a clear punishment for users using MHSF directly _if_ Minehut wasn't happy with our service. However, for avoidance of DMCA takedowns and
cease and desists, we will have to listen to Minehut's demands. We have no choice unfortunately.
Please make sure you are following API rules from both platforms to avoid MHSF being taken down.
## Have any questions?
Shoot us an email @ [support@mhsf.app](mailto:support@mhsf.app). And if you have an issue with a specific issue, [report it!](/guides/reporting-server)

131
apps/docs/legal/rules.mdx Normal file

@ -0,0 +1,131 @@
---
title: "MHSF Platform Rules"
icon: "scale-balanced"
---
MHSF is a platform & wrapper for the popular server host, Minehut, designed to be a friendly and useful location to find information
about servers, whether provided by a human or from MHSF's automated systems.
## Introduction
We simply cannot provide a service like this without rules that regulate how content is created and shared. This rule agreement ensures that MHSF content meets our project standards and protects users from inappropriate content that may not be suitable for our primary user base: Minehut players & server owners.
Generally, if you use MHSF as intended—sharing useful information about your server and engaging in appropriate interactions—you should have no issues. However, we've provided this resource to clearly define boundaries and expectations.
<Note>
Code under MHSF is licensed under the [MIT
License](https://github.com/DeveloLongScript/MHSF/blob/main/LICENSE). This document pertains to
platform usage and content, not to open-source code or how you interact on
other platforms *operated* by MHSF (for example, GitHub issues, pull requests,
Discord threads, etc.)
These rules could be easily overwritten if MHSF is self-hosted by another entity.
</Note>
## Jurisdiction
MHSF has a presence on various platforms. Our rules are enforced as follows:
1. **MHSF Platform Content**: All content provided on our platform as part of our customization process is subject to these rules and **will** be moderated.
- See [Reporting](#reporting) for information on how to report violations
2. **Server Content**: Content directly on Minecraft servers should be addressed by server staff—we have **no control** over this content.
3. **Minehut-Provided Content**: Server names, MOTDs, and other content _provided by Minehut_ that appears on MHSF cannot and will not be moderated by MHSF.
- This content is governed by [Minehut's ruleset](https://support.minehut.com/hc/en-us/articles/27075816947731-Minehut-Rules)
- Please email [`support@minehut.com`](mailto:support@minehut.com) to report content that violates Minehut's rules.
## Content & Behavior Rules
### Prohibited Content and Behavior
Users may not:
1. **Personal Information**
- Request, share, or disclose personally identifiable information that could negatively impact users
- Make threats to "dox" or "swat" other users
2. **Harassment & Threats**
- Engage in sexual harassment
- Threaten violence, assault, or property damage
- Harass other users in any form
- Use terminology that discriminates against others based on race, ethnicity, national origin, sexual orientation, gender identity, religion, disability, or other immutable characteristics
3. **Harmful Content**
- Encourage self-harm or suicide
- Encourage users to break platform rules
- Depict or encourage illegal activities (including drugs, weapon-making, gambling, DDoS attacks, and predatory behavior)
- Recreate tragic events (mass shootings, terrorism, natural disasters, human rights violations)
4. **Platform Abuse**
- Create multiple accounts to avoid punishment
- Upload disruptive content or perform operations that harm MHSF services
- Attempt to direct users off-platform unnecessarily
- Attack another server's content
- Spam, abuse, or misuse the MHSF API
5. **Scams & Manipulation**
- Conduct scams or manipulate users into sharing personal information or valuable items
- Sell or transfer MHSF accounts, server claims, or other platform privileges
## Enforcement & Punishment
### Standard Enforcement Process
For most violations, MHSF follows this process:
1. **First Violation**: Warning and content removal
2. **Repeated Violation**: Permanent removal from the MHSF platform
### Types of Enforcement Actions
Depending on the severity of the violation, actions may include:
- Content removal
- Temporary suspension
- Account ban
- IP ban
<Warning>
MHSF staff may use any enforcement action necessary to effectively address
threats to the platform. Certain serious violations will result in immediate
permanent bans without warning.
</Warning>
## Appeals Process
If you believe your punishment was unjustified, you may appeal by contacting [support@mhsf.app](mailto:support@mhsf.app).
<Warning>
You may only file **one appeal per punishment**. You can only have one active
appeal at a time.
</Warning>
## Reporting violations
If you believe another user has violated these rules, you can submit a report after logging in by following our [reporting guide](/docs/guides/reporting-server).
## Additional Information
### Age Requirement
Users must be at least 13 years old to use, interact with, or sign up for MHSF and its services. Users found to be under 13 will be banned in compliance with data protection laws and Minehut regulations.
### API Usage
When using the MHSF API:
- Include a proper `User-Agent` (or `X-Website-Agent` on the client) HTTP header with your project name and link
- Do not spam or abuse the API
- Do not use the API to violate Minehut, Discord, Minecraft, or legal regulations
### Rule Changes
These rules may be modified without prior notice. MHSF staff may take action against content or behavior that undermines the platform's interests, even if not explicitly covered in this document.
For questions, contact us at [support@mhsf.app](mailto:support@mhsf.app)
<Frame>Last modified: Mar. 1, 2025</Frame>

12
apps/docs/package.json Normal file

@ -0,0 +1,12 @@
{
"name": "docs",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"dev": "mintlify dev"
},
"devDependencies": {
"mintlify": "^4.0.417"
}
}

41
apps/stage1-clk-transfer/.gitignore vendored Normal file

@ -0,0 +1,41 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions
# testing
/coverage
# next.js
/.next/
/out/
# production
/build
# misc
.DS_Store
*.pem
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*
# env files (can opt-in for committing if needed)
.env*
# vercel
.vercel
# typescript
*.tsbuildinfo
next-env.d.ts

@ -0,0 +1,4 @@
# Stage 1 MHSF Clerk Transfer
This project is meant to provide a web-page to transfer users between development and production.
This shouldn't be needed to be used in another instance.

@ -0,0 +1,21 @@
{
"$schema": "https://ui.shadcn.com/schema.json",
"style": "new-york",
"rsc": true,
"tsx": true,
"tailwind": {
"config": "tailwind.config.ts",
"css": "src/app/globals.css",
"baseColor": "neutral",
"cssVariables": true,
"prefix": ""
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils",
"ui": "@/components/ui",
"lib": "@/lib",
"hooks": "@/hooks"
},
"iconLibrary": "lucide"
}

@ -0,0 +1,53 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import { dirname } from "path";
import { fileURLToPath } from "url";
import { FlatCompat } from "@eslint/eslintrc";
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
});
const eslintConfig = [
...compat.extends("next/core-web-vitals", "next/typescript"),
...compat.config({
rules: {
"react-hooks/exhaustive-deps": "off",
"react/no-unescaped-entities": "off",
"react/display-name": "off",
"@typescript-eslint/no-unused-vars": "off",
"@typescript-eslint/no-empty-object-type": "off",
}
})
];
export default eslintConfig;

@ -0,0 +1,35 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import type { NextConfig } from "next";
const nextConfig: NextConfig = {
/* config options here */
};
export default nextConfig;

@ -0,0 +1,71 @@
{
"name": "stage1-mhsf-transfer",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev --turbopack",
"build": "next build",
"start": "next start",
"lint": "next lint"
},
"dependencies": {
"@clerk/nextjs": "^6.10.3",
"@hookform/resolvers": "^3.10.0",
"@radix-ui/react-aspect-ratio": "^1.1.1",
"@radix-ui/react-avatar": "^1.1.1",
"@radix-ui/react-collapsible": "^1.1.1",
"@radix-ui/react-hover-card": "^1.1.1",
"@radix-ui/react-icons": "^1.3.0",
"@radix-ui/react-menubar": "^1.1.1",
"@radix-ui/react-primitive": "^2.0.0",
"@radix-ui/react-select": "^2.1.2",
"@radix-ui/react-switch": "^1.1.0",
"@radix-ui/react-checkbox": "^1.1.1",
"@radix-ui/react-context-menu": "^2.1.5",
"@radix-ui/react-dialog": "^1.1.2",
"@radix-ui/react-dropdown-menu": "^2.1.2",
"@radix-ui/react-label": "^2.1.0",
"@radix-ui/react-navigation-menu": "^1.1.4",
"@radix-ui/react-popover": "^1.0.7",
"@radix-ui/react-radio-group": "^1.2.0",
"@radix-ui/react-scroll-area": "^1.1.0",
"@radix-ui/react-separator": "^1.1.0",
"@radix-ui/react-slot": "^1.1.0",
"@radix-ui/react-tabs": "^1.1.0",
"@radix-ui/react-tooltip": "^1.1.3",
"@types/jsonwebtoken": "^9.0.8",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"cmdk": "1.0.0",
"date-fns": "^4.1.0",
"embla-carousel-react": "^8.5.2",
"input-otp": "^1.4.2",
"jsonwebtoken": "^9.0.2",
"lucide-react": "^0.474.0",
"mongodb": "^6.12.0",
"next": "15.2.3",
"next-themes": "^0.4.4",
"react": "^19.0.0",
"react-day-picker": "8.10.1",
"react-dom": "^19.0.0",
"react-hook-form": "^7.54.2",
"react-resizable-panels": "^2.1.7",
"recharts": "^2.15.1",
"sonner": "^1.7.2",
"tailwind-merge": "^2.6.0",
"tailwindcss-animate": "^1.0.7",
"vaul": "^1.1.2",
"zod": "^3.24.1"
},
"devDependencies": {
"@eslint/eslintrc": "^3",
"@types/node": "^20",
"@types/react": "^19",
"@types/react-dom": "^19",
"eslint": "^9",
"eslint-config-next": "15.1.6",
"postcss": "^8",
"tailwindcss": "^3.4.1",
"typescript": "^5"
}
}

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -0,0 +1,29 @@
<!--
- MHSF, Minehut Server List
-
- All code under MHSF is licensed under the MIT License
- by open source contributors
-
- Copyright (c) 2025 dvelo
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- OTHER DEALINGS IN THE SOFTWARE.
-->
<svg fill="none" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 13.5V5.41a1 1 0 0 0-.3-.7L9.8.29A1 1 0 0 0 9.08 0H1.5v13.5A2.5 2.5 0 0 0 4 16h8a2.5 2.5 0 0 0 2.5-2.5m-1.5 0v-7H8v-5H3v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1M9.5 5V2.12L12.38 5zM5.13 5h-.62v1.25h2.12V5zm-.62 3h7.12v1.25H4.5zm.62 3h-.62v1.25h7.12V11z" clip-rule="evenodd" fill="#666" fill-rule="evenodd"/></svg>

@ -0,0 +1,29 @@
<!--
- MHSF, Minehut Server List
-
- All code under MHSF is licensed under the MIT License
- by open source contributors
-
- Copyright (c) 2025 dvelo
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- OTHER DEALINGS IN THE SOFTWARE.
-->
<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><g clip-path="url(#a)"><path fill-rule="evenodd" clip-rule="evenodd" d="M10.27 14.1a6.5 6.5 0 0 0 3.67-3.45q-1.24.21-2.7.34-.31 1.83-.97 3.1M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m.48-1.52a7 7 0 0 1-.96 0H7.5a4 4 0 0 1-.84-1.32q-.38-.89-.63-2.08a40 40 0 0 0 3.92 0q-.25 1.2-.63 2.08a4 4 0 0 1-.84 1.31zm2.94-4.76q1.66-.15 2.95-.43a7 7 0 0 0 0-2.58q-1.3-.27-2.95-.43a18 18 0 0 1 0 3.44m-1.27-3.54a17 17 0 0 1 0 3.64 39 39 0 0 1-4.3 0 17 17 0 0 1 0-3.64 39 39 0 0 1 4.3 0m1.1-1.17q1.45.13 2.69.34a6.5 6.5 0 0 0-3.67-3.44q.65 1.26.98 3.1M8.48 1.5l.01.02q.41.37.84 1.31.38.89.63 2.08a40 40 0 0 0-3.92 0q.25-1.2.63-2.08a4 4 0 0 1 .85-1.32 7 7 0 0 1 .96 0m-2.75.4a6.5 6.5 0 0 0-3.67 3.44 29 29 0 0 1 2.7-.34q.31-1.83.97-3.1M4.58 6.28q-1.66.16-2.95.43a7 7 0 0 0 0 2.58q1.3.27 2.95.43a18 18 0 0 1 0-3.44m.17 4.71q-1.45-.12-2.69-.34a6.5 6.5 0 0 0 3.67 3.44q-.65-1.27-.98-3.1" fill="#666"/></g><defs><clipPath id="a"><path fill="#fff" d="M0 0h16v16H0z"/></clipPath></defs></svg>

@ -0,0 +1,29 @@
<!--
- MHSF, Minehut Server List
-
- All code under MHSF is licensed under the MIT License
- by open source contributors
-
- Copyright (c) 2025 dvelo
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- OTHER DEALINGS IN THE SOFTWARE.
-->
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 394 80"><path fill="#000" d="M262 0h68.5v12.7h-27.2v66.6h-13.6V12.7H262V0ZM149 0v12.7H94v20.4h44.3v12.6H94v21h55v12.6H80.5V0h68.7zm34.3 0h-17.8l63.8 79.4h17.9l-32-39.7 32-39.6h-17.9l-23 28.6-23-28.6zm18.3 56.7-9-11-27.1 33.7h17.8l18.3-22.7z"/><path fill="#000" d="M81 79.3 17 0H0v79.3h13.6V17l50.2 62.3H81Zm252.6-.4c-1 0-1.8-.4-2.5-1s-1.1-1.6-1.1-2.6.3-1.8 1-2.5 1.6-1 2.6-1 1.8.3 2.5 1a3.4 3.4 0 0 1 .6 4.3 3.7 3.7 0 0 1-3 1.8zm23.2-33.5h6v23.3c0 2.1-.4 4-1.3 5.5a9.1 9.1 0 0 1-3.8 3.5c-1.6.8-3.5 1.3-5.7 1.3-2 0-3.7-.4-5.3-1s-2.8-1.8-3.7-3.2c-.9-1.3-1.4-3-1.4-5h6c.1.8.3 1.6.7 2.2s1 1.2 1.6 1.5c.7.4 1.5.5 2.4.5 1 0 1.8-.2 2.4-.6a4 4 0 0 0 1.6-1.8c.3-.8.5-1.8.5-3V45.5zm30.9 9.1a4.4 4.4 0 0 0-2-3.3 7.5 7.5 0 0 0-4.3-1.1c-1.3 0-2.4.2-3.3.5-.9.4-1.6 1-2 1.6a3.5 3.5 0 0 0-.3 4c.3.5.7.9 1.3 1.2l1.8 1 2 .5 3.2.8c1.3.3 2.5.7 3.7 1.2a13 13 0 0 1 3.2 1.8 8.1 8.1 0 0 1 3 6.5c0 2-.5 3.7-1.5 5.1a10 10 0 0 1-4.4 3.5c-1.8.8-4.1 1.2-6.8 1.2-2.6 0-4.9-.4-6.8-1.2-2-.8-3.4-2-4.5-3.5a10 10 0 0 1-1.7-5.6h6a5 5 0 0 0 3.5 4.6c1 .4 2.2.6 3.4.6 1.3 0 2.5-.2 3.5-.6 1-.4 1.8-1 2.4-1.7a4 4 0 0 0 .8-2.4c0-.9-.2-1.6-.7-2.2a11 11 0 0 0-2.1-1.4l-3.2-1-3.8-1c-2.8-.7-5-1.7-6.6-3.2a7.2 7.2 0 0 1-2.4-5.7 8 8 0 0 1 1.7-5 10 10 0 0 1 4.3-3.5c2-.8 4-1.2 6.4-1.2 2.3 0 4.4.4 6.2 1.2 1.8.8 3.2 2 4.3 3.4 1 1.4 1.5 3 1.5 5h-5.8z"/></svg>

@ -0,0 +1,29 @@
<!--
- MHSF, Minehut Server List
-
- All code under MHSF is licensed under the MIT License
- by open source contributors
-
- Copyright (c) 2025 dvelo
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- OTHER DEALINGS IN THE SOFTWARE.
-->
<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1155 1000"><path d="m577.3 0 577.4 1000H0z" fill="#fff"/></svg>

@ -0,0 +1,29 @@
<!--
- MHSF, Minehut Server List
-
- All code under MHSF is licensed under the MIT License
- by open source contributors
-
- Copyright (c) 2025 dvelo
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- OTHER DEALINGS IN THE SOFTWARE.
-->
<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill-rule="evenodd" clip-rule="evenodd" d="M1.5 2.5h13v10a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1zM0 1h16v11.5a2.5 2.5 0 0 1-2.5 2.5h-11A2.5 2.5 0 0 1 0 12.5zm3.75 4.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5M7 4.75a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m1.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5" fill="#666"/></svg>

Before

Width:  |  Height:  |  Size: 218 KiB

After

Width:  |  Height:  |  Size: 218 KiB

@ -0,0 +1,116 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
@tailwind base;
@tailwind components;
@tailwind utilities;
body {
font-family: Arial, Helvetica, sans-serif;
}
@layer base {
:root {
--background: 0 0% 100%;
--foreground: 0 0% 3.9%;
--card: 0 0% 100%;
--card-foreground: 0 0% 3.9%;
--popover: 0 0% 100%;
--popover-foreground: 0 0% 3.9%;
--primary: 0 0% 9%;
--primary-foreground: 0 0% 98%;
--secondary: 0 0% 96.1%;
--secondary-foreground: 0 0% 9%;
--muted: 0 0% 96.1%;
--muted-foreground: 0 0% 45.1%;
--accent: 0 0% 96.1%;
--accent-foreground: 0 0% 9%;
--destructive: 0 84.2% 60.2%;
--destructive-foreground: 0 0% 98%;
--border: 0 0% 89.8%;
--input: 0 0% 89.8%;
--ring: 0 0% 3.9%;
--chart-1: 12 76% 61%;
--chart-2: 173 58% 39%;
--chart-3: 197 37% 24%;
--chart-4: 43 74% 66%;
--chart-5: 27 87% 67%;
--radius: 0.5rem;
--sidebar-background: 0 0% 98%;
--sidebar-foreground: 240 5.3% 26.1%;
--sidebar-primary: 240 5.9% 10%;
--sidebar-primary-foreground: 0 0% 98%;
--sidebar-accent: 240 4.8% 95.9%;
--sidebar-accent-foreground: 240 5.9% 10%;
--sidebar-border: 220 13% 91%;
--sidebar-ring: 217.2 91.2% 59.8%;
}
.dark {
--background: 0 0% 3.9%;
--foreground: 0 0% 98%;
--card: 0 0% 3.9%;
--card-foreground: 0 0% 98%;
--popover: 0 0% 3.9%;
--popover-foreground: 0 0% 98%;
--primary: 0 0% 98%;
--primary-foreground: 0 0% 9%;
--secondary: 0 0% 14.9%;
--secondary-foreground: 0 0% 98%;
--muted: 0 0% 14.9%;
--muted-foreground: 0 0% 63.9%;
--accent: 0 0% 14.9%;
--accent-foreground: 0 0% 98%;
--destructive: 0 62.8% 30.6%;
--destructive-foreground: 0 0% 98%;
--border: 0 0% 14.9%;
--input: 0 0% 14.9%;
--ring: 0 0% 83.1%;
--chart-1: 220 70% 50%;
--chart-2: 160 60% 45%;
--chart-3: 30 80% 55%;
--chart-4: 280 65% 60%;
--chart-5: 340 75% 55%;
--sidebar-background: 240 5.9% 10%;
--sidebar-foreground: 240 4.8% 95.9%;
--sidebar-primary: 224.3 76.3% 48%;
--sidebar-primary-foreground: 0 0% 100%;
--sidebar-accent: 240 3.7% 15.9%;
--sidebar-accent-foreground: 240 4.8% 95.9%;
--sidebar-border: 240 3.7% 15.9%;
--sidebar-ring: 217.2 91.2% 59.8%;
}
}
@layer base {
* {
@apply border-border;
}
body {
@apply bg-background text-foreground;
}
}

@ -0,0 +1,64 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
import "./globals.css";
import { ClerkProvider } from "@clerk/nextjs"
const geistSans = Geist({
variable: "--font-geist-sans",
subsets: ["latin"],
});
const geistMono = Geist_Mono({
variable: "--font-geist-mono",
subsets: ["latin"],
});
export const metadata: Metadata = {
title: "MHSF",
};
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<ClerkProvider >
<html lang="en">
<body
className={`${geistSans.variable} ${geistMono.variable} antialiased`}
>
{children}
</body>
</html>
</ClerkProvider>
);
}

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://mhsf.app/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
@ -29,31 +27,32 @@
*/
"use client";
import { CommandEvents } from "@/lib/commandEvent";
import { useEffect, useState } from "react";
import Snowfall from "react-snowfall";
export const snowfallEvents = new CommandEvents();
export default function SnowfallController() {
const [visible, setVisible] = useState(true);
import { GalleryVerticalEnd } from "lucide-react"
import { AuthFinish } from "@/components/auth-finish"
import { useEffect } from "react";
import { useRouter } from "next/navigation";
import { useUser } from "@clerk/nextjs";
export default function LoginPage() {
const router = useRouter();
const {user} = useUser();
useEffect(() => {
snowfallEvents.on("toggle", () => {
setVisible(!visible);
});
}, [visible]);
fetch("/api/v1/validate-stage1").then((c) => {
c.json().then((v) => {
console.log(v)
router.push(process.env.NEXT_PUBLIC_STAGE_2 as string + "?authentication=" + v.validationToken + "&oldId=" + user?.id)
})
})
}, [])
return (
<>
{visible && (
<Snowfall
style={{
position: "fixed",
width: "100vw",
height: "100vh",
}}
/>
)}
</>
);
<div className="flex min-h-svh flex-col items-center justify-center gap-6 bg-muted p-6 md:p-10">
<div>
<AuthFinish />
</div>
</div>
)
}

@ -0,0 +1,41 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import { GalleryVerticalEnd } from "lucide-react"
import { LoginForm } from "@/components/login-form"
export default function LoginPage() {
return (
<div className="flex min-h-svh flex-col items-center justify-center gap-6 bg-muted p-6 md:p-10">
<div className="sm:flex sm:w-full sm:max-w-sm sm:flex-col sm:gap-6">
<LoginForm />
</div>
</div>
)
}

@ -0,0 +1,37 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import Image from "next/image";
export default function Home() {
return (
<div className="grid grid-rows-[20px_1fr_20px] items-center justify-items-center min-h-screen p-8 pb-20 gap-16 sm:p-20 font-[family-name:var(--font-geist-sans)]">
Hi! My name is MHSF, whats your name?
</div>
);
}

@ -0,0 +1,52 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import { cn } from "@/lib/utils"
import { Button } from "@/components/ui/button"
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card"
import { Input } from "@/components/ui/input"
import { Label } from "@/components/ui/label"
import { SignIn } from "@clerk/nextjs"
import { LoadingSpinner } from "./ui/loading-spinner"
export function AuthFinish({
className,
...props
}: React.ComponentPropsWithoutRef<"div">) {
return (
<div className={cn("flex flex-col gap-6", className)} {...props}>
<LoadingSpinner />
</div>
)
}

@ -0,0 +1,58 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import { cn } from "@/lib/utils"
import { Button } from "@/components/ui/button"
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card"
import { Input } from "@/components/ui/input"
import { Label } from "@/components/ui/label"
import { SignIn } from "@clerk/nextjs"
export function LoginForm({
className,
...props
}: React.ComponentPropsWithoutRef<"div">) {
return (
<div className={cn("max-sm:w-screen sm:flex sm:flex-col sm:gap-6 sm:w-[28rem]", className)} {...props}>
<Card>
<CardHeader className="text-center">
<CardTitle className="text-xl">Sign in with your old account</CardTitle>
</CardHeader>
<CardContent>
<SignIn routing="virtual" transferable={false}/>
</CardContent>
</Card>
</div>
)
}

@ -1,3 +1,31 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import * as React from "react"
import { cva, type VariantProps } from "class-variance-authority"

@ -0,0 +1,35 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
"use client"
import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio"
const AspectRatio = AspectRatioPrimitive.Root
export { AspectRatio }

@ -1,3 +1,31 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
"use client"
import * as React from "react"

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -0,0 +1,39 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
"use client"
import * as CollapsiblePrimitive from "@radix-ui/react-collapsible"
const Collapsible = CollapsiblePrimitive.Root
const CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger
const CollapsibleContent = CollapsiblePrimitive.CollapsibleContent
export { Collapsible, CollapsibleTrigger, CollapsibleContent }

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -0,0 +1,45 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import type { SVGProps } from "react";
const Discord = (props: SVGProps<SVGSVGElement>) => (
<svg
viewBox="0 0 256 199"
width="1em"
height="1em"
xmlns="http://www.w3.org/2000/svg"
preserveAspectRatio="xMidYMid"
{...props}
>
<path
d="M216.856 16.597A208.502 208.502 0 0 0 164.042 0c-2.275 4.113-4.933 9.645-6.766 14.046-19.692-2.961-39.203-2.961-58.533 0-1.832-4.4-4.55-9.933-6.846-14.046a207.809 207.809 0 0 0-52.855 16.638C5.618 67.147-3.443 116.4 1.087 164.956c22.169 16.555 43.653 26.612 64.775 33.193A161.094 161.094 0 0 0 79.735 175.3a136.413 136.413 0 0 1-21.846-10.632 108.636 108.636 0 0 0 5.356-4.237c42.122 19.702 87.89 19.702 129.51 0a131.66 131.66 0 0 0 5.355 4.237 136.07 136.07 0 0 1-21.886 10.653c4.006 8.02 8.638 15.67 13.873 22.848 21.142-6.58 42.646-16.637 64.815-33.213 5.316-56.288-9.08-105.09-38.056-148.36ZM85.474 135.095c-12.645 0-23.015-11.805-23.015-26.18s10.149-26.2 23.015-26.2c12.867 0 23.236 11.804 23.015 26.2.02 14.375-10.148 26.18-23.015 26.18Zm85.051 0c-12.645 0-23.014-11.805-23.014-26.18s10.148-26.2 23.014-26.2c12.867 0 23.236 11.804 23.015 26.2 0 14.375-10.148 26.18-23.015 26.18Z"
fill="#5865F2"
/>
</svg>
);
export default Discord;

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -0,0 +1,48 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
import { useTheme } from "next-themes";
import type { SVGProps } from "react";
const Github = (props: SVGProps<SVGSVGElement>) => {
const { resolvedTheme } = useTheme();
return (
<svg
viewBox="0 0 256 250"
width="1em"
height="1em"
fill={resolvedTheme === "dark" ? "#fff" : "#24292f"}
xmlns="http://www.w3.org/2000/svg"
preserveAspectRatio="xMidYMid"
{...props}
>
<path d="M128.001 0C57.317 0 0 57.307 0 128.001c0 56.554 36.676 104.535 87.535 121.46 6.397 1.185 8.746-2.777 8.746-6.158 0-3.052-.12-13.135-.174-23.83-35.61 7.742-43.124-15.103-43.124-15.103-5.823-14.795-14.213-18.73-14.213-18.73-11.613-7.944.876-7.78.876-7.78 12.853.902 19.621 13.19 19.621 13.19 11.417 19.568 29.945 13.911 37.249 10.64 1.149-8.272 4.466-13.92 8.127-17.116-28.431-3.236-58.318-14.212-58.318-63.258 0-13.975 5-25.394 13.188-34.358-1.329-3.224-5.71-16.242 1.24-33.874 0 0 10.749-3.44 35.21 13.121 10.21-2.836 21.16-4.258 32.038-4.307 10.878.049 21.837 1.47 32.066 4.307 24.431-16.56 35.165-13.12 35.165-13.12 6.967 17.63 2.584 30.65 1.255 33.873 8.207 8.964 13.173 20.383 13.173 34.358 0 49.163-29.944 59.988-58.447 63.157 4.591 3.972 8.682 11.762 8.682 23.704 0 17.126-.148 30.91-.148 35.126 0 3.407 2.304 7.398 8.792 6.14C219.37 232.5 256 184.537 256 128.002 256 57.307 198.691 0 128.001 0Zm-80.06 182.34c-.282.636-1.283.827-2.194.39-.929-.417-1.45-1.284-1.15-1.922.276-.655 1.279-.838 2.205-.399.93.418 1.46 1.293 1.139 1.931Zm6.296 5.618c-.61.566-1.804.303-2.614-.591-.837-.892-.994-2.086-.375-2.66.63-.566 1.787-.301 2.626.591.838.903 1 2.088.363 2.66Zm4.32 7.188c-.785.545-2.067.034-2.86-1.104-.784-1.138-.784-2.503.017-3.05.795-.547 2.058-.055 2.861 1.075.782 1.157.782 2.522-.019 3.08Zm7.304 8.325c-.701.774-2.196.566-3.29-.49-1.119-1.032-1.43-2.496-.726-3.27.71-.776 2.213-.558 3.315.49 1.11 1.03 1.45 2.505.701 3.27Zm9.442 2.81c-.31 1.003-1.75 1.459-3.199 1.033-1.448-.439-2.395-1.613-2.103-2.626.301-1.01 1.747-1.484 3.207-1.028 1.446.436 2.396 1.602 2.095 2.622Zm10.744 1.193c.036 1.055-1.193 1.93-2.715 1.95-1.53.034-2.769-.82-2.786-1.86 0-1.065 1.202-1.932 2.733-1.958 1.522-.03 2.768.818 2.768 1.868Zm10.555-.405c.182 1.03-.875 2.088-2.387 2.37-1.485.271-2.861-.365-3.05-1.386-.184-1.056.893-2.114 2.376-2.387 1.514-.263 2.868.356 3.061 1.403Z" />
</svg>
);
};
export default Github;

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://mhsf.app/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,3 +1,31 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
"use client"
import * as React from "react"

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -1,3 +1,31 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
"use client"
import * as React from "react"

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

@ -0,0 +1,59 @@
/*
* MHSF, Minehut Server List
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
"use client"
import { useTheme } from "next-themes"
import { Toaster as Sonner } from "sonner"
type ToasterProps = React.ComponentProps<typeof Sonner>
const Toaster = ({ ...props }: ToasterProps) => {
const { theme = "system" } = useTheme()
return (
<Sonner
theme={theme as ToasterProps["theme"]}
className="toaster group"
toastOptions={{
classNames: {
toast:
"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",
description: "group-[.toast]:text-muted-foreground",
actionButton:
"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",
cancelButton:
"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground",
},
}}
{...props}
/>
)
}
export { Toaster }

@ -1,12 +1,10 @@
/*
* MHSF, Minehut Server List
* All external content is rather licensed under the ECA Agreement
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
*
* All code under MHSF is licensed under the MIT License
* by open source contributors
*
* Copyright (c) 2024 dvelo
* Copyright (c) 2025 dvelo
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to

Some files were not shown because too many files have changed in this diff Show More