promptfile
A Markdown-like syntax for writing prompts. Includes an in-editor playground.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.5%) to scientific vocabulary
Repository
A Markdown-like syntax for writing prompts. Includes an in-editor playground.
Basic Info
- Host: GitHub
- Owner: promptfile
- License: mit
- Language: TypeScript
- Default Branch: main
- Homepage: https://promptfile.org
- Size: 12.5 MB
Statistics
- Stars: 127
- Watchers: 3
- Forks: 6
- Open Issues: 0
- Releases: 37
Metadata Files
README.md
Promptfile (.prompt)
ALERT: PROMPTFILE IS IN ALPHA AND IS SUBJECT TO CHANGE.
Promptfile is a Markdown-like templating syntax and playground designed to write and iterate on prompts easier and faster. Promptfile is entirely open-source and free-to-use.
Build and prototype your prompts where you and your projects live: VS Code.
The simple, human-readable syntax of a .prompt file makes it easy to understand and debug. To test your prompt, execute a single command and view the results of your request in the VS Code Playground.
Once your prompt is ready, call a function to load in your prompt in the language of your choice, a seamless and unobtrusive integration of Promptfile into your project.
- Read our documentation at promptfile.org
- Check out some examples in our examples repository.
- Download the VS Code extension to quickly run and iterate on a Promptfile.
- If you have any feature requests or bug repots, please file an issue
- If you are interested in contributing, would love to have you contribute. Feel free to read more about how to contribute.
Although we are an extremely early stage project, here are some of our current wishlist items for the project:
Language Wishlist
- [ ] Adding Monaco support for
.promptfiles #200 - [ ] Better diagnostics and error handling (for example #248)
- [ ] Supporting more models, especially open source models
- [ ] Supporting other languages that
.prompttranspiles into
Playground Wishlist
- [ ] Making the Playground more synchronous with your
.promptfile - [ ] Improving visualizing version control of your prompts
- [ ] Allow customizing the UI of the Playground
Project Wishlist
- [ ] Supporting code execution for a function from localhost
- [ ] More robust examples and complex use cases
- [ ] Supporting people trying LLMs for the first time and open-source contributors
Apps and Packages
This project uses npm workspaces and Turborepo.
apps/
vscode-glass: VS Code extension for Promptfilepromptfile.org: a Next.js/Nextra app serving promptfile.orgdemo: examples of using Promptfile
packages/
glasslib:.promptclient library, including CLIlanguage-server: LSP server providing Promptfile intellisenserig: a React app for the VS Code Promptfile playground webviewui: a React component library shared by web applicationsutil: random utilities shared by packages/appseslint-config-custom:eslintconfigurations (includeseslint-config-nextandeslint-config-prettier)tsconfig:tsconfig.jsons used throughout the monorepo
Development
bash
npm ci
npm run build
Usually you'll want to launch the VS Code extension in development mode. Use the Run Extension launch configuration (F5 keybinding). This will automatically run the build step if necessary.
Tests
To run all tests:
bash
npm run test
Watch mode
Several packages contain tests that can be run in watch mode: packages/glasslib, packages/util
bash
cd $package
npm run test:watch
License
MIT © Promptfile
Owner
- Name: promptfile
- Login: promptfile
- Kind: organization
- Repositories: 1
- Profile: https://github.com/promptfile
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: Promptfile
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Johnathan
family-names: Rothfels
email: john@promptfile.org
- given-names: Elliott
family-names: Burris
email: elliott@promptfile.org
identifiers:
- type: url
value: 'https://github.com/promptfile/promptfile'
repository-code: 'https://github.com/promptfile/promptfile'
url: 'https://www.promptfile.org'
keywords:
- LLM
- Generative AI
- DSL
license: MIT
commit: ee48980
version: v0.15.4
date-released: '2023-06-23'
GitHub Events
Total
- Issues event: 6
- Watch event: 21
Last Year
- Issues event: 6
- Watch event: 21
Dependencies
- actions/checkout v3 composite
- actions/setup-node v3 composite
- actions/checkout v3 composite
- actions/setup-node v3 composite
- softprops/action-gh-release v1 composite
- actions/checkout v3 composite
- actions/setup-node v3 composite
- changesets/action v1 composite
- @types/glob ^8.1.0 development
- @types/mocha ^10.0.1 development
- @types/node 16.x development
- @types/vscode ^1.78.0 development
- @vscode/test-electron ^2.3.0 development
- @vscode/vsce ^2.19.0 development
- eslint-config-custom * development
- glob ^8.1.0 development
- mocha ^10.2.0 development
- typescript ^5.0.4 development
- @glass-lang/glassc *
- @glass-lang/language-server *
- @glass-lang/rig *
- esbuild ^0.17.18
- node-fetch ^3.3.1
- vscode-languageclient ^8.1.0
- 870 dependencies
- @changesets/changelog-github ^0.4.8 development
- @changesets/cli ^2.26.1 development
- eslint ^7.32.0 development
- eslint-config-custom * development
- prettier ^2.5.1 development
- turbo ^1.9.3 development
- @typescript-eslint/eslint-plugin ^5.59.5
- eslint-config-next ^13.4.1
- eslint-config-prettier ^8.3.0
- eslint-config-turbo ^1.9.3
- eslint-plugin-react 7.28.0
- @types/chai ^4.3.5 development
- @types/mocha ^10.0.1 development
- chai ^4.3.7 development
- eslint-config-custom * development
- mocha ^10.2.0 development
- ts-node ^10.9.1 development
- tslib ^2.5.0 development
- tsup ^6.7.0 development
- typescript ^5.0.4 development
- @glass-lang/util *
- node-fetch ^2.6.11
- esbuild ^0.17.18 development
- eslint-config-custom * development
- @glass-lang/glassc *
- vscode-languageserver ^8.1.0
- vscode-languageserver-textdocument ^1.0.8
- @types/vscode-webview ^1.57.1 development
- esbuild ^0.17.18 development
- eslint-config-custom * development
- @vscode/webview-ui-toolkit ^1.2.2
- react ^18.2.0
- react-dom ^18.2.0
- @types/chai ^4.3.5 development
- @types/mocha ^10.0.1 development
- chai ^4.3.7 development
- eslint-config-custom * development
- mocha ^10.2.0 development
- ts-node ^10.9.1 development
- tslib ^2.5.0 development
- tsup ^6.7.0 development
- typescript ^5.0.4 development
- @types/node 18.11.10 development
- @types/react-inlinesvg ^1.0.0 development
- typescript ^4.9.3 development
- next ^13.0.6
- nextra latest
- nextra-theme-docs latest
- react ^18.2.0
- react-dom ^18.2.0
- react-inlinesvg ^3.0.2
- shiki ^0.14.2