Mwbot-rs

mwbot-rs is a framework for writing bots and tools in Rust. The aim is to provide the building blocks for people to write safe and concurrent applications that interact with and enhance MediaWiki. The project is still getting started, all contributions are welcome!

Source code and issues: https://gitlab.com/mwbot-rs

Goals

 * Have fun. Seriously, Rust is a fun programming language to work in, and this project should be no exception
 * Provide building blocks (independent crates) that let people do what they want
 * Embrace and utilize Rust's key features like safety and fearless concurrency
 * Encourage best practices by default
 * Enable sustainable development of bots and tools

Crates

 * mwbot: A framework to build MediaWiki bots with, overall umbrella project
 * mwapi: Layer that takes care of interactions with the MediaWiki Action API, like tokens or uploads
 * mwapi_errors: Typed errors for all kinds of issues encountered when working with the API and MediaWiki
 * mwapi_responses: Macro to generated typed response structs for dynamic API queries
 * parsoid: Wrapper around Parsoid HTML that provides convenient accessors for processing and manipulation

Contributing
Reach out to one of the project leads (see below) to get developer access to the repository, so you can push your work. We intend to adhere to the wiki way, so feel free to push directly to master like you'd edit a wiki page. If you want review ahead of time for larger changes or aren't sure about something, feel free to start a merge request. Make sure CI stays green and avoid undiscussed breaking changes. Contributors agree to follow the code of conduct for technical spaces.

The list of "good first task!" issues is a good place to get started.

Contributors

 * Legoktm (project lead)
 * Subbu

Discussions
Project-level discussions can happen on the talk page, or if they're mostly technical, GitLab is fine too. Issue tracking happens on GitLab. For real-time conversations, join via Matrix or IRC.