- - Cof ramuan F Ront- E nd E ngineer
Bangun dan beralih di UI 10X Anda lebih cepat dengan AI - langsung dari IDE Anda sendiri!
Coffee Caffeinates Workflow Pengembangan Frontend Anda dengan AI. Proyek ini dimaksudkan untuk menjadi lebih dari sekadar demo yang bagus, tetapi lebih merupakan alat ergonomis yang dapat menulis dan berinteraksi dengan kode berkualitas produksi.
Tidak ada dependensi, tidak ada pengaturan.
Hanya Webapp React Anda secara normal, dan kemudian buka cangkang lain di direktori yang sama dan jalankan:
docker run --pull=always -it -e OPENAI_API_KEY= ${OPENAI_API_KEY} -v $( pwd ) :/mount coframe/coffee:latestAnda juga dapat membangun gambar sendiri dari Direktori /React:
./dev.sh build
OPENAI_API_KEY=your_api_key ./dev.sh ../path/to/any/frontend/repo/on/machineAnda dapat mengawasi terminal yang menjalankan wadah Docker untuk melihat kopi apa yang sedang terjadi. Sangat menyenangkan melihat kode yang dihasilkan!
Kopi menggunakan Docker untuk memastikan bahwa kode agen yang dijalankan sepenuhnya terisolasi. Kopi saat ini diimplementasikan dalam Python (tetapi Anda tidak perlu menyentuh Python untuk menggunakan kopi), dan agen generasi kode relatif sederhana.
Saat Anda menjalankan kopi, itu akan mendengarkan perubahan pada file js/jsx/ts/tsx di direktori sumber Anda, dan jika mendeteksi komponen <Coffee> JSX, itu akan memulai keajaibannya!
< Coffee parameter = { parameter } >
Here is where you put your prompt that Coffee will use to generate the first
version of your desired component. This is the same type of prompt that you'd
use with any LLM like ChatGPT, so feel free to get creative and apply your
favorite prompt engineering tricks. Finally, you can also pass in any
parameters you want from your parent component by simply adding them as
demonstrated above.
< / Coffee > Setiap kali Anda menyimpan file sumber Anda, kopi akan melihat apakah ada komponen <Coffee> yang perlu diseduh (jika mereka baru atau apakah alat peraga atau prompt mereka telah diperbarui). Untuk setiap komponen <Coffee> yang ditemukan agen, kopi akan melewati kode komponen induk Anda, kode komponen anak yang ada, prompt Anda, dan konfigurasi khusus ke OpenAI CHAT CHARTIONS API untuk menghasilkan versi baru dari komponen target.
Aplikasi Anda dapat menampilkan kesalahan segera setelah menyimpannya pertama kali karena komponen kopi belum ditulis oleh agen kopi. Ini normal dan akan hilang setelah agen kopi punya waktu untuk menyeduh komponen.
Iterasi pada komponen setelah diseduh sama mudahnya:
< Coffee parameter = { parameter } >
To edit and update the brewed component, all you need to do is replace the
prompt with your desired changes. For instance, "make the button background
darker".
< / Coffee >Proses pembuatan bir saat ini agak lambat, tetapi kami sedang mengerjakan beberapa cara untuk membuatnya secara signifikan lebih cepat.
Akhirnya, setelah Anda senang dengan komponen yang diseduh, Anda dapat menambahkan prop pour="ComponentName.tsx" ke komponen <Coffee> Anda dan menyimpan file, yang secara otomatis akan menggantikan komponen <Coffee> dengan komponen yang dihasilkan.
export function Example ( ) {
return (
< Coffee
title = "Click Me"
onClick = { ( ) => console . log ( "clicked" ) }
pour = "MyButton.tsx"
>
Whatever you prompted Coffee to generate
< / Coffee >
) ;
} Dalam contoh ini, kami menambahkan prop pour khusus. Saat Anda menyimpan file ini, kopi akan menggantikan kode ini dengan yang berikut:
import MyButton from "./MyButton" ;
export function Example ( ) {
return < MyButton title = "Click Me" onClick = { ( ) => console . log ( "clicked" ) } / > ;
}Sekarang Anda memiliki komponen reaksi yang berfungsi penuh dan dapat digunakan kembali yang siap digunakan dalam produksi.
Namun, bagian paling keren dari kopi adalah Anda dapat mengedit komponen reaksi yang ada semudah membuat komponen baru dari awal.
Katakanlah Anda ingin mengedit komponen MyButton (atau lainnya). Yang perlu Anda lakukan adalah menambahkan coffee="description of change to make" prop:
export function Example ( ) {
return (
< MyButton
title = "Click Me"
onClick = { ( ) => console . log ( "clicked" ) }
coffee = "make the button color blue"
/ >
) ;
}Setelah Anda menyimpan file ini, kopi akan mendeteksi komponen "berkafein" ini dan memperbarui untuk Anda setelah ada waktu untuk berpikir dan menghasilkannya.
Anda dapat tetap berulang seperti ini selamanya - Anda tidak akan pernah kehabisan kopi! ? Setelah Anda puas, lepaskan saja penyangga coffee dan Anda siap melakukannya.
prettier pada kode yang dihasilkan coffee.config.json config Bergabunglah dengan kami di Discord for Support, untuk memamerkan apa yang Anda buat, dan getaran yang baik secara umum.
Ikuti kami di Twitter untuk rilis fitur baru, pembaruan produk, dan berita menarik lainnya!
Jika Anda ingin menjadi kontributor, cukup kirimkan permintaan tarik!
⚡ Kami juga mempekerjakan insinyur generalis dan insinyur AI yang bersemangat tentang masa depan UX/AI. Kopi hanyalah salah satu dari banyak hal menarik yang kami buat. Jika Anda ingin membangun masa depan ini bersama kami, silakan tembak kami DM di Twitter!
cd react
pip3 install -r dev_requirements.txt
pytestApache 2.0 © COFRAME