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.1.tar.gz (9.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.1-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: flicky-1.0.1.tar.gz
  • Upload date:
  • Size: 9.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.1.tar.gz
Algorithm Hash digest
SHA256 d74720d2f20a725eb2a5d8186b1248604e06a6680642c8ffddf75df32a0f79cb
MD5 5520e29037a23be3b1ab822433f2dbc6
BLAKE2b-256 ca0c8bee6e22eec3d64bedfbe60227f59bc33027ae38bfad9e589ae8396c7329

See more details on using hashes here.

File details

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

File metadata

  • Download URL: flicky-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 9.7 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 48822c529573cd6c67ed06b07bd8076fe15e299847c20c67634eb38e6aff4ac7
MD5 6d7624417cc8db31cd1d6bf8b84194e3
BLAKE2b-256 e5337b73819b0533f8d19383bd3f610db0dafafebb7492e0f7e864736d4ba772

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