Skip to content

MSLib is a sophisticated toolkit designed to streamline and accelerate exteraGram plugin development. It provides developers with powerful abstractions, utilities, and built-in enhancements that eliminate boilerplate code and enable rapid prototyping of feature-rich Telegram extensions.

License

Notifications You must be signed in to change notification settings

Miracle-Studios/MSLib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 MSLib

A comprehensive plugin development framework for exteraGram

Version License Python exteraGram Telegram


📌 Overview

MSLib is a sophisticated toolkit designed to streamline and accelerate exteraGram plugin development. It provides developers with powerful abstractions, utilities, and built-in enhancements that eliminate boilerplate code and enable rapid prototyping of feature-rich Telegram extensions.

Whether you're building simple command handlers or complex plugin ecosystems, MSLib offers the architectural foundations needed for scalable and maintainable plugin development.

✨ Key Features

  • 🎯 Command Framework — Declarative command registration with automatic routing and help generation
  • 🔄 Auto-Update System — Seamless plugin updates with intelligent version management and change detection
  • 📦 Smart Caching — High-performance data persistence with compression and serialization support
  • 🌍 Internationalization — Built-in localization for Russian and English with extensible language support
  • 🎨 UI Components Library — Pre-built settings components for consistent plugin configuration interfaces
  • 🔌 Integrated Plugins — Collection of production-ready Telegram improvements (hashtag fixes, call confirmations, etc.)

🚀 Quick Start

Basic Command Handler

from MSLib import command, send_message

@command("hello", "Greet the user")
def hello_handler(message):
    send_message(message.peer_id, "Hello, world! 👋")

Working with Cache

from MSLib import CacheFile

cache = CacheFile("user_data.json", compress=True)
cache.write({"user_id": 123, "preferences": {"theme": "dark"}})
data = cache.read()

Settings UI

from MSLib import Header, Switch

def create_settings(self):
    return [
        Header(text="Plugin Settings"),
        Switch(
            key="feature_enabled",
            text="Enable Feature",
            subtext="Toggle this feature on/off",
            default=True
        )
    ]

📚 Documentation

Comprehensive guides and API documentation:

Resource Description
Getting Started Installation and first steps
API Reference Complete class and function documentation
Integrated Plugins Built-in plugin features
Commands Guide Command system deep dive
Caching & Storage Data persistence strategies

🛠️ Requirements

  • exteraGram 12.0.0 or higher
  • Python 3.11+

💡 Why MSLib?

  • Reduces Boilerplate — Focus on business logic, not infrastructure
  • Production-Ready — Battle-tested utilities and patterns
  • Type-Safe — Clear APIs with predictable behavior
  • Well-Documented — Comprehensive guides with examples
  • Active Development — Regular updates and community support

🤝 Contributing

We welcome contributions! Please check our issues page for areas where you can help.

📄 License

This project is licensed under the BSD 3-Clause License - see the LICENSE file for details.

Copyright (c) 2024, Miracle Studios
All rights reserved.

Crafted with ❤️ by Miracle Studios

About

MSLib is a sophisticated toolkit designed to streamline and accelerate exteraGram plugin development. It provides developers with powerful abstractions, utilities, and built-in enhancements that eliminate boilerplate code and enable rapid prototyping of feature-rich Telegram extensions.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages