codegenai
v1.0.1
Published
Package that installs a code generating AI that writes to files.
Downloads
1
Readme
CodeGenAI
Author: John Schibelli
This repository contains a modular plugin for generating code using a locally hosted language model (LLM). The plugin can be integrated into a Next.js project to handle code generation based on user prompts.
Table of Contents
Getting Started
Prerequisites
- Node.js (v14 or higher)
- npm (v6 or higher) or yarn (v1.22 or higher)
- Next.js (v10 or higher)
- An instance of LLM Studio running locally
Setting Up LLM Studio
Ensure you have LLM Studio set up and running to serve your model locally. This plugin expects the LLM to be accessible at http://localhost:1234/v1
.
Installation
- Clone the repository:
git clone https://github.com/your-username/llm-generator-plugin.git
cd llm-generator-plugin
- Install dependencies:
npm install
or
yarn install
- Install UUID package:
npm install uuid
or
yarn add uuid
Usage
- Start the development server:
npm run dev
or
yarn dev
- Navigate to
/generate
page in your browser. - Enter your prompt in the textarea.
- Submit the form and check the status message for the file path.
- Check the
generated
directory in your project to see the new file created with a unique UUID in its name.
File Structure
/project-root
/plugins
/llm-generator
/api
generateCode.ts
/components
GeneratePage.tsx
/utils
llmClient.ts
/pages
/api
llm-generate.ts
generate.tsx
/generated
plugins/llm-generator/utils/llmClient.ts
This file contains the utility function to handle LLM API calls.
plugins/llm-generator/api/generateCode.ts
This file contains the API route to handle code generation requests.
plugins/llm-generator/components/GeneratePage.tsx
This file contains the React component to handle the input prompt and display results.
pages/api/llm-generate.ts
This file exposes the modular API endpoint.
pages/generate.tsx
This file exposes the modular generate page.
API Reference
Endpoint: /api/llm-generate
- Method: POST
- Description: Generates code based on the provided prompt and writes it to a file.
- Request Body:
prompt
(string): The prompt to generate code for.
- Response:
message
(string): Success message.filePath
(string): The path to the generated file.
Components
GeneratePage
A React component that provides a form to input a prompt and displays the result after submission.
Contributing
We welcome contributions to improve this plugin. To contribute, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes and commit them (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Open a Pull Request.
Running Tests
To run tests, use the following command:
npm run test
or
yarn test
License
This project is licensed under the MIT License - see the LICENSE file for details.