caddy-json-types
v1.0.3-alpha.0
Published
TypeScript typings for Caddy JSON configuration. This package provides comprehensive TypeScript definitions for Caddy's JSON configuration format, enabling type safety and enhanced developer experience when working with Caddy's configuration files in Type
Downloads
16
Maintainers
Readme
caddy-json-types
TypeScript typings for Caddy JSON configuration. This package provides comprehensive TypeScript definitions for Caddy's JSON configuration format, enabling type safety and enhanced developer experience when working with Caddy's configuration files in TypeScript projects.
Features
- Type Safety: Ensure your Caddy JSON configurations are type-checked for errors.
- Enhanced Developer Experience: Get autocompletion and inline documentation in your editor.
- Comprehensive Documentation: Includes full original documentation as comments for each type and field.
Installation
You can install the package via npm:
npm install caddy-json-types
Or with yarn:
yarn add caddy-json-types
Usage
To use the typings in your TypeScript project, import the package in your TypeScript files:
import type { IConfig } from 'caddy-json-types';
// Example usage
const config: IConfig = {
// your Caddy JSON configuration here
};
Example
Here's an example of how you can use the typings with a Caddy JSON configuration:
import type { IConfig } from 'caddy-json-types';
const config: IConfig = {
apps: {
http: {
servers: {
myserver: {
listen: [\":443\"],
routes: [
{
match: [
{
host: [\"example.com\"]
}
],
handle: [
{
handler: \"static_response\",
body: \"Hello, world!\"
}
]
}
]
}
}
}
}
};
// Use the config object as needed
console.log(config);
Contributing
Contributions are welcome! Please open an issue or submit a pull request if you have any improvements or fixes.
- Fork the repository
- Create a new branch (
git checkout -b my-feature-branch
) - Make your changes
- Commit your changes (
git commit -am 'Add new feature'
) - Push to the branch (
git push origin my-feature-branch
) - Create a new Pull Request
License
This project is licensed under the MIT License. See the LICENSE file for details.
Acknowledgements
This project is not affiliated with or endorsed by the Caddy project. It is an independent project created to improve the developer experience when working with Caddy JSON configurations in TypeScript.
For more information on Caddy and its configuration options, please visit the official Caddy documentation.