docodegenerator
v1.0.5
Published
Here’s the updated README with most of the content in Markdown format, but with the usage part simplified to code examples:
Readme
Here’s the updated README with most of the content in Markdown format, but with the usage part simplified to code examples:
# docodegenerator
## Code Documentation Generator
This project provides a utility function to generate documentation for code snippets using OpenAI's API.
## Key Features
- Generates structured documentation for given code snippets
- Supports both default and JSDoc formatting
- Customizable OpenAI model parameters
## Installation
1. Clone the repository.
2. Install dependencies:
```bash
npm install axios dotenv
```- Set up environment variables:
- Create a
.envfile in the root directory. - Add your OpenAI API key:
OPENAI_API_KEY=YOUR_API_KEY_HERE
- Create a
Usage
Generating Documentation
const { generateDocumentation } = require("docodegenerator");
const codeSnippet = `function add(a, b) { return a + b; }`;
generateDocumentation(codeSnippet)
.then((doc) => console.log(doc))
.catch((err) => console.error(err));Adding JSDoc to a File
const { addJSDocToFile } = require("docodegenerator");
const filePath = "./path/to/your/file.js";
addJSDocToFile(filePath)
.then(() => console.log("JSDoc added successfully"))
.catch((err) => console.error("Error adding JSDoc:", err));Function Parameters
| Parameter | Type | Description | Default |
| ------------- | ------ | ------------------------------------------- | ---------- |
| code | string | The code snippet to document | (required) |
| model | string | OpenAI model to use | 'gpt-4' |
| maxTokens | number | Maximum tokens to generate | 150 |
| temperature | number | Sampling temperature | 0.5 |
| format | string | Documentation format ('default' or 'jsdoc') | 'default' |
| filePath | string | Path to the file to modify | (required) |
Return Value
- Returns a Promise resolving to a string containing the generated documentation
Error Handling
- Throws an error if the API request fails or if file operations encounter issues. Handle errors appropriately in your application.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Contributing
Contributions are welcome! Please open an issue or submit a pull request for improvements or bug fixes.
This version keeps the usage examples concise and in code blocks, while the rest of the content remains well-structured in Markdown.