Skip to content
This repository has been archived by the owner on Dec 6, 2019. It is now read-only.

Minecraft website with a flexible API for plugins, skins, players, server - including stats and the possibility to hide your data

License

Notifications You must be signed in to change notification settings

games647/Minecraft-Database

Repository files navigation

MinecraftDatabase

Description

A website as database for various minecraft things.

For images scroll down.

This project uses the Laravel framework. They have great documentation here: https://laravel.com/docs/

Server page

server page

Features

General

  • Open source
  • API friendly
  • Flexible / mostly automatically
  • Simple
  • No user authentication needed
  • No advertisement
  • No premium features

Servers

  • Personal server pages
  • Index all servers
  • Support for all 1.7+ servers
  • Detects online mode automatically

Index

index

Planning (in general)

  • Statistics
    • Players -> new players, online players, ...
    • Plugins -> version, usage count, ...
    • Servers -> online/offline, cracked/premium, ...
    • Including webserver ones i.e. added servers,
  • Monitoring webserver -> Webpage for viewing viewing recent ping results
  • Authless entry removal
    • For servers: verification -> a verification code in the motd
    • For players: verification -> join a premium mc server
  • Set a database entry to:
    • Hide only specific properties
    • Private/hide -> only you can still see the statistics
    • Delete it
  • Skin database
  • Plugin database for Spigot (spigotmc.org), Bukkit (dev.bukkit.org) and Sponge (https://ore-staging.spongepowered.org/)
  • Server GEO location
  • Player database
  • Add servers at once
  • Automatically detect teamspeak and website by doing a SRV lookup
  • API for all features, including UUID resolver, Banner generator, ...

API Documentation

See the wiki here: https://github.com/games647/Minecraft-Database/wiki/API

Installation

Requirements

  • PHP 5.7+
  • MySQL or MariaDB (for development you can use SQLite too which has no additional setup requirement)
  • Webserver with PHP support (or php artisan serve )

Quick setup using virtual machine (Homestead)

If you don't want to install and setup the the things above, you can create a virtual machine for this. Everything will be configured and you can start using as you started it.

  • Install VirtualBox if you don't have it - https://www.virtualbox.org/
  • Install Vagrant if you don't have it - https://www.vagrantup.com/
  • Clone this repository
  • Install composer if you don't have it - https://getcomposer.org/
  • Run "composer install"
  • Run Windows: "vendor\bin\homestead make" Linux/Mac: "php vendor/bin/homestead make"
  • Run "vagrant up" to start the virtual machine
  • SSH to the server using
    • command line: "vagrant ssh"
    • any other programs like Putty to ip:localhost port: 2222 (default -> username=vagrant; password=vagrant)
  • Go to the project folder: "cd minecraftdatabase"
  • Run "sudo npm install"
  • Run "php artisan migrate --seed"
  • Run "gulp" or "gulp watch"
  • That's it. You can now access it with localhost:8000
  • With "vagrant halt" you can stop the machine
  • For more details visit https://laravel.com/docs/5.2/homestead

Manual setup

  • Clone this repository
  • Install composer - https://getcomposer.org/
  • Install NodeJS - https://nodejs.org
  • Run "composer create"
  • Run "npm install"
  • Run "php artisan migrate --seed"
  • Run "gulp"
  • Install MySQL (or MariaDB) and a Webserver (for example nginx or apache)
  • Check your server config in the ".env"-file
  • Let your webserver server point to the public folder
  • If you are on a production server add this to your cronjobs to so tasks can run periodically: "* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1"

All in one for Windows

Windows might want to checkout Laragon. It has everything bundled into one installer. After installation you just have to copy this project into the "INSTALL_PATH/www" (Install path is default to C:\laragon) folder. So it the project folder of should be located there: "INSTALL_PATH/www/minecraftdatabase"

Updating

  • git fetch
  • git pull
  • composer install
  • gulp
  • php artisan migrate

App specific commands

  • php artisan command:ping Pings all servers in the database

Development - Useful commands

Artisian webserver

  • php artisan serve

Run gulp in the background

  • Run "gulp watch" This will check for modified assets and will deploy them if needed automatically. There is no need to compile sass files manually

Debug commands in Tinker

tinker

  • php artisan tinker
  • Example: "\App\Server::find(1);"
  • exit

IDE-Helper

  • php artisan ide-helper:generate
  • php artisan ide-helper:meta
  • php artisan ide-helper:models

List all routes

  • php artisan route:list

Reset your database

  • php artisan migrate:refresh --seed

Credits

About

Minecraft website with a flexible API for plugins, skins, players, server - including stats and the possibility to hide your data

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages