Du code en 25 langages, directement dans une page.
Un bloc de code délimité dans une page devient une cellule exécutable. Le code reste du Markdown simple ; les sorties, tableaux et graphiques sont enregistrés avec la page. Tout s’exécute dans un bac à sable sur votre appareil.
Une page Vellum avec une cellule JavaScript qui partage un tableau et une cellule SQL qui en fait la somme, à côté du Markdown de la page.
Du code qui vit dans vos pages
Écrivez un bloc de code délimité avec un langage, comme sur GitHub ou dans Obsidian. En mode lecture ou partagé, il devient une cellule avec un bouton Exécuter. Le code reste dans le Markdown de la page, qui reste donc portable ; ce qu’une cellule affiche, les tableaux qu’elle renvoie et les graphiques qu’elle dessine sont enregistrés avec la page et réapparaissent quand vous la rouvrez.
Chaque langage se télécharge la première fois que vous l’exécutez (de quelques centaines de kilo-octets pour Lua ou JavaScript à quelques dizaines de mégaoctets pour Rust), puis fonctionne hors ligne. Réglages → Environnements de code les télécharge à l’avance, pour l’avion ou le train.
Le code s’exécute dans un cadre isolé, avec un worker par page et par langage. Il ne peut lire ni l’application, ni vos autres pages, ni le réseau : les cellules n’ont pas accès au réseau sauf si vous l’autorisez pour cette page.
Travaillez comme dans un notebook
Tout exécuter, exécuter les cellules au-dessus ou en dessous, redémarrer les environnements et tout relancer, effacer les sorties.
Insérer, déplacer et supprimer des cellules depuis le menu de cellule, chaque action pouvant être annulée. Les sorties suivent leur cellule quand elle bouge.
Arrêter interrompt une cellule en cours et conserve ses variables ; si le code ne s’arrête pas dans les 3 secondes, l’environnement redémarre. Chaque exécution a une durée limite.
Variables liste chaque valeur créée par votre code, avec son type et un résumé.
Expliquer et corriger : l’assistant facultatif sur l’appareil explique une cellule ou propose une correction, sous forme de diff que vous acceptez ou refusez.
Partagez des données entre langages
Les cellules d’une même page peuvent se passer des données d’un langage à l’autre : share(name, value) dans l’une, use(name) dans une autre. Les tableaux arrivent sous forme de tableaux : partagez des lignes depuis JavaScript, puis interrogez-les en SQL.
```js
share("runs", [{ month: "Jan", n: 4 }, { month: "Feb", n: 7 }])
```
```sql
select sum(n) as total from runs;
```
Saisie, fichiers et paquets
Les cellules peuvent demander une saisie (input(), prompt(), readline) et attendre votre réponse dans la page.
Les fichiers joints à la page sont accessibles par leur nom : pd.read_csv("sales.csv"). Les fichiers qu’une cellule écrit peuvent être enregistrés dans la page ou téléchargés.
Python est fourni avec NumPy, pandas, SciPy, scikit-learn, matplotlib, Altair, DuckDB et d’autres, hors ligne ; %pip install en ajoute d’autres une fois le réseau autorisé pour cette page.
Exécuter votre première cellule de code dans Vellum
Ouvrez une page
Créez une page, ou ouvrez n’importe quelle page existante.
Écrivez un bloc de code
Tapez trois accents graves et un nom de langage, par exemple ```python, puis votre code, puis trois accents graves pour fermer le bloc.
Exécutez-le
Passez en mode lecture ou partagé et appuyez sur Exécuter sur la cellule (ou Maj+Entrée dans l’éditeur de cellule). Le langage se télécharge la première fois.
Gardez le résultat
La sortie est enregistrée avec la page. Ouvrez le menu de cellule pour Tout exécuter, Variables et les autres commandes de notebook.
Dans l’application
Exécuter du code dans une pagePython, JavaScript, R, SQL et plus de 20 langages, sur cet appareil.
VariablesVoyez toutes les valeurs créées par votre code.
Partage entre langagesshare() une table en JavaScript, interrogez-la en SQL.
Saisie, fichiers et graphiquesLes cellules posent des questions, lisent vos fichiers et tracent des graphiques.
Réseau et paquetsLes cellules n’accèdent au web ou n’installent des paquets que si vous l’autorisez.
Travailler comme dans un notebookTout exécuter, exécuter au-dessus ou en dessous, déplacer et redémarrer des cellules.
Expliquer et corrigerL’assistant sur l’appareil explique le code et propose des corrections.
Langages hors ligneTéléchargez les langages à l’avance, pour l’avion ou le train.
Questions
Est-ce que ça remplace Jupyter ?
Pour beaucoup de notebooks, oui : Vellum ouvre et exporte les fichiers .ipynb et conserve les sorties. Il exécute des versions WebAssembly de chaque langage dans le navigateur ; les calculs lourds, les GPU et certains paquets natifs demandent donc toujours Jupyter. Voir Vellum et Jupyter.
Mon code a-t-il accès à Internet ?
Pas sans votre accord. Une cellule qui essaie d’accéder au web demande d’abord (une fois, toujours pour cette page, ou jamais), et chaque requête est journalisée sous la cellule.
Est-ce que ça marche hors ligne ?
Oui. Chaque langage se télécharge une fois, à sa première utilisation, puis reste sur votre appareil. Vous pouvez tous les télécharger à l’avance dans les Réglages.