Skip to content

ElixirNote/elixirnote

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

85 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

badge
logo
go from data to knowledge

ElixirNote

Build Status Build Status Documentation Status Crowdin GitHub

An extensible environment for interactive and reproducible computing, based on the Jupyter Notebook and Ecosystem.

ecosystem

ElixirNote is the next-generation user interface for Project Jupyter offering all the familiar building blocks of the classic Jupyter Notebook (notebook, terminal, text editor, file browser, rich outputs, etc.) in a flexible and powerful user interface. However, JupyterLab is also a good choice. ElixirNote will eventually replace the classic Jupyter Notebook.

ElixirNote can be extended using npm packages that use our public APIs. The prebuilt extensions can be distributed via PyPI, conda, and other package managers. The source extensions can be installed directly from npm (search for jupyterlab-extension) but require additional build step. You can also find ElixirNote extensions exploring topic jupyterlab-extension. To learn more about extensions, see the user documentation.

The current ElixirNote releases are suitable for general usage, and the extension APIs will continue to evolve for ElixirNote extension developers.

Read the current ElixirNote documentation on ElixirNote Docs.

Screenshot & Gifs

Workspace Overview

overview-1

Example Explore

overview-2

Data Viz

overview-3

Notebook Preview

overview-3

Main Features

  • A new way to notebook
    • Use SQL, Python, and Julia together, or alone
    • No-code visualization
    • A magic, reactive execution model
    • Advanced version control
  • Publish work as interactive data apps
    • A full library of UI components
    • Drag-and-drop layouts
    • Instant publishing
    • Live commenting
  • Build organizational knowledge
    • Discovery work in the knowledge library
    • Organize with categories and statuses
  • Security first
    • Single tenant / private VPC deploys
    • HIPAA compliant, and BAA friendly
    • SSO support through Google, Okta, Keycloak, and more

Getting Started

Installation

Project installation instructions from the git sources are available in the contributor documentation.

pip

If you use pip, you can install it with:

# Clone ElixirServer
git git@github.com:ElixirNote/elixirserver.git
cd elixirserver
pip install -e .
# Clone ElixirNBC
git clone git@github.com:ElixirNote/elixirnbc.git
cd elixirnbc
pip install -e .
# Clone ElixirNote
git clone git@github.com:ElixirNote/elixirnote.git
cd elixirnote
pip install -e ".[dev,test]"
jlpm install
jlpm run build  # Build the dev mode assets (optional)
jlpm run build:core  # Build the core mode assets (optional)
jupyter lab build  # Build the app dir assets (optional)

Running

Start up ElixirNote using:

jupyter lab --dev-mode --watch --allow-root --no-browser --ip=0.0.0.0

If you want load extensions in dev mode:

jupyter lab --dev-mode --watch --allow-root --no-browser --extensions-in-dev-mode --ip=0.0.0.0

ElixirNote will open automatically in the browser. See the documentation for additional details.

If you encounter an error like "Command 'jupyter' not found", please make sure PATH environment variable is set correctly. Alternatively, you can start up ElixirNote using ~/.local/bin/jupyter lab without changing the PATH environment variable.

Prerequisites and Supported Browsers

The latest versions of the following browsers are currently known to work:

  • Firefox
  • Chrome
  • Safari

See our documentation for additional details.

Getting Help

We encourage you to ask questions on the Discourse forum. A question answered there can become a useful resource for others.

Bug Report

To report a bug please read the guidelines and then open a Github issue. To keep resolved issues self-contained, the lock bot will lock closed issues as resolved after a period of inactivity. If related discussion is still needed after an issue is locked, please open a new issue and reference the old issue.

Development

Extending ElixirNote

To start developing an extension for ElixirNote, see the developer documentation and the API docs.

Contributing

To contribute code or documentation to ElixirNote itself, please read the contributor documentation.

ElixirNote follows the Jupyter Community Guides 🌈.

License

ElixirNote uses a shared copyright model that enables all contributors to maintain the copyright on their contributions. All code is licensed under the terms of the revised BSD license.

Elixir Teams

elixir-intro

Welcome to joins πŸ‘πŸ‘πŸ‘.