Skip to content

minekube/gate-plugin-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues License


Logo

Gate Starter Plugin Template

An awesome template for creating your Minecraft proxy powered by Minekube Gate!

Explore the docs »

Discord · Report Bug · Request Feature

About The Project

Product Name Screen Shot

This template repository bootstraps your Minekube Gate project, a customizable Minecraft proxy written in Go.

What's Included?

  • gate.go: The main entry point of the application.
  • plugins: The directory for your custom plugins.
  • config.yml: A minimal Gate configuration file.
  • Dockerfile: A Dockerfile for building a Docker image.
  • .github/workflows: GitHub Action for testing, linting, releasing on tags and publishing Docker images to ghcr.io.
  • Makefile: Contains commands for testing and linting.
  • renovate.json: Configuration file for Renovate automatic dependency updates.
Prerequisites

Prerequisites

  • Go - The Go Programming Language
  • Git - Distributed Version Control System
  • GoLand / VSCode - Gophers' favorite IDEs

Getting Started

  1. Fork this repository on GitHub.
  2. Clone forked repository (git clone <your-forked-repo-url>)
  3. Open project in your favorite Go IDE.
  4. Run the proxy: go run .
  5. Start customizing Gate to your needs!

Usage

To create a new Gate plugin, follow these steps:

  1. Create and write your plugin code in a new plugins/xyz/xyz.go file.
  2. Add your exported plugin to the proxy.Plugins slice in gate.go.
  3. Build and run Gate with: go run .

Use the -d flag to run Gate in debug mode if you encounter issues. (go run . -d)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feat/AmazingFeature)
  5. Open a Pull Request on GitHub

(back to top)