दस्तावेज़
पैकेज और अनुप्रयोग
कार्यस्थल के नाम, सार्वजनिक प्रवेश बिंदु, उपभोक्ता और कार्यान्वयन जिम्मेदारियाँ।
अंग्रेज़ी से स्वचालित रूप से अनुवादित। अंग्रेज़ी मूल देखें
डोमेन लाइब्रेरी
@cadcamfun/core
packages/core/src/index.ts फ्लैट और अंडर दोनों तरह से सीएडी प्रतीकों का निर्यात करता है cad, सीएएम के अंतर्गत cam, और ड्राइंग फ़ंक्शन के अंतर्गत drawing. इसमें रेखाचित्र, ठोस मॉडलिंग, टेस्सेलेशन, ड्राइंग एक्सचेंज, मशीनिंग संचालन, पोस्ट-प्रोसेसर, जी-कोड विश्लेषण और सत्यापन शामिल हैं। डेस्कटॉप इंटरैक्टिव संचालन के लिए सीधे इस पैकेज का उपभोग करता है; साइडकार इसे HTTP और सहायक एडाप्टर के पीछे उपयोग करता है।
@cadcamfun/vcs
packages/vcs/src/index.ts प्रोजेक्ट स्नैपशॉट, ऑब्जेक्ट, संदर्भ, अंतर, मर्ज और GitHub ट्रांसपोर्ट फ़ंक्शंस को उजागर करता है। इसमें कोई रनटाइम पैकेज निर्भरता नहीं है। भंडारण और अभिनय-उपयोगकर्ता रिज़ॉल्यूशन साइडकार के वीसीएस भंडार और सेवाओं से संबंधित हैं।
@cadcamfun/workflow
packages/workflow/src/index.ts वर्कफ़्लो स्कीमा, पार्सिंग, ट्रिगर मिलान और निष्पादन निर्यात करता है। यह प्रभाव पर निर्भर करता है. साइडकार सूचनाओं, परियोजना इतिहास, या एआई पहुंच की आवश्यकता वाले चरणों को पंजीकृत करता है; वर्कफ़्लो चरण नाम केवल तभी प्रयोग योग्य होता है जब इसका कार्यान्वयन रनर में पंजीकृत होता है।
अनुबंध, भंडारण, और एआई
@cadcamfun/api
मूल प्रविष्टि packages/api/src/index.ts httpApi समूह और साझा स्कीमा बनाता है। @cadcamfun/api/sdk export points to the generated Promise SDK. The source tree also contains Effect clients and the full contract-based ApiClient. एपीआई उपभोक्ताओं को उस क्लाइंट सतह का चयन करना चाहिए जो उनके लिए आवश्यक समापन बिंदु का प्रतिनिधित्व करती है।
@cadcamfun/db
रूट निर्यात प्रभाव प्रदान करता है Database सेवा और एक स्कीमा नेमस्पेस। @cadcamfun/db/schema ड्रिज़ल तालिकाओं को उजागर करता है। SQLite एक्सेस, माइग्रेशन, बैकअप प्लानिंग और स्कीमा स्वामित्व यहां रहते हैं। अधिकांश एप्लिकेशन क्वेरीज़ सेवा के माध्यम से साइडकार रिपॉजिटरी से चलती हैं; स्थानीय वेब स्टूडियो अपनी स्वतंत्र Bun प्रक्रिया के लिए टेबल स्कीमा आयात करता है।
@cadcamfun/ai
packages/ai/src/index.ts प्रदाता सेवाओं, एम्बेडेड निक्ली एकीकरण, एक्शन कैटलॉग, एप्लिकेशन टूल, संकेत और कौशल को उजागर करता है। साइडकार लाइव प्रोजेक्ट, ज्यामिति, मशीनिंग, फ़ाइल, इतिहास और वर्कफ़्लो एडेप्टर की आपूर्ति करता है। पैकेज एपीआई और कोर पर निर्भर करता है, पिन किए गए निक्ली और एआई एसडीके संस्करणों के साथ।
विस्तार पैकेज
@cadcamfun/plugin-sdk
एसडीके src/index.ts सार्वजनिक एप्लिकेशन प्लगइन प्रवेश बिंदु है। यह प्रकट और क्षमता अनुबंध और प्लगइन संलेखन सहायकों को परिभाषित करता है। रनटाइम होस्ट रहता है apps/sidecar/src/plugins; sDK स्वयं होस्ट प्रक्रिया नहीं है.
@cadcamfunv2/cadcamfun-nikcli-plugin
packages/nikcli-plugin/src/index.ts स्टैंडअलोन निकल्ली ब्रिज का निर्यात करता है। अधिकांश कार्यस्थानों के विपरीत, इसे वर्तमान संस्करण में सार्वजनिक एनपीएम प्रकाशन के लिए कॉन्फ़िगर किया गया है 0.1.0. यह चल रहे CADCAMFUN एप्लिकेशन से क्रियाओं का पता लगाता है और उन्हें प्रमाणित HTTP पर आमंत्रित करता है। यह CAD कर्नेल या एक स्वतंत्र एक्शन कैटलॉग को एम्बेड नहीं करता है।
@cadcamfun/plugin-sdk प्लगइन एपीआई प्रमुख संस्करण लागू करता है 1. प्लगइन पहचानकर्ता रिवर्स-डीएनएस नाम जैसे कि 3-128 वर्ण हैं com.example.gear-generator, और संस्करण अनुसरण करते हैं major.minor.patch एक वैकल्पिक प्री-रिलीज़ प्रत्यय के साथ (packages/plugin-sdk/src/manifest.ts).
HTTP क्लाइंट जनरेटर
@cadcamfun/httpapi-codegen अपने कंपाइलर और एमिटर को निर्यात करता है packages/httpapi-codegen/src/index.ts. compile एक अनुबंध मॉडल में एक प्रभाव HttpApi को दर्शाता है। emitPromise प्रॉमिस एसडीके बनाता है; emitEffect और emitEffectImported प्रभाव आउटपुट का समर्थन करें। आयातित संस्करण मौजूदा अनुबंध स्कीमा का संदर्भ देता है।
अन्य निर्यातों में संगतता उत्सर्जक, परिवहन त्रुटि मानचित्रण, write, और generate. असमर्थित अनुबंध आकृतियाँ बढ़ती हैं GenerationError. एप्लिकेशन जनरेशन स्क्रिप्ट साझा और केवल-वादा सीमाओं के लिए स्पष्ट रूप से एंडपॉइंट बहिष्करण रिकॉर्ड करती है।
packages/api/scripts/generate-clients.ts लिखते हैं src/sdk/generated और src/client/generated. इसका ड्रिफ्ट चेक एक अस्थायी निर्देशिका में उत्पन्न होता है और प्रतिबद्ध आउटपुट के साथ फ़ाइल नाम और सामग्री की तुलना करता है।
bun run generate
bun run generate:check उत्पन्न आउटपुट रहता है packages/api/src/client/generated और packages/api/src/sdk/generated. दौड़ना bun run generate अनुबंध बदलने के बाद, और bun run generate:check यह पुष्टि करने के लिए कि प्रतिबद्ध आउटपुट चालू है।
अनुप्रयोग कार्यस्थान
@cadcamfun/sidecar—apps/sidecarsrc/main.tsनिष्पादन योग्य सर्वर प्रविष्टि है;src/layers.tsतार सेवाएँ और सेवा समूह। पैकेज स्टार्ट स्क्रिप्ट Bun को सीधे चलाती है। मूल साइडकार में संकलन रूट बिल्ड स्क्रिप्ट द्वारा प्रबंधित किया जाता है।@cadcamfun/desktop—apps/desktop- सॉलिडजेएस/वाइट फ्रंटएंड प्लस टॉरी रस्ट एप्लिकेशन
src-tauri. पैकेज काbuildस्क्रिप्ट फ्रंटएंड बनाती है; देशी पैकेजिंग के लिए तौरी और साइडकार संसाधनों की आवश्यकता होती है। @cadcamfun/mobile—apps/mobile- एक्सपो राउटर प्रवेश बिंदु, साथी HTTP/मूल परिवहन, सुरक्षित युग्मन स्थिति और मोबाइल यूआई। इसकी बिल्ड स्क्रिप्ट iOS जावास्क्रिप्ट बंडल को निर्यात करती है; मूल एप्लिकेशन बनाने के लिए मूल बिल्ड कमांड की आवश्यकता होती है।
दस्तावेज़ीकरण, सहायक और स्टूडियो
@cadcamfun/web इसमें एस्ट्रो पेज, साझा दस्तावेज़ीकरण घटक और साइट सामग्री सूचकांक शामिल हैं। साइडबार में घोषित किया गया है src/data/docsSidebar.ts; src/data/docsIndex.ts समान मार्गों के लिए पुनर्प्राप्ति सारांश और कीवर्ड रखता है। प्रत्येक दस्तावेज़ीकरण पृष्ठ अपने लेख को पहले से प्रस्तुत करता है।
GET /llm दस्तावेज़ीकरण पृष्ठों को मार्कडाउन लिंक के रूप में सूचीबद्ध करता है। GET /llm?path=/docs/cam संबंधित प्रस्तुत लेख को GitHub-फ्लेवर्ड मार्कडाउन के रूप में लौटाता है। जोड़ना format=prompt दस्तावेज़ीकरण संकेत के लिए. अज्ञात पथ वापसी 404; रूपांतरण विफलताएँ त्रुटि स्थिति लौटाती हैं। मार्कडाउन पाइपलाइन नेविगेशन, स्क्रिप्ट, शैलियों और नियंत्रणों को हटा देती है।
POST /api/docs-assistant तीन अनुक्रमित पृष्ठों तक पुनर्प्राप्त करता है और वर्कर्स एआई या कॉन्फ़िगर किए गए निक्ली बैकएंड के माध्यम से उत्तर स्ट्रीम करता है। स्थानीय एस्ट्रो विकास दूरस्थ बाइंडिंग को अक्षम कर देता है, इसलिए पीढ़ी के लिए एक मॉडल बैकएंड उपलब्ध होना चाहिए। वैकल्पिक SESSIONS केवी बाइंडिंग सर्वोत्तम प्रयास प्रति-आईपी दर सीमित करने में सक्षम बनाता है; वैकल्पिक ARTIFACTS भंडारण साझा करने योग्य जेनरेटेड गाइड को सक्षम बनाता है।
bun run --filter @cadcamfun/web dev एस्ट्रो और स्टूडियो एपीआई दोनों शुरू होता है। start एस्ट्रो अकेले चलाता है; studio केवल Bun स्टूडियो एपीआई प्रारंभ करता है। स्टूडियो चयन करता है CADCAMFUN_DB, तब DATABASE_URL एक वैकल्पिक के साथ file: उपसर्ग हटा दिया गया, फिर रिपॉजिटरी का data/cadcamfun.db. फ़ाइल पहले से मौजूद होनी चाहिए और उसमें एप्लिकेशन स्कीमा होनी चाहिए।
स्टूडियो मौजूदा उपयोगकर्ता के ईमेल और पासवर्ड को स्वीकार करता है, संग्रहीत पासवर्ड को सत्यापित करता है Bun.password, और HTTP-केवल कुकी के साथ सात दिवसीय डेटाबेस सत्र लिखता है। इसका अवलोकन प्रमाणित उपयोगकर्ताओं को इंस्टॉलेशन-व्यापी गणना और हाल की परियोजनाओं को लौटाता है। उत्पादन /studio/api/* रूट रिटर्न 503; तैनात दस्तावेज़ स्थानीय SQLite डेटाबेस नहीं खोलता है।
bun run --filter @cadcamfun/web start
bun test packages/web/test
bun run --filter @cadcamfun/web typecheck
bun run --filter @cadcamfun/web build एक एकीकरण सतह का चयन करें
| ज़रूरत | सतह | कॉल करने वाला क्या प्रदान करता है |
|---|---|---|
| दृढ़ता के बिना ज्यामिति की गणना करें | @cadcamfun/core | मान्य ज्यामिति और संचालन इनपुट; स्वामित्व और दस्तावेज़ बचत कर्नेल के बाहर रहती है। |
| पूर्ण टाइप किए गए HTTP अनुबंध को कॉल करें | ApiClient से @cadcamfun/api | साइडकार बेस यूआरएल, एप्लिकेशन टोकन और इफेक्ट रनटाइम/परतें। |
| वादा-आधारित उत्पन्न विधियों का उपयोग करें | @cadcamfun/api/sdk | एसडीके क्लाइंट विकल्प और एंडपॉइंट इनपुट; पहले जनरेशन चूक की जाँच करें। |
| एक एप्लिकेशन क्षमता प्रदान करें | @cadcamfun/plugin-sdk | एक समर्थित मेनिफेस्ट, संगत मॉड्यूल निर्यात, और दी गई क्षमताएं। |
| स्टैंडअलोन निक्ली से प्रोजेक्ट कार्रवाइयों को आगे बढ़ाएं | @cadcamfunv2/cadcamfun-nikcli-plugin | चल रहा ऐप यूआरएल, स्कोप्ड ब्रिज टोकन और चयनित प्रोजेक्ट। |
| किसी टूल में दस्तावेज़ पढ़ें | /llm?path=/docs/… | एक ज्ञात दस्तावेज़ीकरण मार्ग; यह CAD/CAM प्रोजेक्ट कार्रवाइयों को लागू नहीं करता है। |
अधिकांश लाइब्रेरी पैकेज टाइपस्क्रिप्ट स्रोत निर्यात करने वाले निजी कार्यस्थान हैं; मोनोरेपो में उनकी उपस्थिति का मतलब अलग से प्रकाशित एनपीएम वितरण नहीं है। निकल्ली ब्रिज में स्पष्ट प्रकाशन मेटाडेटा है। उपयोग HTTP संदर्भ एकीकरण के लिए जो आंतरिक पैकेज लेआउट से स्वतंत्र रहना चाहिए।
कार्यस्थल एक नज़र में
| कार्यस्थान | पैकेट | आंतरिक विभाग | स्रोत फ़ाइलें | पंक्तियां | परीक्षण फ़ाइलें | अंतर्वस्तु |
|---|---|---|---|---|---|---|
packages/core | @cadcamfun/core | — | 307 | 70,774 | 106 | ज्यामिति कर्नेल: cad/ (80 फ़ाइलें), cam/ (110), drawing/ (7) |
packages/ai | @cadcamfun/ai | एपीआई, कोर | 196 | 22,579 | 83 | सहायक: क्रियाएँ, एम्बेडेड होस्ट, संकेत, कौशल, उपकरण |
packages/api | @cadcamfun/api | कोर, httpapi-codegen | 64 | 18,388 | 9 | HttpApi अनुबंध, त्रुटियाँ, प्रभाव और वादा ग्राहक |
packages/db | @cadcamfun/db | — | 7 | 1,730 | 2 | SQLite + बूंदा बांदी, माइग्रेशन, बैकअप |
packages/vcs | @cadcamfun/vcs | — | 10 | 1,133 | 1 | सामग्री-संबोधित परियोजना इतिहास और विलय |
packages/workflow | @cadcamfun/workflow | — | 5 | 320 | 1 | वर्कफ़्लो फ़ाइल स्कीमा और शब्दार्थ चलाएँ |
packages/plugin-sdk | @cadcamfun/plugin-sdk | मुख्य | 9 | 952 | 2 | प्लगइन मेनिफेस्ट, क्षमताएं, परीक्षण होस्ट |
packages/httpapi-codegen | @cadcamfun/httpapi-codegen | — | 13 | 4,330 | 2 | HttpApi अनुबंधों के लिए क्लाइंट जनरेटर |
packages/nikcli-plugin | @cadcamfunv2/cadcamfun-nikcli-plugin | — | 5 | 359 | 2 | प्लगइन जो CADCAMFUN को निक्ली एजेंट के सामने उजागर करता है |
packages/web | @cadcamfun/web | डाटाबेस | 84 | 12,991 | 3 | यह दस्तावेज़ीकरण साइट, स्टूडियो, दस्तावेज़ सहायक |
apps/sidecar | @cadcamfun/sidecar | एआई, एपीआई, कोर, डीबी, प्लगइन-एसडीके, वीसीएस, वर्कफ़्लो | 172 | 20,797 | 73 | स्थानीय HTTP सर्वर: http/ (34), repos/ (24), services/ (29) |
apps/desktop | @cadcamfun/desktop | एपीआई, कोर | 557 | 85,579 | 104 | सॉलिडजेएस वेबव्यू (features/ 280 फ़ाइलें) + जंग खोल में src-tauri/ |
apps/mobile | @cadcamfun/mobile | एपीआई | 79 | 7,637 | 7 | एक्सपो आईओएस साथी |
गिट में ट्रैक की गई टाइपस्क्रिप्ट, टीएसएक्स, रस्ट और एस्ट्रो फाइलों की गिनती इस शाखा पर मापी जाती है; परीक्षण फ़ाइलें हैं *.test.ts(x). आंतरिक निर्भरताएँ छोड़ें @cadcamfun/ उपसर्ग.
निर्भरता ग्राफ
तीर किसी कार्यस्थान से यह इंगित करता है कि वह क्या आयात करता है। core इसकी कोई आंतरिक निर्भरता नहीं है, इसलिए ज्यामिति और सीएएम का परीक्षण और पुन: उपयोग सर्वर के बिना किया जा सकता है। केवल साइडकार डेटाबेस को छूता है; डेस्कटॉप और मोबाइल ऐप्स के माध्यम से डेटा पहुंचता है api. plugin-sdk पर भी निर्भर करता है core (तैयार नहीं किया गया).
प्रति कार्यस्थल स्क्रिप्ट
| कार्यस्थान | स्क्रिप्ट |
|---|---|
| जड़ | typecheck, test, build, build:sidecar, build:desktop, desktop:dev, generate, generate:check, db:generate, db:migrate |
packages/api | typecheck, coverage, generate, generate:check |
packages/db | typecheck, generate, migrate |
packages/web | dev, start, studio, build, preview, deploy, astro, check:freshness, check:docs-index, typecheck, generate:api-reference, check:api-reference |
apps/desktop | typecheck, dev, build, stub-sidecar, tauri, tauri:dev, tauri:build |
apps/mobile | start, ios, dev, ios:build, ios:release, ios:dev, web, native:generate, typecheck, build, test |
apps/sidecar | typecheck, start |
| अन्य पैकेज | typecheck |
जड़ typecheck प्रत्येक कार्यक्षेत्र को चलाता है typecheck टर्बो के माध्यम से और फिर रूट प्रोजेक्ट की जाँच करता है। जड़ test चलता है bun test packages apps scripts.