Skip to main content

A zero-boilerplate framework for building interactive ChatGPT widgets

Project description

Flick

A zero-boilerplate framework for building interactive ChatGPT widgets.

Features

  • 🚀 Zero Configuration - Just create your widget and tool, everything else is automated
  • 🔄 Auto-Discovery - Tools are automatically detected and registered
  • 📦 Auto-Build - Mounting logic injected at build time
  • ⚡ Hot Reload - Changes detected and rebuilt automatically
  • 🎨 React + Vite - Modern frontend development experience

Installation

pip install flick

Quick Start

from flick import BaseWidget
from pydantic import BaseModel, ConfigDict
from typing import Dict, Any

class MyWidgetInput(BaseModel):
    model_config = ConfigDict(populate_by_name=True)

class MyWidgetTool(BaseWidget):
    identifier = "my_widget"
    title = "My Widget"
    input_schema = MyWidgetInput
    
    async def execute(self, input_data: MyWidgetInput) -> Dict[str, Any]:
        return {"message": "Hello from Flick!"}

Create your React component in widgets/my_widget/index.jsx:

import React from 'react';
import { useWidgetProps } from 'flick-react';

export default function MyWidget() {
  const { message } = useWidgetProps();
  return <h1>{message}</h1>;
}

That's it! No boilerplate files needed.

Documentation

Visit flick.dev/docs for full documentation.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flicky-1.0.2.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flicky-1.0.2-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file flicky-1.0.2.tar.gz.

File metadata

  • Download URL: flicky-1.0.2.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for flicky-1.0.2.tar.gz
Algorithm Hash digest
SHA256 6883329b164bde464caa0af5d5e6ae6f954b1f7c42f5fd5210ef58299e005077
MD5 65326da8c971647ce683c37be59b8780
BLAKE2b-256 3c9ad08e8ff926749770b86d429453c38b5e1f797ba9f6bc002c264afd064a0b

See more details on using hashes here.

File details

Details for the file flicky-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: flicky-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for flicky-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4efca6026473521199380172271baa0f069ba5d35604ff271d8cb18f9d61706d
MD5 122ad8c273e6832640c29fe2ed171cdf
BLAKE2b-256 296026146ca23001a160a9d09e34c1930ec68d68e4030260330c0e740b5b37b5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page