# inlayr
_A modular, chain‑agnostic SDK for building and integrating crypto quoting and trading flows on DEXs._
> **Status:** Experimental (v0.1.21). APIs may change before 1.0.
[](https://pypi.org/project/inlayr/)
[](https://pypi.org/project/inlayr/)
[](./LICENSE)
[](#type-hints)
---
inlayr aims to provide a clean, typed interface for **quoting, routing and submitting swaps** across multiple chains.
- ✅ **Pluggable backends** — add providers without touching the core
- ✅ **No commission** — avoid wallet-level commissions
- ✅ **Integration** — build your own DEX trading bots
If you just want the docs: jump to **[Quickstart](#quickstart)** or **[Installation](#installation)**.
---
## Installation
The base install:
```bash
pip install inlayr
```
Supported Python: **3.9+**
## Quickstart
> The exact API surface may evolve before 1.0. The snippets below show the intended usage patterns while staying dependency‑light.
### Verify install
```python
import inlayr
print (inlayr.__version__)
```
### High‑level sketch (pseudocode)
```python
# Illustrative only. Actual class and method names may differ in your version.
# 1) Import provider interface
from inlayr.provider import get_provider
# 2) Fetch your private key
solana_pk = open(r"solana_pk").read()
# 3) Configure Chain, RPC, and Aggregator
provider = get_provider(
chain = "solana",
chain_params = {"wallet_pk": solana_pk},
rpc = "solana",
rpc_params = {"chain_id": None},
aggregator = "jupiter",
aggregator_params = {}
)
# 4) Perform operations (e.g. request a quote)
quote = provider.get_quote(
source_token = "4eDf52YYzL6i6gbZ6FXqrLUPXbtP61f1gPSFM66M4XHe",
source_amount = 1_000_000_000,
destination_token = "So11111111111111111111111111111111111111112",
slippage = 1_000
)
```
Please refer to [examples](https://github.com/OlegMitsik/inlayr/tree/main/examples) for more functional use cases.
## Configuration
Common runtime knobs (RPC endpoints, routing preferences, etc) are typically supplied by you at construction time.
Currently supported configurations:
- **RPCs** — ankr, 1rpc, solana
- **Chains** — evm, solana
- **Aggregators** — 0x, 1inch, jupiter, raydium
## Security
Private keys are provided only at runtime. They are never logged, transmitted, or stored by us.
## Type hints
- The package includes `py.typed` so type checkers (mypy, pyright) understand the public API.
- We aim to keep public call signatures stable across minor versions; experimental pieces will be marked in docstrings where applicable.
## Contributing
PRs and issues are welcome! A few guidelines:
- Discuss larger changes in an issue first.
- Ensure `python -m build && twine check dist/*` succeeds.
- Add or update tests (`pytest`).
To run tests:
```bash
pip install -e '.[test]'
pytest -q
```
## Versioning
We use **Semantic Versioning**. Until `1.0.0`, minor bumps may include small breaking changes as we refine the API.
## Disclaimer
This project is for informational and development purposes only and does not constitute financial or investment advice.
The software is provided “as is” without warranties, and the authors/contributors assume no responsibility or liability for any losses, damages, or outcomes resulting from its use.
Use at your own risk and comply with applicable laws.
## License
Licensed under the **Apache 2.0** license. See [LICENSE](https://github.com/OlegMitsik/inlayr/blob/main/LICENSE) for details.
## Links
- PyPI: <https://pypi.org/project/inlayr/>
- Issues: <https://github.com/OlegMitsik/inlayr/issues>
- Repo: <https://github.com/OlegMitsik/inlayr>
Raw data
{
"_id": null,
"home_page": null,
"name": "inlayr",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "blockchain, defi, aggregator, solana, ethereum",
"author": "Oleg Mitsik",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/d3/d1/3af2d4595bdb632204383cfcce4b145bdb42fdbc689b1f8ddc132facf419/inlayr-0.1.21.tar.gz",
"platform": null,
"description": "# inlayr\n\n_A modular, chain\u2011agnostic SDK for building and integrating crypto quoting and trading flows on DEXs._\n\n> **Status:** Experimental (v0.1.21). APIs may change before 1.0.\n\n[](https://pypi.org/project/inlayr/)\n[](https://pypi.org/project/inlayr/)\n[](./LICENSE)\n[](#type-hints)\n\n---\n\ninlayr aims to provide a clean, typed interface for **quoting, routing and submitting swaps** across multiple chains.\n\n- \u2705 **Pluggable backends** \u2014 add providers without touching the core\n- \u2705 **No commission** \u2014 avoid wallet-level commissions\n- \u2705 **Integration** \u2014 build your own DEX trading bots\n\nIf you just want the docs: jump to **[Quickstart](#quickstart)** or **[Installation](#installation)**.\n\n---\n\n## Installation\n\nThe base install:\n\n```bash\npip install inlayr\n```\n\nSupported Python: **3.9+**\n\n## Quickstart\n\n> The exact API surface may evolve before 1.0. The snippets below show the intended usage patterns while staying dependency\u2011light.\n\n### Verify install\n\n```python\nimport inlayr\nprint (inlayr.__version__)\n```\n\n### High\u2011level sketch (pseudocode)\n\n```python\n# Illustrative only. Actual class and method names may differ in your version.\n\n# 1) Import provider interface\nfrom inlayr.provider import get_provider\n\n# 2) Fetch your private key\nsolana_pk = open(r\"solana_pk\").read()\n\n# 3) Configure Chain, RPC, and Aggregator\nprovider = get_provider(\n\tchain = \"solana\",\n\tchain_params = {\"wallet_pk\": solana_pk},\n\trpc = \"solana\",\n\trpc_params = {\"chain_id\": None},\n\taggregator = \"jupiter\",\n\taggregator_params = {}\n)\n\n# 4) Perform operations (e.g. request a quote)\nquote = provider.get_quote(\n\tsource_token = \"4eDf52YYzL6i6gbZ6FXqrLUPXbtP61f1gPSFM66M4XHe\",\n\tsource_amount = 1_000_000_000,\n\tdestination_token = \"So11111111111111111111111111111111111111112\",\n\tslippage = 1_000\n)\n```\n\nPlease refer to [examples](https://github.com/OlegMitsik/inlayr/tree/main/examples) for more functional use cases.\n\n## Configuration\n\nCommon runtime knobs (RPC endpoints, routing preferences, etc) are typically supplied by you at construction time.\n\nCurrently supported configurations:\n- **RPCs** \u2014 ankr, 1rpc, solana\n- **Chains** \u2014 evm, solana\n- **Aggregators** \u2014 0x, 1inch, jupiter, raydium\n\n## Security\n\nPrivate keys are provided only at runtime. They are never logged, transmitted, or stored by us.\n\n## Type hints\n\n- The package includes `py.typed` so type checkers (mypy, pyright) understand the public API.\n- We aim to keep public call signatures stable across minor versions; experimental pieces will be marked in docstrings where applicable.\n\n## Contributing\n\nPRs and issues are welcome! A few guidelines:\n- Discuss larger changes in an issue first.\n- Ensure `python -m build && twine check dist/*` succeeds.\n- Add or update tests (`pytest`).\n\nTo run tests:\n\n```bash\npip install -e '.[test]'\npytest -q\n```\n\n## Versioning\n\nWe use **Semantic Versioning**. Until `1.0.0`, minor bumps may include small breaking changes as we refine the API.\n\n## Disclaimer\n\nThis project is for informational and development purposes only and does not constitute financial or investment advice.\nThe software is provided \u201cas is\u201d without warranties, and the authors/contributors assume no responsibility or liability for any losses, damages, or outcomes resulting from its use.\nUse at your own risk and comply with applicable laws.\n\n## License\n\nLicensed under the **Apache 2.0** license. See [LICENSE](https://github.com/OlegMitsik/inlayr/blob/main/LICENSE) for details.\n\n## Links\n\n- PyPI: <https://pypi.org/project/inlayr/>\n- Issues: <https://github.com/OlegMitsik/inlayr/issues>\n- Repo: <https://github.com/OlegMitsik/inlayr>\n",
"bugtrack_url": null,
"license": null,
"summary": "Modular, chain-agnostic SDK for crypto trading on DEXs",
"version": "0.1.21",
"project_urls": {
"Homepage": "https://github.com/OlegMitsik/inlayr",
"Issues": "https://github.com/OlegMitsik/inlayr/issues",
"Repository": "https://github.com/OlegMitsik/inlayr"
},
"split_keywords": [
"blockchain",
" defi",
" aggregator",
" solana",
" ethereum"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "d00d1d6f4ab43fe5bfa4329dbcea1360a77453821ab2631957929a73bdf0091f",
"md5": "a3dc98c39dd390d75cb8dd8d16340845",
"sha256": "5b241db0816b353e2cdd1efc4067048e8f13afe536dd0575451abf1b9287eaea"
},
"downloads": -1,
"filename": "inlayr-0.1.21-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a3dc98c39dd390d75cb8dd8d16340845",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 21054,
"upload_time": "2025-10-21T13:40:38",
"upload_time_iso_8601": "2025-10-21T13:40:38.532960Z",
"url": "https://files.pythonhosted.org/packages/d0/0d/1d6f4ab43fe5bfa4329dbcea1360a77453821ab2631957929a73bdf0091f/inlayr-0.1.21-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d3d13af2d4595bdb632204383cfcce4b145bdb42fdbc689b1f8ddc132facf419",
"md5": "c59408aba442ae453d76623cf2dc0b38",
"sha256": "d67ca166467bf25be8bd05c3c5a6f2c4eef34c1c6a1f24120d9239b147bbafe5"
},
"downloads": -1,
"filename": "inlayr-0.1.21.tar.gz",
"has_sig": false,
"md5_digest": "c59408aba442ae453d76623cf2dc0b38",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 18150,
"upload_time": "2025-10-21T13:40:39",
"upload_time_iso_8601": "2025-10-21T13:40:39.757994Z",
"url": "https://files.pythonhosted.org/packages/d3/d1/3af2d4595bdb632204383cfcce4b145bdb42fdbc689b1f8ddc132facf419/inlayr-0.1.21.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-21 13:40:39",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OlegMitsik",
"github_project": "inlayr",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "inlayr"
}