一个jupyter扩展,它将笔记本电脑转变为web应用程序,并对aiida实验室进行了修改。

appmode-aiidalab的Python项目详细描述


应用模式

a jupyter扩展,可将笔记本电脑转换为Web应用程序。

screenshots

现场试用

Binder

单击活页夹徽章,在不安装任何东西的情况下进行实时尝试。这将直接带您到笔记本的“应用程序”版本。

安装

如果使用conda,则可以将其安装为:

conda install --channel conda-forge appmode

如果使用pip,则可以将其安装为:

pip install appmode
jupyter nbextension     enable --py --sys-prefix appmode
jupyter serverextension enable --py --sys-prefix appmode

如果要使用mybinder请将以下environment.yml文件添加到存储库:

channels:
  - conda-forge
dependencies:
  - appmode

说明

appmode由jupyter的服务器端和笔记本扩展组成。这两个扩展一起提供以下功能:

  • 单击工具栏中的appmode按钮,可以在appmode中查看任何笔记本。或者可以将url从baseurl/notebooks/foo.ipynb更改为baseurl/apps/foo.ipynb。这也允许直接链接到appmode。

  • 在appmode中打开笔记本时,将自动执行所有代码单元格。为了呈现一个干净的ui,所有代码单元都被隐藏,并且标记单元是只读的。

  • 一个笔记本可以在appmode下多次打开而不受干扰。这是通过为每个活动的appmode视图创建笔记本的临时副本来实现的。每个appmode视图都有其专用的ipython内核。当appmode页面关闭时,内核将关闭,临时副本将被删除。

  • 为了允许通过url参数在笔记本之间传递信息,将当前url注入变量jupyter_notebook_url

服务器端配置

appmode添加以下configuration options

  • Appmode.trusted_path在appmode中仅在此路径下运行笔记本。默认值:无限制。
  • Appmode.show_edit_button在appmode期间显示{em1}$edit app按钮。默认值:true。
  • Appmode.show_other_buttons在appmode期间显示其他按钮,例如注销。默认值:true。

客户端自定义

appmode的ui元素可以通过custom.js文件自定义。例如:

$('#appmode-leave').hide();                          // Hides the edit app button.
$('#appmode-busy').hide();                           // Hides the kernel busy indicator.
$('#appmode-loader').append('<h2>Loading...</h2>');  // Adds a loading message.

请注意,隐藏编辑按钮不会阻止用户通过手动更改url离开appmode。

开发

使用附带的Dockerfile可以快速创建开发环境:

  1. 安装Docker
  2. git克隆此存储库
  3. docker build --tag appmode_dev ./
  4. docker run --init -ti -p8888:8888 appmode_dev
  5. 浏览到http://localhost:8888/apps/example_app.ipynb

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java能否使用OpenJPA将一个实体持久化到多个持久化单元?   java如何访问当前按下的键   java singleton是否意味着哈希代码总是返回相同的值?   inputstream无法在Java中同时使用STDIN和STDERR读取程序输出   java运行时有多贵。getRuntime()与获取内存度量相结合   java AndroidStudio ListView适配器更新   java小程序请求未扩展实时会话   java是设置布尔值所必需的关键部分?   java比较两个字符串,并突出显示发现的不匹配项   java带抽屉布局,无论哪个屏幕处于活动状态,如何在按下后退键时关闭应用程序?   爪哇:颜色有什么区别。黑色和彩色。黑色   Velocity模板中子类的java访问方法   java如何快速学习Drools或其他规则引擎   从Java应用程序访问时缓存数据库查询结果   java cassandra nodetool JPLISAgent。c错误   java我正在解析一个没有pubDate的RSS提要,有没有其他方法可以确定一个项目是何时发布的?