Git Product home page Git Product logo

arcaneframework's Introduction

ArcaneFramework

Shaded plugin development library for ArcanePlugins software

Support available on Discord Support available through Spigot PMs
Documentation available on the Wiki Source Code available on GitHub
Contributors listed in Credits Page

About

ArcaneFramework is a library purposed to reduce the amount of boilerplate code required in our plugin suite.

It is designed to replace our usage of MicroLib. Upon sufficient completion, MicroLib will be discontinued.

Should I use this library?

Probably not. Unexpected, right? Usually libraries want to sell themselves to developers. ๐Ÿ˜„

There may be features you like in the library, however, there are a handful of barriers this library poses to developers interested in adopting it. It boils down to how this library is designed for our use - what we require of it - without catering for what other developers would desire it to be. Rather, we have decided that forks of this library would be able to expand on it if wanted without the burden of us trying to facilitate a feature we may never use or may not be able to maintain in the long term. Here's why you probably don't want to use ArcaneFramework:

  • Compiled in Java 17, so your plugin will need to be compiled with Java 17 or newer.

    • We will not backport as we are not interested in aiding users who intentionally use outdated software such as Java 8 and Minecraft 1.8, we would rather our software not be dragged behind.
  • This library uses the GNU GPL v3 license which poses restrictions on what license you may use in your plugins which adopt it.

    • All of our plugins are GPL, and we don't like proprietary software.. the choice to make this framework licensed under GPL was an easy one to make.
    • But... if your plugin is licensed under the GPL, then all the better!
  • This library is highly opinionated.

    • We have our way of doing things, our design choices in this library will reflect such.
  • This library contains only the features that we require.

    • Again, feel free to create a fork if you want to expand on ArcaneFramework.
  • Not widely documented.

    • Documented enough that we (hopefully) won't forget what things do.
  • Makes breaking changes as often as we need them to.

    • As we will have large codebases depending on ArcaneFramework, we will aim to not make large breaking changes so we don't have to constantly refactor things.
    • However, if there's something we need to change, we will do it.

All of these barriers (except for the license) may be addressed by anyone who is willing to create and maintain a fork of ArcaneFramework. We are not interested in maintaining such a variant ourselves.

Copyright Notice

         Copyright ยฉ 2022 lokka30 and contributors.

      /\  |\_________ ArcaneFramework is free software; you
     /  \ |  _______/ can redistribute it and/or modify it
    / /\ \| |____     under the terms of the GNU General
   / /  \ `  ___/     Public License as published by the
  / /    \  |         Free Software Version, either version
 / /____  | |         3 of the license, or (at your option)
/______/ /__|         any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
 
You should have received a copy of the GNU General Public
License along with this program.  If not, see
<https://www.gnu.org/licenses/>.

arcaneframework's People

Contributors

lokka30 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.