Cover image
Try Now
2025-04-05

3 years

Works with Finder

1

Github Watches

0

Github Forks

0

Github Stars

Cloudflare AI

This repository contains various packages and demo apps related consuming Cloudflare's AI offerings on the client-side. It is a monorepo powered by Nx and Changesets.

Packages

Local Development

  1. Clone the repository.

    git clone git@github.com:cloudflare/ai.git
    
  2. Install Dependencies.

    From the root directory, run:

    cd ai
    npm install
    
  3. Develop.

    To start a development server for a specific app (for instance, tool-calling):

    npx nx dev tool-calling
    

    Ideally all commands should be executed from the repository root with the npx nx prefix. This will ensure that the dependency graph is managed correctly, e.g. if one package relies on the output of an other.

  4. Testing and Linting.

  • To execute your continuous integration tests for a specific project (e.g., workers-ai-provider):

    npx nx test:ci workers-ai-provider
    
  • To lint a specific project:

    npx nx lint my-project
    
  • To run a more comprehensive sweep of tasks (lint, tests, type checks, build) against one or more projects:

    npx nx run-many -t lint test:ci type-check build -p "my-project other-project"
    
  1. Other Nx Tasks.
  • build: Compiles a project or a set of projects.
  • test: Runs project tests in watch mode.
  • test:ci: Runs tests in CI mode (no watch).
  • test:smoke: Runs smoke tests.
  • type-check: Performs TypeScript type checks.

Creating a New Demo App

In order to scaffold a new demo app, you can use the create-demo script. This script will create a new demo app in the demos directory.

npm run create-demo <demo-name>

After creating the app, npm install will be run to install the dependencies, and npx nx cf-typegen <demo-name> will be run to generate the types for the demo app. Then it's simply a case of starting the app with:

npx nx dev <demo-name>

Contributing

We appreciate contributions and encourage pull requests. Please follow these guidelines:

  1. Project Setup: After forking or cloning, install dependencies with npm install.
  2. Branching: Create a new branch for your feature or fix.
  3. Making Changes:
  • Add or update relevant tests.
  • On pushing your changes, automated tasks will be run (courtesy of a Husky pre-push hook).
  1. Changesets: If your changes affect a published package, run npx changeset to create a changeset. Provide a concise summary of your changes in the changeset prompt.
  2. Pull Request: Submit a pull request to the main branch. The team will review it and merge if everything is in order.

Release Process

This repository uses Changesets to manage versioning and publication:

  1. Changeset Creation: Whenever a change is made that warrants a new release (e.g., bug fixes, new features), run:

    npx changeset
    

    Provide a clear description of the changes.

  2. Merging: Once the changeset is merged into main, our GitHub Actions workflows will:

  • Detect the changed packages, and create a Version Packages PR.
  • Increment versions automatically (via Changesets).
  • Publish any package that has a version number to npm. (Demos and other internal items do not require versioning.)
  1. Publication: The release workflow (.github/workflows/release.yml) will run on every push to main. It ensures each published package is tagged and released on npm. Any package with a version field in its package.json will be included in this process.

For any queries or guidance, kindly open an issue or submit a pull request. We hope this structure and process help you to contribute effectively.

相关推荐

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • https://zenepic.net
  • Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • 林乔安妮
  • A fashion stylist GPT offering outfit suggestions for various scenarios.

  • 田中 楓太
  • A virtual science instructor for engaging and informative lessons.

  • 1Panel-dev
  • 💬 MaxKB is a ready-to-use AI chatbot that integrates Retrieval-Augmented Generation (RAG) pipelines, supports robust workflows, and provides advanced MCP tool-use capabilities.

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • open-webui
  • User-friendly AI Interface (Supports Ollama, OpenAI API, ...)

  • gergelyszerovay
  • A preconfigured development container setup for AI-assisted development with Claude, based on VS Code Dev Containers with integrated Model Context Protocol (MCP) server for file system and shell operations.

  • GLips
  • MCP server to provide Figma layout information to AI coding agents like Cursor

  • adafruit
  • Python code to use the MCP3008 analog to digital converter with a Raspberry Pi or BeagleBone black.

    Reviews

    4 (1)
    Avatar
    user_3w2ouXlP
    2025-04-17

    As a dedicated user of cloiudflare_mcp_server, I am thoroughly impressed by its performance and reliability. Developed by alvinmrrry, this server solution seamlessly integrates with my existing infrastructure, providing robust security and efficient management of my applications. The user-friendly interface and comprehensive documentation make setup a breeze. Highly recommend this for anyone looking to enhance their server capabilities!