All Projects → WillowChat → Warren

WillowChat / Warren

Licence: isc
🐇 Kotlin/JVM, tested, IRC v3.2 client state management and observing

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Warren

Android Readthefuckingsourcecode
😜 记录日常的开发技巧,开发中遇到的技术重点、难点,各个知识点的总结,优质面试题等等。持续更新...
Stars: ✭ 1,665 (+20712.5%)
Mutual labels:  gradle, jvm
Twitch4j
Modular Async/Sync/Reactive Twitch API Client / IRC Client
Stars: ✭ 209 (+2512.5%)
Mutual labels:  gradle, irc
Kotlinx Benchmark
Kotlin multiplatform benchmarking toolkit
Stars: ✭ 137 (+1612.5%)
Mutual labels:  gradle, jvm
Hexagon
Hexagon is a microservices toolkit written in Kotlin. Its purpose is to ease the building of services (Web applications, APIs or queue consumers) that run inside a cloud platform.
Stars: ✭ 336 (+4100%)
Mutual labels:  gradle, jvm
Tyrian
Full-featured TypeScript on JVM
Stars: ✭ 138 (+1625%)
Mutual labels:  gradle, jvm
Bestnote
👊 持续更新,Java Android 近几年最全面的技术点以及面试题 供自己学习使用
Stars: ✭ 841 (+10412.5%)
Mutual labels:  gradle, jvm
Euircbot
A featureful nodejs irc bot
Stars: ✭ 16 (+100%)
Mutual labels:  irc
Android Basic Samples
Google Play game services - Android samples
Stars: ✭ 934 (+11575%)
Mutual labels:  gradle
Glowing Bear
A web client for WeeChat
Stars: ✭ 830 (+10275%)
Mutual labels:  irc
Scala Logging
Convenient and performant logging library for Scala wrapping SLF4J.
Stars: ✭ 804 (+9950%)
Mutual labels:  jvm
Refreshversions
Life is too short to google for dependencies and versions
Stars: ✭ 841 (+10412.5%)
Mutual labels:  gradle
Plantuml Gradle Plugin
Gradle plugin to build PlantUML diagrams from code (for living and up-to-date documentation)
Stars: ✭ 27 (+237.5%)
Mutual labels:  gradle
Loom
https://openjdk.java.net/projects/loom/
Stars: ✭ 921 (+11412.5%)
Mutual labels:  jvm
Sopel
🤖💬 An easy-to-use and highly extensible IRC Bot framework. Formerly Willie.
Stars: ✭ 894 (+11075%)
Mutual labels:  irc
Android Cookbook Examples
Contributed code examples from O'Reilly Android Cookbook. See #user-content-table README below!
Stars: ✭ 935 (+11587.5%)
Mutual labels:  gradle
Spring Streaming
SPA on Spring Boot 1.x, WebSockets and React, gradle, nodejs, spring-boot, gradle multi project, spring-mvc, spring-data, gradle dependency update plugin, react-router
Stars: ✭ 6 (-25%)
Mutual labels:  gradle
Gradle Defaults
Plugin providing opinionated defaults for Gradle projects.
Stars: ✭ 7 (-12.5%)
Mutual labels:  gradle
Fod
Freedom of Developers
Stars: ✭ 815 (+10087.5%)
Mutual labels:  gradle
Torpedo
Pluggable, multi-network asynchronous chat bot written in Go
Stars: ✭ 19 (+137.5%)
Mutual labels:  irc
Irc Colors.js
Color and formatting for irc bots made easy. Inspired by colors.js and cli-color.
Stars: ✭ 26 (+225%)
Mutual labels:  irc

Warren

Kotlin (JVM targeted), unit tested, IRC v3.2 state management and observing. Made for personal use, and open sourced. Intended to provide the tools needed to make IRC related software, like bridges and bots.

Kale is the parsing and serialising counterpart.

Thump is the primary upstream project - a bridge that lets people chat between Minecraft and IRC whilst they play.

codecov

Features

Warren and Kale have a few interesting features:

  • The responsibilities of parsing and state management are separated
  • Both parsing and state management are verified by hundreds of unit tests
  • Messages, and state handlers, are individually encapsulated

Planned releases (and their features) are tracked in Projects.

Support

If you use this library and you'd like to support my open-source work, please consider tipping through Patreon.

Example usage

The project includes a simple example runner that prints out events as they happen, logs in using SASL and replies to me saying rabbit party in a channel.

If you're interested in more complex usage, come talk to me on IRC: #carrot on ImaginaryNet

TODO

Code License

The source code of this project is licensed under the terms of the ISC license, listed in the LICENSE file. A concise summary of the ISC license is available at choosealicense.org.

Building

This project uses Gradle for pretty easy setup and building.

  • Setup: ./gradlew clean
  • Building: ./gradlew clean build - this will also produce a fat Jar with shaded dependencies included

Usage

Warren is published on my personal Maven repository. It uses a Let's Encrypt certificate, and you need to use Java 8 >= 8u101 or Java 7 >= 7u111 to connect to it.

Gradle

  • Add to repositories: maven { url = "https://maven.ci.carrot.codes" }
  • Add to dependencies: compile 'chat.willow.warren:Warren:1.4.0.74'
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].