$git clone https://github.com/PromptSmith-OSS/promptsmithA prompt engineering solution to manage Gen AI prompts easily.
| 1 | # Prompt Smith |
| 2 | |
| 3 | A prompt engineering solution to manage Gen AI prompts easily. |
| 4 | |
| 5 | |
| 6 | ## Features |
| 7 | - Self-hosted option with full control over data |
| 8 | - Dockerized for easy deployment |
| 9 | - RESTful API for easy integration |
| 10 | - With SDK for Python and Node.js. |
| 11 | - API Key management through centralized UI |
| 12 | - Prompt Management through centralized UI |
| 13 | - Variants |
| 14 | - Versioning (database level) |
| 15 | |
| 16 | > - [PromptSmith Intro](https://www.youtube.com/watch?v=IDMKOcQxICs) |
| 17 | > This is a video to demonstrate the features of Prompt Smith |
| 18 | |
| 19 | ## How to use |
| 20 | |
| 21 | 1. Start the service locally `docker-compose up --build` |
| 22 | 2. Access the at `http://localhost:3000` |
| 23 | 3. Default login credentials (this could be set in docker compose file, please do not use default credentials in production) |
| 24 | - email: `admin@localhost.lan` |
| 25 | - password: `AwesomePromptsManagement` |
| 26 | 4. Create a prompt at `http://localhost:3000/prompt` |
| 27 | 5. Create an API key at `http://localhost:3000/key` |
| 28 | 4. Get your prompts with ease through RESTful API |
| 29 | ```shell |
| 30 | curl "http://localhost:3000/api/bff/api/sdk/prompt/{prompt-key}" \ |
| 31 | -H 'Authorization: Bearer {api-key}' \ |
| 32 | -H 'Content-Type: application/json; charset=utf-8' |
| 33 | ``` |
| 34 | 6. Or Get prompts through SDK |
| 35 | - [Python SDK and Python Example](https://github.com/PromptSmith-OSS/promptsmith-python-sdk) |
| 36 | - [Node.js SDK and JS/TS Example](https://github.com/PromptSmith-OSS/promptsmith-js-sdk) |
| 37 | |
| 38 | |
| 39 | |
| 40 | |
| 41 | |
| 42 | > We have deployed a [Demo Instance](https://app.demo.promptsmith.dev) |
| 43 | > - Please note the data may not be persisted and will be deleted scheduledly. |
| 44 | |
| 45 | ## Development and Contribution |
| 46 | - [Contribution Guide](CONTRIBUTING.md) |
| 47 | |
| 48 | |
| 49 | ### Features in the future |
| 50 | > These features were not planned in the beginning but could be added in the future. |
| 51 | |
| 52 | - [ ] Prompt Compression, to reduce the cost of token usage but still maintain the quality of prompts |
| 53 | - [ ] SaaS version of Prompt Smith. |
| 54 | - [ ] Trace of prompt usage. |
| 55 | - [ ] Webhook support. |
| 56 | - [ ] Prompt Management through CLI. |
| 57 | - [ ] Integration with analytics tools, such as Google Analytics, Mixpanel, etc. |
| 58 | |
| 59 | |
| 60 | > Please feel free to open an issue or PR for any feature requests or bug reports. |