Package: metacall-jupyter
MetaCall Jupyter Kernel: Wrapper Kernel for MetaCall Core Library leveraging IPython and JupyterIntroductionMetaCall Jupyter Kernel is an open-source wrapper kernel that implements cross-language function calls through theMetaCall Coreand thePolyglot REPL. MetaCall Core is an open-source library that brings the polyglot programming experience to Developers. With MetaCall, developers can embed different programming languages through an easy-to-use high-level API.The Kernel exposes the MetaCall Core API which can be loaded and launched through a Jupyter Notebook interface. With this Notebook, the
users can try out writing, mixing and embedding code in different programming languages. The project is available onPyPi.Key featuresmetacall_jupyteris designed to be simple and concise with the following key features:You can call functions in different programming languages, through cross-language function calls.You use a high-level API to execute code in different programming languages.Lists all the available functions and modules from the MetaCall's meta-object protocol.Official support for Python and NodeJS with the Polyglot REPL.Simple and intuitive user-experience centred around Polyglot development and components.InstallationIt is recommended to use a Virtual Environment to manage your dependencies and the application build. We will first start with setting up the Local Project Environment:gitclonehttps://github.com/metacall/jupyter-kernel.git
virtualenvenvsourceenv/bin/activateNext we can download all the dependenices and setup the Kernel:curl-sLhttps://raw.githubusercontent.com/metacall/install/master/install.sh|sh
python3-mpipinstall--upgradepip
pip3install-rrequirements.txt
python3setup.pyinstall
python3-mmetacall_jupyter.install
metacallnpminstallStart your Jupyter Notebook by pushing the following command:python3-mmetacall_jupyter.launcherYou can pickmetacall_jupyterfrom the drop-down options and start working with the Jupyter Notebook interface. Example Notebook are foundhere.DockerBuild the image:dockerbuild-tmetacall/jupyter.Run the image:dockerrun--rm--network=host-itmetacall/jupyterTestingTo run the tests, push the following command:pytesttest-kernel.pyThe script will run all the tests. To generate a coverage report, we are using thepytest-covplugin, which can be invoked by pushing the following command:pytest--cov=metacall_jupytertest-kernel.pyDocumentationOur official documentation is available atmetacall-jupyter-kernel.readthedocs.io.To edit the documentation you need a GitHub account. Once you have created one and logged in, you can edit any page by navigating to the corresponding file and clicking the edit (pen) icon. Alternatively create a fork, and then clone the repo andcdinto thedocsdirectory. Let us set the doucmentation up:virtualenvenvsourceenv/bin/activate
pipinstall-rrequirements.txt
makehtmlYou can now open the documentation site on_build/html/index.htmlin your browser. Make corresponding changes on the documentation site and then runmake clean && make htmlto update the documentation. You can now create a pull request to get your changes merged into the upstream branch.ContributingTo get started with contributing, check out theCode of Conductand create anIssueto get started.If you are new to Git & GitHub, you can find more informationhere. It contains all the information about making the changes, linting, running the CI locally and submitting the pull request.You can view theChange Logto see what has changed in the project, since its inception.LICENSEApache-2.0 License