The modern Discord framework for Dart
Mineral is an open source framework that makes developing Discord applications intuitive and powerful. Create complete, high-performance, production-quality applications with complete confidence.
Features
Discover the power of Mineral
Mineral is designed to help you build Discord applications with ease. It provides a wide range of features that make development faster and more efficient.
Open Source
Mineral is open source, meaning you can contribute to the project, report issues, and help shape the future of the framework.
Dart powered
Mineral is built on top of Dart, take advantage of the language features and the performance of compiled code.
Easy to Use
Mineral is designed to be easy to use, with a simple and intuitive API that makes building Discord applications a breeze.
Interactive CLI
Comes with an interactive CLI that helps you scaffold new projects from different architecture presets, generate events any Mineral components, and manage your application with ease.
Best Practices
Follows best practices for building Discord applications, ensuring that your applications are secure, reliable, and performant.
Ecosystem
Take advantage of an ecosystem exclusive to the Mineral framework. Don't reinvent the wheel, we provide a multitude of additional packages.
Core features
Building on modern foundations
Interactive CLI
The interactive CLI helps you scaffold new projects from different architecture presets, generate events any Mineral components, and manage your application with ease.
Project scaffolding
Quickly scaffold new projects from different architecture presets on your next Discord application.
Component generation
Generate files for events, commands, providers and more with a dedicated commands.
Create and inject your own commands
Integrate your own commands into the CLI to automate tasks and streamline your workflow.
Events listening
Listen to events emitted by Discord and react to them with your own custom logic. Mineral provides a simple and powerful way to handle events and build your application.
Functional design
You can declare your events from client instance with a simple handler function to make a benchmarks or a poc of your application.
Object oriented design
According with a Dart language philosophy, you can create your own classes to handle your events and commands to make more complex applications.
Exclusive events
Mineral offers exclusive events to make listening to certain Discord events as easy as possible.
Slash commands
Slash commands are a new way to interact with your Discord bot. Mineral proposes an innovative approach to simplify the creation of your orders as much as possible.
Command builder
Mineral provides a command builder to help you create commands with ease. Simply define your command and its options, and Mineral will take care of the rest.
Declaration and definition commands
We offer two distinct approaches, enabling you to design your orders in a declarative or imperative manner.
Translations
Offers a simple way to manage translations in your application. Define your translations in a YAML file and use them in your commands.
Mineral 4 is currently in beta phase, follow the steps below to get started.
Step 1: Bug reports (current)
This phase focuses on detecting anomalies and malfunctions. Your role is to report any bugs you encounter to help us correct them.
Step 2: Addition of new planned functionalities
We have previously focused on reporting malfunctions, but a host of new features are planned for the final version, which we will develop.
Step 3: Integration of your proposals
We will integrate your proposals and suggestions into the final version of Mineral. Your feedback is essential to us.
Ready !
We will release the final version of Mineral, which will include all the features and improvements you have suggested.
Features
Discover the power of Mineral
Mineral is designed to help you build Discord applications with ease. It provides a wide range of features that make development faster and more efficient.
Listen to events emitted by Discord and react to them with your own custom logic.
Slash commands are a new way to interact with your Discord bot, create them with declaration or definition approach.
Global states are a way to share data accros events, commands, services, components or any other part of your application.
Provide allow you to split easily your application into multiple parts and manage the dependencies between them.
Build your own embeds, dialogs, buttons, menus or any other text components with a simple and powerful API.
Automatically reloads your application when you make changes to your code without reset the websocket connection.
Mineral provides a caching strategy to cache your data and reduce the number of requests to the Discord API.
IoC rovides a service container to manage your application dependencies and perform dependency injection.
Mineral is cloud native, meaning you can deploy your applications to the cloud with ease with Kubernetes or any other one.
FAQs
Frequently Asked Questions
Here are some of the most common questions we get asked about Mineral. If you have a question that isn't answered here, feel free to reach out to us.
Mineral is open source ?
Yes, Mineral is open source, meaning you can contribute to the project, report issues, and help shape the future of the framework.
Mineral is production ready ?
The current version (v3) is production ready, but the next version (v4) is currently in beta phase. We are working hard to make it production ready.
Start using Mineral
Ready to get started with Mineral ? Check out the documentation to learn how to build your first Discord application 🚀