هذا هو المستودع الرئيسي للسونار. الإعداد المعتاد هو أن تقوم بتشغيل sonar-server على مضيف محلي ثم تتفاعل مع Sonar من خلال العميل ، واجهة المستخدم التي تعمل على http: // localhost: 9191 أو CLI. يمكن استدعاء CLI باستخدام ./sonar من جذر هذا المستودع ، ويستخدم أيضًا لبدء الخادم.
يحتوي موقع Docs على المزيد من الوثائق (WIP).
يتطلب Sonar node.js الإصدار 16 أو أعلى. إذا كان نظامك يشحن إصدارًا قديمًا ، فيمكنك استخدام أداة مثل NVM لتثبيت إصدار محدث. على النظام المستند إلى Debian ، يمكنك أيضًا تجربة توزيعات Node.js من NewseSource.
يمكنك التحقق من إصدار Node.js عن طريق تشغيل node --version على سطر الأوامر.
بعد ذلك ، قم بتثبيت السونار مع الأمر التالي:
npm install -g @arsonar/server يمكنك بعد ذلك تشغيل واجهة سطر أوامر sonar . مع هذا ، يمكنك بدء تشغيل الخادم والتفاعل معه من سطر الأوامر.
# show help
sonar help
# show help for specific commands
sonar help collection
# start a server
sonar startملاحظة: في الوقت الحالي ، يوصى بتثبيت الغزل 1 ، يرجى تثبيته وفقًا للتعليمات.
# clone the sonar repository
git clone https://github.com/arso-project/sonar.git
cd sonar
# install dependencies of all workspaces
yarn
# build the typescript modules and bundle the UI
yarn run build يمكنك بدء السونار مع ./sonar من جذر المستودع.
إذا فشلت البداية مع الأخطاء المتعلقة بـ sonar-tantivy ، فحاول إعادة تنزيل أو إعادة بناء Sonar tantivy (محرك البحث المدرج في السونار):
yarn run rebuild:tantivy
إذا فشلت البداية مع الأخطاء المتعلقة client ، فحاول إعادة بناء العميل:
yarn run build:client
# start the sonar server
./sonar start
# start the sonar server in dev mode
./sonar start --dev
يتضمن هذا الريبو بعض الأمثلة. لتشغيلها محليًا ، قم بما يلي:
# build the typecript modules
yarn build
# start sonar
./sonar start --disable-authentication --dev
# run the example from the examples/ folder
yarn example react تشغيل ./sonar help للحصول على قائمة بالأوامر المدعومة.
Sonar هو مشروع شاب مفتوح المصدر وجميع أنواع المساهمات مرحب بها. نحن بصدد كتابة المزيد من الوثائق ونظرة عامة حول كيفية عمل الأشياء والتجمع (في كتاب).
إذا كنت في شك ، تحدث إلينا! على سبيل المثال على IRC في #DAT على Freenode (أو في المتصفح من خلال Gitter. المزيد في هذا المشروع على arso.xyz.
تم تنظيم الريبو باعتباره monorepo من الحزم المختلفة (التي تعتمد على عدة نقاط).
جوهر الوحدة الأساسية. إنه يدير المجموعات ، والتي هي مفهومنا "مجموعة من الخلاصات*. كل مجموعة لديها Kappa-Record-DB يتم توصيلها بمؤشر بحث من خلال Tantivy. تحتوي كل مجموعة أيضًا على قائمة من Hyperblobs المرتبطة بتخزين محتويات الملفات الخام.
يوفر Server نمط REST HTTP API الذي يستخدمه CLI و UI للوصول إلى البيانات في الحزم/الأساسية وإدارتها.
العميل هي مكتبة عميل JavaScript. يستخدمه كل من CLI و UI. يتحدث إلى الحزم/الخادم عبر http.
واجهة المستخدم هو تطبيق صفحة واحدة لتصفح البيانات في السونار.
CLI هو تطبيق سطر الأوامر. يمكنه إدارة المجموعات ، ووضعها ودخولها إلى قاعدة البيانات ، وتحميل الملفات وتنزيلها ، وجعل استعلامات البحث.
تم دعم هذا المشروع من قبل NLNET في برنامج البحث والاكتشاف من الجيل التالي.