الانتقال إلى المحتوى
Vellumافتحوا Vellum

شغّلوا الشيفرة بـ 25 لغة، داخل الصفحة مباشرةً.

كتلة الشيفرة المسوّرة في الصفحة تصبح خلية يمكنكم تشغيلها. تبقى الشيفرة Markdown عاديًا؛ وتُحفظ المخرجات والجداول والرسوم البيانية مع الصفحة. كل شيء يعمل في بيئة معزولة على جهازكم.

صفحة في Vellum فيها خلية JavaScript تشارك جدولًا وخلية SQL تجمع قيمه، بجانب نص Markdown الخاص بالصفحة.
صفحة في Vellum فيها خلية JavaScript تشارك جدولًا وخلية SQL تجمع قيمه، بجانب نص Markdown الخاص بالصفحة.

شيفرة تعيش في صفحاتكم

اكتبوا كتلة شيفرة مسوّرة مع اسم لغة، كما تفعلون على GitHub أو في Obsidian. في عرض القراءة أو العرض المقسوم تصبح خلية فيها زر «تشغيل». تبقى الشيفرة في نص Markdown الخاص بالصفحة، فتبقى الصفحات قابلة للنقل؛ وما تطبعه الخلية، والجداول التي تُرجعها، والرسوم البيانية التي ترسمها تُحفظ مع الصفحة وتعود عندما تفتحونها مجددًا.

```python
import pandas as pd
runs = pd.DataFrame({"month": ["Jan", "Feb", "Mar"], "km": [42, 51, 63]})
runs.describe()
```

25 لغة، على جهازكم

JavaScript, TypeScript, Python, SQL, Lua, Shell (emulated), Ruby, PHP, R, Perl, Go, Rust, C, C++, OCaml, Haskell, Zig, C#, F#, Java, Clojure, Elixir, Erlang, Scheme, Prolog.

تُنزَّل كل لغة في أول مرة تشغّلونها (من بضع مئات من الكيلوبايتات للغة Lua أو JavaScript إلى بضع عشرات من الميغابايتات للغة Rust)، ثم تعمل دون اتصال. ومن الإعدادات ← بيئات تشغيل الشيفرة يمكن تنزيلها مسبقًا، استعدادًا للطائرات والقطارات.

تعمل الشيفرة في إطار معزول مع عامل (worker) واحد لكل صفحة ولغة. لا يمكنها قراءة التطبيق ولا صفحاتكم الأخرى ولا الوصول إلى الشبكة: لا وصول للخلايا إلى الشبكة إلا إذا سمحتم بذلك لتلك الصفحة.

اعملوا كما في الدفاتر البرمجية

مشاركة البيانات بين اللغات

يمكن لخلايا الصفحة الواحدة تمرير البيانات فيما بينها عبر اللغات: share(name, value) في خلية، وuse(name) في أخرى. وتصل الجداول جداولَ: شاركوا صفوفًا من JavaScript، ثم استعلموا عنها بـ SQL.

```js
share("runs", [{ month: "Jan", n: 4 }, { month: "Feb", n: 7 }])
```

```sql
select sum(n) as total from runs;
```

الإدخال والملفات والحزم

شغّلوا أول خلية برمجية في Vellum

  1. افتحوا صفحة

    أنشئوا صفحة، أو افتحوا أي صفحة لديكم.

  2. اكتبوا كتلة شيفرة

    اكتبوا ثلاث علامات backtick واسم لغة، مثل ```python، ثم شيفرتكم، ثم ثلاث علامات backtick لإغلاقها.

  3. شغّلوها

    انتقلوا إلى عرض القراءة أو العرض المقسوم واضغطوا «تشغيل» على الخلية (أو Shift+Enter في محرر الخلية). تُنزَّل اللغة في المرة الأولى.

  4. احتفظوا بالنتيجة

    تُحفظ المخرجات مع الصفحة. افتحوا قائمة الخلية لتجدوا «تشغيل الكل» و«المتغيرات» وأوامر الدفتر الأخرى.

في التطبيق

أسئلة

هل هو بديل عن Jupyter؟

لكثير من الدفاتر، نعم: يفتح ملفات .ipynb ويصدّرها ويحتفظ بالمخرجات. يشغّل نسخ WebAssembly من كل لغة في المتصفح، لذا تبقى الحسابات الثقيلة ووحدات GPU وبعض الحزم الأصلية بحاجة إلى Jupyter. انظروا Vellum وJupyter.

هل تصل شيفرتي إلى الإنترنت؟

ليس ما لم تسمحوا بذلك. الخلية التي تحاول الوصول إلى الويب تسأل أولًا (مرة واحدة، أو دائمًا لهذه الصفحة، أو أبدًا)، ويُسجَّل كل طلب تحت الخلية.

هل تعمل دون اتصال؟

نعم. تُنزَّل كل لغة مرة واحدة، في أول مرة تستخدمونها، ثم تبقى على جهازكم. ويمكنكم تنزيلها كلها مسبقًا من الإعدادات.