Skip to content

DemureCW/Miki

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to Miki Repository

lol oily fucked up
Below you will find a basic workflow of how the branches should work. Please follow this to prevent bad merge conflicts on Miki and things constantly breaking.

Table of contents

Workflow for Branches

  • Pull the latest changes from the master branch.
  • Create a new working branch based off the last commit from the master branch.
    • Branches should be named as follows:
      • update_name: For LARGE updates that will take a while to update. Smaller hotfix updates will be merged into this if they are released before the large update.
        • (e.g., update_v2.0.1)
      • hf_name: For SMALLER hotfix updates that will be pushed out before larger updates are completed. These will be merged back into master AND the update branches whenever they are released.
        • (e.g., hf_fixmarrycommand)
      • helper_name_date: For helper-related changes (such as cleaning up code, web documentation updates, etc), that need to be approved by Veld before they can be merged into any other branches.
        • (e.g., helper_veld_201610 or helper_documentation_201610)
  • Make your changes in the branch you have just created.
  • Commit those changes, and then push the branch to the remote git repository.
  • When changes are approved and are ready for release, the branch will be merged into the master branch.
    • Note: The working branch at this time will be deleted from the repository.

Dependencies

  • AWSSDK.S3
  • Entity Framework 6.0
  • Imgur.API
  • Miki.Anilist
  • Miki.Cache
  • Miki.Configuration
  • Miki.Discord
  • Miki.Dsl
  • Miki.Logging
  • Miki.Rest
  • Newtonsoft.Json
  • Npgsql

Optional Dependencies

  • CountLib
  • Miki.Patreon
  • SharpRaven
  • SteamKit2

Useful links

Bot invite: https://discordapp.com/oauth2/authorize?&client_id=160185389313818624&scope=bot
Documentation: https://github.com/velddev/Miki/wiki
Issues: https://github.com/velddev/Miki/issues
Patreon: https://www.patreon.com/mikibot
Support server: https://discord.gg/55sAjsW

Feature requests

Feature Requests

Getting Started

Yes, in its current state this process is tedious. However, there will be an installer in the future that will make getting started much simpler.

Important:

Currently the Miki API is private, meaning you won't have access to the leaderboards until the API is released publicly. More information will be available here when that happens.

If you have any questions about the setup process do not ask in the support server, as a majority of the people there will not be able to assist you. DM Xetera#9596 for questions instead.

Installation Steps:

  1. Clone the Miki repository.

  2. Install Miki.Framework and Miki.Rest through NuGet or clone them as well, along with the other dependencies.

  3. Add your bot token in Miki/miki/settings.json.

  4. Download RabbitMQ and have the service running.

  5. Download Redis and get that running too.

  6. Download PostgreSQL and set up a database called Miki.

  7. Configure your connection string in Miki/miki/settings.json as such (if using localhost):

"connection_string": "Server=127.0.0.1;Port=5432;User Id=postgres;Database=Miki;"
  1. Install the uuid-ossp postgres extensions on the Miki database.
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
  1. Run existing migrations inside the base Miki solution through the NuGet Package Manager Console with Update-Database

    • Tools -> NuGet Package Manager -> Package Manager Console
  2. Navigate to Miki.Framework and run Update-Database to apply the migrations there as well.

  3. Clone the gateway repository in a separate location.

  4. Download Node.js if you don't have it installed already.

  5. Run npm install in the sharder download location to setup the dependencies.

  6. Create a config.js by copy pasting the format from config.js.example and filling in your bot token.

  7. Run node gateway.js.

  8. Run Miki. 🎉

Possible issues:

These will likely be fixed in the near future (if it's not already by the time you're reading this):

  • A lack of API keys might be giving you issues in the DonatorModule and FunModule, the simplest way to solve it is to just comment out the lines that raise exceptions and the lines that reference the client (there shouldn't be more than 2 reference max, if so, you're doing something wrong).

  • If you're having trouble running migrations make sure your EntityFramework for both base Miki and Miki.Framework is on version 2.0.1-2.0.3 NOT 2.1.1.

About

Miki Discord Bot

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%