vargur-api-sdk


Namevargur-api-sdk JSON
Version 0.0.1 PyPI version JSON
download
home_pagehttps://github.com/meloncafe/vargur-api-sdk
SummaryEVE ONLINE - Vargur API SDK
upload_time2024-07-13 06:14:18
maintainerNone
docs_urlNone
authorMelonCafe
requires_python<4.0,>=3.11
licenseMIT
keywords eve online sdk api
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Vargur API SDK

Vargur API SDK is a powerful toolkit for building extensible applications with plugin support. It provides a core set of features including database integration, caching, event bus, and authentication, along with a plugin system that allows easy extension of functionality.

## Features

- Plugin system for easy extensibility
- Mock implementations for database integration, caching, event bus, and authentication
- Minimal dependencies for flexibility in implementation

## Installation

You can install Vargur API SDK using pip:

```
pip install vargur-api-sdk
```

## Usage

Here's a basic example of how to use Vargur API SDK:

```python
from fastapi import FastAPI
from vargur_sdk import Plugin, load_plugins, event_bus

app = FastAPI()

class MyPlugin(Plugin):
    def __init__(self):
        super().__init__("my_plugin")
        self.router.add_api_route("/hello", self.hello)

    async def hello(self):
        return {"message": "Hello from my plugin!"}

# Load all plugins
plugins = load_plugins()
plugins["my_plugin"] = MyPlugin()

# Include plugin routers
for plugin in plugins.values():
    app.include_router(plugin.router)

# Example of using the event bus
@app.post("/trigger_event")
async def trigger_event():
    await event_bus.publish("some_event", data="Some data")
    return {"message": "Event triggered"}

if __name__ == "__main__":
    import uvicorn
    uvicorn.run(app, host="0.0.0.0", port=8000)
```

## Components

- **Plugin**: Base class for creating plugins
- **Config**: Configuration settings for the SDK
- **Database**: Mock database session provider
- **Cache**: Mock caching implementation
- **EventBus**: Mock event publishing and subscribing system
- **Authentication**: Mock user authentication

## Configuration

Vargur API SDK uses a `Config` class for configuration. You can modify these settings in your application:

```python
from vargur_sdk import config

config.DEBUG = True
config.LOG_LEVEL = "DEBUG"
config.DATABASE_URL = "your_database_url"
config.SECRET_KEY = "your_secret_key"
```

## Documentation

For more detailed information, please refer to the following documentation:

- [User Guide](https://meloncafe.github.io/vargur-api-sdk/user-guide)
- [API Reference](https://meloncafe.github.io/vargur-api-sdk/api-reference)
- [Plugin Guidelines](https://meloncafe.github.io/vargur-api-sdk/plugin-guidelines)

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## License

This project is licensed under the [MIT License](LICENSE).
            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/meloncafe/vargur-api-sdk",
    "name": "vargur-api-sdk",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.11",
    "maintainer_email": null,
    "keywords": "eve online, sdk, api",
    "author": "MelonCafe",
    "author_email": "contact@siege0green.com",
    "download_url": "https://files.pythonhosted.org/packages/58/13/86fb6a86e8e41e5bc5df2c3674fa18346d4097b25fa9c6918351e5bf3bbe/vargur_api_sdk-0.0.1.tar.gz",
    "platform": null,
    "description": "# Vargur API SDK\n\nVargur API SDK is a powerful toolkit for building extensible applications with plugin support. It provides a core set of features including database integration, caching, event bus, and authentication, along with a plugin system that allows easy extension of functionality.\n\n## Features\n\n- Plugin system for easy extensibility\n- Mock implementations for database integration, caching, event bus, and authentication\n- Minimal dependencies for flexibility in implementation\n\n## Installation\n\nYou can install Vargur API SDK using pip:\n\n```\npip install vargur-api-sdk\n```\n\n## Usage\n\nHere's a basic example of how to use Vargur API SDK:\n\n```python\nfrom fastapi import FastAPI\nfrom vargur_sdk import Plugin, load_plugins, event_bus\n\napp = FastAPI()\n\nclass MyPlugin(Plugin):\n    def __init__(self):\n        super().__init__(\"my_plugin\")\n        self.router.add_api_route(\"/hello\", self.hello)\n\n    async def hello(self):\n        return {\"message\": \"Hello from my plugin!\"}\n\n# Load all plugins\nplugins = load_plugins()\nplugins[\"my_plugin\"] = MyPlugin()\n\n# Include plugin routers\nfor plugin in plugins.values():\n    app.include_router(plugin.router)\n\n# Example of using the event bus\n@app.post(\"/trigger_event\")\nasync def trigger_event():\n    await event_bus.publish(\"some_event\", data=\"Some data\")\n    return {\"message\": \"Event triggered\"}\n\nif __name__ == \"__main__\":\n    import uvicorn\n    uvicorn.run(app, host=\"0.0.0.0\", port=8000)\n```\n\n## Components\n\n- **Plugin**: Base class for creating plugins\n- **Config**: Configuration settings for the SDK\n- **Database**: Mock database session provider\n- **Cache**: Mock caching implementation\n- **EventBus**: Mock event publishing and subscribing system\n- **Authentication**: Mock user authentication\n\n## Configuration\n\nVargur API SDK uses a `Config` class for configuration. You can modify these settings in your application:\n\n```python\nfrom vargur_sdk import config\n\nconfig.DEBUG = True\nconfig.LOG_LEVEL = \"DEBUG\"\nconfig.DATABASE_URL = \"your_database_url\"\nconfig.SECRET_KEY = \"your_secret_key\"\n```\n\n## Documentation\n\nFor more detailed information, please refer to the following documentation:\n\n- [User Guide](https://meloncafe.github.io/vargur-api-sdk/user-guide)\n- [API Reference](https://meloncafe.github.io/vargur-api-sdk/api-reference)\n- [Plugin Guidelines](https://meloncafe.github.io/vargur-api-sdk/plugin-guidelines)\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "EVE ONLINE - Vargur API SDK",
    "version": "0.0.1",
    "project_urls": {
        "Documentation": "https://vargur-api-sdk.siege-green.com",
        "Homepage": "https://github.com/meloncafe/vargur-api-sdk",
        "Repository": "https://github.com/meloncafe/vargur-api-sdk"
    },
    "split_keywords": [
        "eve online",
        " sdk",
        " api"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b15c440ecc28e5f1846e8e9c70949517fbc49e611b817108427d093b4dd29a48",
                "md5": "b5e61814ccb694d8adc91da0a1c7942f",
                "sha256": "65376c6138540c9e975b3ecc0cf00a107b2fa54ab233cf9039a0cb9b0a6e67a4"
            },
            "downloads": -1,
            "filename": "vargur_api_sdk-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b5e61814ccb694d8adc91da0a1c7942f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.11",
            "size": 5277,
            "upload_time": "2024-07-13T06:14:16",
            "upload_time_iso_8601": "2024-07-13T06:14:16.781117Z",
            "url": "https://files.pythonhosted.org/packages/b1/5c/440ecc28e5f1846e8e9c70949517fbc49e611b817108427d093b4dd29a48/vargur_api_sdk-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "581386fb6a86e8e41e5bc5df2c3674fa18346d4097b25fa9c6918351e5bf3bbe",
                "md5": "6d318eea4b1de63037dfcd726766f1d6",
                "sha256": "0730b336f448af0d5c5e864d1397e5acc2858fb7c082ab5a607184a223d366dd"
            },
            "downloads": -1,
            "filename": "vargur_api_sdk-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "6d318eea4b1de63037dfcd726766f1d6",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.11",
            "size": 3768,
            "upload_time": "2024-07-13T06:14:18",
            "upload_time_iso_8601": "2024-07-13T06:14:18.401152Z",
            "url": "https://files.pythonhosted.org/packages/58/13/86fb6a86e8e41e5bc5df2c3674fa18346d4097b25fa9c6918351e5bf3bbe/vargur_api_sdk-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-13 06:14:18",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "meloncafe",
    "github_project": "vargur-api-sdk",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "vargur-api-sdk"
}
        
Elapsed time: 0.99952s