Skip to content

A template for LLM development integrating AI tools, TypeScript, Zod validation, and development utilities like Vitest and Rslib.

License

Notifications You must be signed in to change notification settings

Trapar-waves/llm-template

Repository files navigation

@trapar-waves/llm-template

npm version npm dm License GitHub last commit GitHub Actions Workflow Status Renovate


中文 | 日本語 | Русский язык

A production-ready template for LLM (Large Language Model) application development, integrating AI tools, TypeScript type safety, Zod validation, and modern dev utilities.

✨ Features

  • Type Safety: Leverages TypeScript to improve code quality and reduce runtime errors.
  • Fast Development Workflow: Utilizes Vite for quick server starts and hot module replacement.
  • Optimized Builds: Employs Rslib for efficient library bundling and optimized production outputs.
  • AI Integration: Pre-configured with @ai-sdk/openai and ai for seamless interaction with large language models.
  • Robust Validation: Utilizes Zod for runtime schema validation, ensuring data integrity.
  • Focus on Testing: Includes Vitest for fast and reliable unit testing.
  • Code Consistency: Enforces code style and quality using Prettier and Antfu's ESLint configuration.
  • Environment Management: Uses dotenv for secure configuration of API keys and environment-specific settings.
  • Cross-Platform Paths: Employs pathe for consistent file path handling across different operating systems.

💻 Tech Stack

Key technologies used in this project include:

  • Language: TypeScript
  • LLM Framework: AI SDK (@ai-sdk/openai, ai)
  • Validation: Zod
  • Testing Framework: Vitest
  • Build Tool: Rslib
  • Development Server: Vite
  • Code Quality: ESLint (Antfu's config), Prettier
  • Utilities: Dotenv, Pathe

See the package.json for a full list of dependencies.

🚀 Getting Started

Follow these instructions to get the project running locally.

Prerequisites

Ensure you have the following installed:

  • Node.js (>= 18.x recommended)
  • Package manager (npm, yarn, or pnpm)
node -v
npm -v

Installation

Run script

pnpm create trapar-waves

Install dependencies

npm install
yarn install
pnpm install

Available Scripts

Common scripts available via npm run <script>, yarn <script>, or pnpm <script>:

  • build: Creates a production-ready build using Rslib.
  • build:watch: Creates a production-ready build using Rslib in watch mode.
  • lint: Checks the code for style and errors using ESLint.

Example:

# Create production build
npm run build

🛠️ Usage

This template provides a foundational structure for building LLM applications. It includes:

  • A basic project structure with src/ directory.
  • Integration with OpenAI API through @ai-sdk/openai.
  • Example usage of ai and zod for generating structured output.
  • Configuration for building and testing with Rslib and Vitest.

Developers can extend this template by adding their own prompts, models, and application logic within the src/ directory.

🤝 Contributing

Contributions are welcome and greatly appreciated! Please follow these steps to contribute:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

Distributed under the MIT License. See LICENSE file for more information.

👤 Author

🔗 Links

About

A template for LLM development integrating AI tools, TypeScript, Zod validation, and development utilities like Vitest and Rslib.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •