Giter Club home page Giter Club logo

dalamudpluginsd17's Introduction

DalamudPluginsD17

Hi! This is the plugin repository for the Dalamud plugin framework for Final Fantasy XIV. This repository implements DIP17 to make the submission process easier and faster.

Publishing your plugin

Preparing your repository

  • Ensure your plugin is on a publically accessible Git repo (GitHub, GitLab, any self-hosted Git instance that allows HTTP clones without authentication)
  • Update your .csproj
  • Build your plugin in Release, commit your .csproj + the newly generated lock file

Approval criteria

When the plugin approval group checks your plugin, they will check for the following:

  • Does it meet our guidelines, as agreed upon by multiple members of the group?
  • Does it feature any combat elements? If so, are they purely informational, and show only information the player would normally know?
  • Does it pass an informal code review?
  • Does it install cleanly?
  • Does the configuration window (if present) behave correctly?
  • Does the base functionality of the plugin work (if testable easily)?
  • Does it have no obvious technical issues?
  • Is its JSON correctly formatted? (We hope to make this unnecessary in future)
  • If it's a new plugin, is it in the testing channel and not the stable channel? We want new plugins to be in testing to make it easier for the group to test, as well as reducing the impact of any unforeseen issues.
  • Does it meet the Technical criteria?

These criteria are intended to prevent issues for users. We're happy to work with you to get you across the line; just reach out in the Discord.

Technical criteria

There are a few technical things that you must do before submitting your plugin here. They will make your plugin nicer to use.

  • Your plugin must have an icon.png that is no larger than 512x512 and no smaller than 64x64 in images/.
  • For regular windows, like settings and utility windows, you should use the Dalamud Windowing API. It enhances windows with a few nice features, like integration into the native UI closing-order, pinning, and opacity controls. If it looks like a window, it should use the windowing API. We won't reject updates to existing plugins for this, but we encourage everyone to upgrade.
  • Your plugin's version/assembly version must not be based on a timestamp or continually increasing build number. Every time your plugin is built with a specific commit, no matter the time or date, should produce the same version.

Submitting

  • Fork this repository, or use the GitHub web editor (press . in the repo, or press the โœ icon on an existing manifest)

  • In your fork, make stable/(plugin name)/manifest.toml (or testing/live/(plugin name)/manifest.toml - note that we prefer that new plugins go to testing/live, so that the wrinkles can be worked out before they go out to the wider audience). For more information, see here.

    [plugin]
    repository = "https://github.com/goatcorp/SamplePlugin.git"
    commit = "765d9bb434ac99a27e9a3f2ba0a555b55fe6269d"
    owners = ["goaaats"]
    project_path = "SamplePlugin"
    changelog = "Added Herobrine"
  • Place the images for your plugin in an images subfolder: stable/(plugin name)/images.

  • Make the PR. If you're using the GitHub web editor, this will be automatic.

You'll also need to be using DalamudPackager; please check the SamplePlugin for an example. If you need help, please reach out.

Updating your plugin

Just edit the commit hash in your manifest. Please always make your updates from a new branch, to make it cleaner for us to review.

Rebuilding in a PR

If you want to trigger a re-build of your PR, just post a comment with the content "bleatbot, rebuild".

Secrets

If your build process requires secrets, or you want to include a secret in your plugin, use this page to encrypt the secret, to be included via your manifest. It will then be made available to your plugin's MSBuild/build script via environment variables, as per the instructions on the page.


When submitting a plugin, please consider our Acceptable Use Policy & Terms of Service, which, for example, detail the rights you need to grant us when uploading a plugin to this repository.

Please review the plugin adoption policy to understand what happens if you abandon your plugin. The FAQ also provides instructions on how to submit a plugin if taking over from another developer.

dalamudpluginsd17's People

Contributors

midorikami avatar infiziert90 avatar goaaats avatar tischel avatar critical-impact avatar caraxi avatar glyceri avatar blooym avatar karashiiro avatar 0ceal0t avatar kouzukii avatar anna-is-cute avatar atmoomen avatar kalilistic avatar berna-l avatar ottermandias avatar koenari avatar lmcintyre avatar img02 avatar notnite avatar marconsou avatar kazwolfe avatar wolfcomp avatar meoiswa avatar drahsid avatar pilzinsel64 avatar reiichi001 avatar kaleidocli avatar xpahtalo avatar snorux 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.