Whirl Ni Nini?
Whirl ni programu huria ya mazungumzo ya AI yenye sehemu zote, iliyoundwa kwa kutumia Next.js na Convex. Ndiyo msimbo unaotumika kwenye whirl.chat na inapatikana chini ya leseni ya MIT, hivyo unaweza kuukagua, kuendesha mfano wako mwenyewe, au kuchangia maboresho.
Mradi huu unaleta pamoja miundo mingi ya AI, kumbukumbu endelevu, vizalia vinavyoweza kuhaririwa, utafiti wa wavuti, zana maalum, na mazungumzo yanayolenga faragha katika kiolesura kimoja. Miundo hupitishwa kupitia OpenRouter, huku Convex ikitoa hifadhidata, vitendaji vya nyuma, utiririshaji, na kazi zilizopangwa.
Vipengele Muhimu
- Miundo mingi inayoongoza: Tumia miundo bora ya AI katika mazungumzo moja na urekebishe viwango vyake vya kufikiri.
- Vizalia hai: Unda hati, chati, na kurasa shirikishi zinazoendelea kuhaririwa kwenye paneli ya pembeni na zinaweza kushirikiwa kwa kiungo.
- Zana na ujuzi: Unganisha zana za nje kupitia MCP, ikiwemo miunganisho inayotumia OAuth, na usakinishe ujuzi unaopanua tabia ya Whirl.
- Kumbukumbu ya muda mrefu: Hifadhi mapendeleo na muktadha wa miradi katika mazungumzo mbalimbali.
- Maelezo ya sasa ya wavuti: Tafuta kwenye wavuti na usome kurasa ili kutoa majibu yanayotegemea vyanzo vya hivi karibuni.
- Mazungumzo ya faragha: Mazungumzo yaliyofungwa husimbwa kwenye kifaa cha mtumiaji kwa nenosiri ambalo seva haipokei kamwe. Hutumia miundo isiyohifadhi data kabisa pekee.
- Vipengele vya tija: Whirl inajumuisha hali fiche, kupanga ujumbe kwenye foleni, uingizaji wa sauti, uundaji wa picha, viambatisho vya faili, folda, na kushiriki.
- Kiolesura kinachoweza kubinafsishwa: Chagua hali nyepesi au nyeusi, weka rangi za lafudhi, na usakinishe Whirl kama programu ya wavuti kwenye simu.
Mkusanyiko wa Teknolojia
Programu ya wavuti ya uzalishaji hutumia Next.js 16, React 19, Tailwind CSS v4, na Motion. Convex hutoa sehemu ya nyuma, Clerk hushughulikia uthibitishaji, na OpenRouter hutoa ufikiaji wa miundo kupitia AI SDK. Hazina imepangwa kama maeneo ya kazi ya Bun na imeandikwa kwa TypeScript.
Convex, Clerk, na OpenRouter pekee ndizo zinazohitajika kwa usanidi wa msingi. Huduma nyingine ni za hiari:
- Autumn kwa malipo
- Exa kwa utafutaji wa wavuti
- Supermemory kwa kumbukumbu
- PostHog na Axiom kwa uchanganuzi
- Braintrust kwa ufuatiliaji
- Resend kwa barua pepe
- Median kwa wakala wa usaidizi
Ikiwa huduma ya hiari haijasanidiwa, Whirl huficha kipengele kinachoendeshwa na huduma hiyo badala ya kuhitaji huduma hiyo ili programu ifanye kazi.
Mahitaji ya Awali
Kabla ya kusakinisha Whirl, andaa yafuatayo:
- Bun ikiwa imesakinishwa kwenye kompyuta yako
- Akaunti ya bure ya Convex
- Programu ya Clerk
- Ufunguo wa API wa OpenRouter
- Git kwa ajili ya kunakili hazina
Hatua ya 1: Nakili na Usakinishe Whirl
Hifadhi hazina, ingia kwenye saraka yake, na usakinishe vitegemezi vyote vya maeneo ya kazi kwa kutumia Bun:
git clone https://github.com/whirlchat/whirl.git
cd whirl
bun install
Hatua ya 2: Unda Sehemu ya Nyuma ya Convex
Hamisha hadi kwenye kifurushi cha sehemu ya nyuma na uanzishe mchakato wa maendeleo wa Convex:
cd packages/backend
bunx convex dev
Mara ya kwanza inapoendeshwa, Convex itakuongoza kuunda mradi na upelekaji wa maendeleo. Acha mchakato huu ukiendelea ili mabadiliko ya sehemu ya nyuma yasawazishwe wakati wa maendeleo.
Hatua ya 3: Sanidi Siri za Sehemu ya Nyuma
Fungua kituo kingine ndani ya packages/backend. Ongeza kikoa cha mtoaji wa JWT wa Clerk na ufunguo wa API wa OpenRouter kwenye mazingira ya Convex:
bunx convex env set CLERK_JWT_ISSUER_DOMAIN https://your-instance.clerk.accounts.dev
bunx convex env set OPENROUTER_API_KEY sk-or-v1-...
Badilisha thamani za mfano kwa vitambulisho kutoka kwenye akaunti zako za Clerk na OpenRouter. Nyaraka za kina za kujipangia zinaeleza kiolezo cha JWT cha Clerk kinachohitajika na Convex.
Usihifadhi funguo za API au siri za uthibitishaji kwenye hazina. Hifadhi siri za sehemu ya nyuma kupitia amri za mazingira ya Convex na mipangilio ya wavuti ya ndani kwenye faili la mazingira linalofaa.
Hatua ya 4: Sanidi Programu ya Wavuti
Hamisha hadi kwenye programu ya wavuti ya uzalishaji na uunde faili la mazingira la ndani kutoka kwenye mfano uliotolewa:
cd ../../apps/v2
cp .env.example .env.local
Fungua .env.local na ujaze thamani nne zinazohitajika za Convex na Clerk. Tumia faili la mfano kama chanzo cha majina kamili ya vigezo badala ya kuunda majina mapya.
Hatua ya 5: Anzisha Mazingira ya Maendeleo
Rudi kwenye mzizi wa hazina na uanzishe amri ya maendeleo:
cd ../..
bun run dev
Huduma zikishaanza kufanya kazi, fungua localhost:3000. Ingia kupitia programu ya Clerk iliyosanidiwa na uanze mazungumzo.
Matumizi ya Msingi
Anza Mazungumzo
Ingiza ombi kwenye mtunzi wa mazungumzo na kulituma kwa muundo uliosanidiwa. Ombi rahisi la kwanza linaweza kuthibitisha kuwa programu ya wavuti, uthibitishaji, sehemu ya nyuma ya Convex, na muunganisho wa OpenRouter vinafanya kazi pamoja:
Explain the main components of this application in five concise points.
Fanya Kazi na Miundo
Whirl imeundwa kutoa ufikiaji wa miundo mingi inayoongoza kupitia OpenRouter ndani ya mazungumzo. Unaweza pia kutumia viwango vya kufikiri vinavyoweza kurekebishwa pale vinapoungwa mkono na programu na muundo uliochaguliwa.
Unda na Boresha Vitu vya Kazi
Muombe Whirl itengeneze hati, chati, au ukurasa wa mwingiliano. Vitu hivi vya kazi vinavyoendelea kubaki vinaweza kuhaririwa katika paneli ya pembeni na kushirikiwa kwa kiungo, hivyo vinafaa kwa matokeo yanayohitaji kuboreshwa kila mara badala ya jibu moja la mazungumzo.
Tumia Faili, Sauti, na Mpangilio
Whirl inasaidia viambatisho vya faili na uingizaji wa sauti pamoja na ujumbe unaoandikwa. Mazungumzo yanaweza kupangwa katika folda, huku vipengele vya kushiriki vikifanya kazi iliyochaguliwa ipatikane kwa wengine.
Kuelewa Hifadhi ya Msimbo
Monorepo ina programu kadhaa na backend inayoshirikiwa:
apps/v2: Programu ya wavuti ya Next.js ya uzalishaji inayotumiwa na Whirl.apps/console: Dashibodi ya usimamizi inayotumia Vite kwa miundo, miunganisho, na ujuzi.apps/mobile: Programu asilia iliyoundwa kwa Expo.apps/waitlist: Ukurasa huru wa orodha ya wanaosubiri.apps/remotion: Miundo ya video za matangazo.apps/legacy: Programu ya awali ya wavuti, iliyohifadhiwa kwa marejeo lakini haitunzwe tena.packages/backend: Skima ya Convex, vitendaji, na mchakato wa AI.docs: Miongozo ya kujipangia mwenyewe, usanidi, na usanifu.brand: Nembo, rangi, mabango, na ikoni za programu.
Kwa maendeleo ya sasa ya wavuti, lenga apps/v2 na packages/backend. Epuka kujenga kazi mpya kwenye apps/legacy, kwa sababu haitunzwe.
Vidokezo vya Juu
Ongeza Huduma za Hiari Hatua kwa Hatua
Anza na usanidi unaohitajika wa Convex, Clerk, na OpenRouter. Baada ya mtiririko mkuu wa mazungumzo kufanya kazi, ongeza watoa huduma wa hiari mmoja baada ya mwingine. Whirl huficha kiotomatiki utendaji ambao funguo zake zinazohitajika hazipo, jambo linalorahisisha kuendesha usakinishaji mdogo.
Rejelea mwongozo wa usanidi wa hifadhi kwa vigezo vya mazingira vinavyohusiana na malipo, utafutaji, kumbukumbu, takwimu, ufuatiliaji, barua pepe, na usaidizi.
Chagua Hali Inayofaa ya Faragha
Tumia hali fiche usipotaka mtiririko wa kawaida wa mazungumzo unaohifadhiwa. Kwa ulinzi mkali zaidi, mazungumzo yaliyofungwa husimbwa kwa njia fiche kwenye kifaa kwa kutumia nenosiri ambalo seva haioni kamwe, na hujibiwa tu na miundo isiyohifadhi data. Kumbuka kwamba kupoteza nenosiri linalohifadhiwa na mteja kunaweza kuathiri uwezo wako wa kufikia maudhui yaliyosimbwa.
Kagua Mchakato wa Ujumbe
Unapotatua matatizo ya utiririshaji, miito ya zana, au tabia ya modeli, soma mwongozo wa usanifu wa mradi. Unaeleza jinsi ujumbe unavyosafiri kutoka kwa mtunzi hadi kwenye modeli na kurudi. Utekelezaji unaohusika umegawanywa hasa kati ya programu ya wavuti ya uzalishaji na backend ya Convex.
Jiandae kwa Uzalishaji kwa Umakini
Mwanzo wa haraka huunda mazingira ya maendeleo. Kabla ya kupeleka hadharani, fuata mwongozo kamili wa kujipangia mwenyewe, ukiwemo maelekezo yake kuhusu kiolezo cha Clerk JWT na uwekaji wa uzalishaji.
Changia kwa Usalama
Kabla ya kufungua ombi la kuvuta, kagua mwongozo wa uchangiaji wa mradi kwa kanuni na ukaguzi. Fuata kanuni za maadili, na ripoti masuala ya usalama ukitumia mchakato ulio katika SECURITY.md badala ya suala la umma.
Hitimisho
Whirl inatoa mwanzo wenye vipengele vingi kwa nafasi ya mazungumzo ya AI inayojipangia mwenyewe, ikichanganya kiolesura cha Next.js na backend ya Convex, uthibitishaji wa Clerk, na ufikiaji wa miundo kupitia OpenRouter. Anza na huduma tatu zinazohitajika, thibitisha mazungumzo ya ndani kwenye localhost:3000, kisha wezesha utafutaji wa hiari, kumbukumbu, takwimu, malipo, na miunganisho mingine kulingana na mahitaji ya uwekaji wako.
