# Promplate
```text
</Promplate/> = <template> // prompt
```
**Promplate** is a prompting framework focusing on developing experience. However, it can also be a super-convenient SDK for simple LLM calls. Promplate progressively enhance your prompting workflow. And it values flexibility as well as perfect conventions. [Try online](https://promplate.dev/py)
## Installation
```shell
pip install promplate
```
**Promplate** supports both CPython and PyPy, from `3.8` to `3.13`. It even supports running in browsers through wasm implementations of python.
## Documentation
You can visit our official docs site at [docs.py.promplate.dev](https://docs.py.promplate.dev/).
## IDE Support 🌹
**Promplate** is fully typed, which means static type checker will find bugs correctly (if you use `pyright` for type checking).
We recommend using VS Code as your IDE when coding with promplate, because it natively uses pyright.
The language design of promplate is similar to `Jinja2`. So you can use the `.j2` file extension for template files for syntax highlight.
## Development
- use `poetry` to manage dependencies.
- use `isort` to sort import statements.
- use `black` to format code.
- use `pyright` to check type annotations.
Development should be done on `dev` branch, using `>=3.10` language features. The `master` branch is used for `py3.8` compatible releases.
**Promplate** is well tested with `pytest`. GitHub Actions are used to run tests and linting. And there are test results continually generated on [Vercel](https://promplate-core.vercel.app/) and [Netlify](https://promplate-core.netlify.app/). There is [a coverage report](https://promplate-python-coverage.onrender.com/) too.
## Future Features (or TODOs?)
- [ ] more documentation
- [ ] javascript implementation
- [x] improved error handling
- display compiled code when error occurs through `linecache` or `tempfile` (default)
Raw data
{
"_id": null,
"home_page": "https://promplate.dev/",
"name": "promplate",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "prompt, template, nlp, llm",
"author": "Muspi Merol",
"author_email": "me@promplate.dev",
"download_url": "https://files.pythonhosted.org/packages/14/11/be8066c8d87093032d8dbef739d9a71b3adbebc0443b8c5a66bad90bdc49/promplate-0.3.4.11.tar.gz",
"platform": null,
"description": "# Promplate\n\n```text\n</Promplate/> = <template> // prompt\n```\n\n**Promplate** is a prompting framework focusing on developing experience. However, it can also be a super-convenient SDK for simple LLM calls. Promplate progressively enhance your prompting workflow. And it values flexibility as well as perfect conventions. [Try online](https://promplate.dev/py)\n\n## Installation\n\n```shell\npip install promplate\n```\n\n**Promplate** supports both CPython and PyPy, from `3.8` to `3.13`. It even supports running in browsers through wasm implementations of python.\n\n## Documentation\n\nYou can visit our official docs site at [docs.py.promplate.dev](https://docs.py.promplate.dev/).\n\n## IDE Support \ud83c\udf39\n\n**Promplate** is fully typed, which means static type checker will find bugs correctly (if you use `pyright` for type checking).\n\nWe recommend using VS Code as your IDE when coding with promplate, because it natively uses pyright.\n\nThe language design of promplate is similar to `Jinja2`. So you can use the `.j2` file extension for template files for syntax highlight.\n\n## Development\n\n- use `poetry` to manage dependencies.\n- use `isort` to sort import statements.\n- use `black` to format code.\n- use `pyright` to check type annotations.\n\nDevelopment should be done on `dev` branch, using `>=3.10` language features. The `master` branch is used for `py3.8` compatible releases.\n\n**Promplate** is well tested with `pytest`. GitHub Actions are used to run tests and linting. And there are test results continually generated on [Vercel](https://promplate-core.vercel.app/) and [Netlify](https://promplate-core.netlify.app/). There is [a coverage report](https://promplate-python-coverage.onrender.com/) too.\n\n## Future Features (or TODOs?)\n\n- [ ] more documentation\n- [ ] javascript implementation\n- [x] improved error handling\n - display compiled code when error occurs through `linecache` or `tempfile` (default)\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Prompt engineering framework for humans",
"version": "0.3.4.11",
"project_urls": {
"Documentation": "https://docs.py.promplate.dev/",
"Homepage": "https://promplate.dev/",
"Repository": "https://github.com/promplate/core"
},
"split_keywords": [
"prompt",
" template",
" nlp",
" llm"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fc287bfc482ef25ff5b20e2e29621331eaf492f73c1c99c708e7e6a0f08b33f9",
"md5": "7dddec8b188dd7d957f719c1f571a761",
"sha256": "d31b3da3d874aeda860206f94f50ad575e49d38867107b487342f57579745d9b"
},
"downloads": -1,
"filename": "promplate-0.3.4.11-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7dddec8b188dd7d957f719c1f571a761",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 15826,
"upload_time": "2024-12-18T12:06:35",
"upload_time_iso_8601": "2024-12-18T12:06:35.028594Z",
"url": "https://files.pythonhosted.org/packages/fc/28/7bfc482ef25ff5b20e2e29621331eaf492f73c1c99c708e7e6a0f08b33f9/promplate-0.3.4.11-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1411be8066c8d87093032d8dbef739d9a71b3adbebc0443b8c5a66bad90bdc49",
"md5": "8fa049411fb83a128dc100ca65ae3bbf",
"sha256": "50ca4820571840c0e91e09fdb0431148fe6c4318c7f58dfe9e407407f37a1572"
},
"downloads": -1,
"filename": "promplate-0.3.4.11.tar.gz",
"has_sig": false,
"md5_digest": "8fa049411fb83a128dc100ca65ae3bbf",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 12939,
"upload_time": "2024-12-18T12:06:37",
"upload_time_iso_8601": "2024-12-18T12:06:37.579313Z",
"url": "https://files.pythonhosted.org/packages/14/11/be8066c8d87093032d8dbef739d9a71b3adbebc0443b8c5a66bad90bdc49/promplate-0.3.4.11.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-18 12:06:37",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "promplate",
"github_project": "core",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "promplate"
}