An obsidian plugin that allows code blocks executed interactively in sandbox like jupyter notebooks. Supported language rust、kotlin、python、Javascript、TypeScript etc.

Overview

Obsidian Code Emitter

GitHub release (latest by date including pre-releases) GitHub all releases

This plugin allows code blocks executed interactively like jupyter notebooks.

Currently, support languages:

  • Rust
  • Kotlin
  • JavaScript
  • TypeScript
  • Python
  • Java

Note: Only PythonTypeScriptJavaScript are run locally in sandbox(js / webassembly). Other's will send code to third-party website to eval the results (eg: https://play.kotlinlang.org, https://play.rust-lang.org). Please take care to avoid sending your potentially-sensitive source code.

Ads: You might like my other plugins 🤪


.

Installation

  1. Create plugin folder <your obsidian vault>/.obsidian\plugins\code-emitter
  2. Download files from releases into plugin folder.

Examples

Python

Install numpy through micropip. All available packages are list in here (search whl).

import micropip
await micropip.install('numpy')  
import numpy as np
a = np.random.rand(3,2)
b = np.random.rand(2,5)

print(a@b)
You might also like...

This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do any operations that can be performed in python shell with this package.

Django execute code This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do

Nov 12, 2022

A card for Home Assistant Lovelace for exploring the history of your entities interactively and in real time.

A card for Home Assistant Lovelace for exploring the history of your entities interactively and in real time.

History explorer card This is a custom history card for Home Assistant. This card offers a highly interactive and configurable way to view the history

Dec 31, 2022

A plugin for Obsidian (https://obsidian.md) that adds a button to its search view for copying the Obsidian search URL.

A plugin for Obsidian (https://obsidian.md) that adds a button to its search view for copying the Obsidian search URL.

Copy Search URL This plugin adds a button to Obsidian's search view. Clicking it will copy the Obsidian URL for the current search to the clipboard. T

Dec 26, 2022

we learn the whole concept of JS including Basics like Object, Functions, Array etc. And Advance JS - Understanding DOMs, JQuery, Ajax, Prototypes etc.

JavaScript-for-Complete-Web Development. we learn the whole concept of JS including Basics like Object, Functions, Array etc. And Advance JS - Underst

Jul 22, 2022

DocuBox is a cloud file storing app built using Kotlin, Nodejs and MongoDb.

DocuBox is a cloud file storing app built using Kotlin, Nodejs and MongoDb.

DocuBox is an app where you can securely upload your files on the cloud – from family pictures and audio recordings to spreadsheets, presentations and other confidential documents. All the files uploaded by the users are stored in an encrypted format.

Nov 18, 2022

An Inkdrop plugin to synchronise notebooks and notes with Todoist projects and tasks.

An Inkdrop plugin to synchronise notebooks and notes with Todoist projects and tasks.

inkdrop-todoist-sync Todoist Sync is an Inkdrop plugin that allows synchronising of Inkdrop notebooks and notes with Todoist projects, sections and ta

Aug 23, 2022

📊 AlphaSwap subgraph - (Blocks, token info, profiles, pricing data, LP metrics, etc...)

AlphaSwap Subgraph AlphaSwap is a decentralized protocol for automated token exchange on the KCC network. This subgraph dynamically tracks any pair cr

Jul 9, 2022

Simple code sandbox for your website.

Simple code sandbox for your website.

Live Coding Sessions It is just a simple desk app which puts 3 apps together (code, audio, draw) in a responsiveness way, so you can have all at once,

Oct 23, 2022
Comments
  • plugin is making calls to external web sites without warning user

    plugin is making calls to external web sites without warning user

    I was poking through this plugin's code to see how it worked and came across this line in the backend for java:

    https://github.com/mokeyish/obsidian-code-emitter/blob/7f2ad92c05d1ea1b4f19aadae5c35651f8df8cfa/src/backend/languages/java.ts#L3

    It appears that this plugin makes a call to a third-party web site to compile code. It is unclear whether sololearn.com is OK with this use of their api, but in any case, the user should certainly be warned about sending potentially-sensitive source code for compilation to a third party they may not know or trust. Also, the plugin's README should be very clear about what's happening on the backend so that users can make an informed choice about whether to trust it.

    Similar issues exist for the other compiled languages, it seems:

    For kotlin: https://github.com/mokeyish/obsidian-code-emitter/blob/7f2ad92c05d1ea1b4f19aadae5c35651f8df8cfa/src/backend/languages/kotlin.ts#L3

    For rust: https://github.com/mokeyish/obsidian-code-emitter/blob/7f2ad92c05d1ea1b4f19aadae5c35651f8df8cfa/src/backend/languages/rust.ts#L3

    For go: https://github.com/mokeyish/obsidian-code-emitter/blob/7f2ad92c05d1ea1b4f19aadae5c35651f8df8cfa/src/backend/languages/go.ts#L3

    opened by axb21 3
  • Documentation Request: How To Add New Languages

    Documentation Request: How To Add New Languages

    This plug-in looks awesome!

    I would love to use it with Ruby, and possibly other languages as well (Go, Zig, & Crystal). Any directions on how to add new languages would be appreciated.

    opened by brandondrew 2
Owner
YiiSh
YiiSh
Create testable, reproduceable documentation with Jupyter notebooks

Create Testable, Reproduceable Docs and Blogs With Notebooks Never copy and paste code into documentation again! ?? See a live example of a post made

Outerbounds 29 Dec 8, 2022
High-quality QR Code generator library in Java, TypeScript/JavaScript, Python, Rust, C++, C.

QR Code generator library Introduction This project aims to be the best, clearest QR Code generator library in multiple languages. The primary goals a

Nayuki 3.3k Jan 4, 2023
Chrome Extension To Reveal Observable Notebooks As Quarto QMD {ojs} Blocks & provide downloads of FileAttachments and zipped Quarto project

reveal-qmd Chrome Extension To Reveal Observable Notebooks As Quarto QMD {ojs} Blocks Usage: git clone [email protected]:hrbrmstr/reveal-qmd In Chrome (e

boB Rudis 20 Nov 29, 2022
Quick One Liners in JavaScript, TypeScript, Python, Rust, Java, Ruby, C, C++

ONE LINERS This repository contains cool and simple one line utility functions to easily use common repetitive methods in JavaScript, TypeScript, Pyth

Divin Irakiza 3 Mar 2, 2022
Remix sandbox repo for Rust compiled to WASM and to native N-API modules

Rust <-> Remix Sandbox Now with both native Rust and WASM versions! If you want to combine the Web Fundamentals & Modern UX of Remix together with the

Ben Wishovich 26 Dec 30, 2022
Nest multiple blocks inside lists of any kind of list (ordered, unordered, no marker, etc), or do away with list markers and use it like a repeater!

Nest multiple blocks inside lists of any kind of list (ordered, unordered, no marker, etc), or do away with list markers and use it like a repeater!

Rani 15 Dec 26, 2022
An obsidian plugin that give additional features to code blocks.

Obsidian Advanced Codeblock Add additioinal features to code blocks. Demo Feature Add line numbers to code block Add line highlight to code block Usag

lijyze 29 Jan 3, 2023
Source code of kotlin course (UK, RU) for beginners.

Kotlin Course Kotlin course for beginners (UK, RU). Site available at course.y9vad9.com. News & Updates If you want to receive updates and news about

Vadim Yaroschuk 15 Jan 6, 2023
🖱 A JavaScript library for interactively picking DOM elements

pick-dom-element A JavaScript library (written in TypeScript) for interactively picking DOM elements. Usage Create an instance of the ElementPicker cl

Harry Marr 23 Dec 4, 2022