Giter Site home page Giter Site logo

arbennett / jupyterlab-themes Goto Github PK

View Code? Open in Web Editor NEW
188.0 5.0 21.0 2.25 MB

More color themes for Jupyter Lab

License: GNU General Public License v3.0

TypeScript 2.59% CSS 1.99% JavaScript 4.03% Shell 0.06% SCSS 91.32%
jupyterlab jupyter themes jupyterlab-extension jupyterlab-theme

jupyterlab-themes's Introduction

jupyterlab-themes

👋 Hi there! As you can see I have not worked on this in a while - if somebody would like to take over maintaining this let me know!

Add more colors to your Jupyter Lab!

❗ This plugin is in alpha stages. You are welcome to try to use and/or improve it, but stability is not guaranteed. If you want to help out, check out the contributing section below, or browse the issues!

What is this?

Simply put, this is an extension to add a number of color themes to Juptyer Lab. I created this as a heavy user of Jupyter Lab, and didn't particularly like the default dark scheme. I take heavy inspiration from the following projects:

  • base16: Definitions of color schemes following a basic template
  • jupyter-themes: Themes for jupyter notebook
  • theme-gruvbox: gruvbox dark theme implemented for Jupyter Lab

Installation

Currently, you have to install each of the themes individually. Themes be installed directly via npm with the standard way of installing lab extensions:

jupyter labextension install @arbennett/base16-{$themename}

You can also install from source. This can be accomplished by running the following comands in a theme's respective subdirectory:

npm install
jupyter labextension link .

Example screenshots

Nord theme

nord

Mexico theme

mexico

Contributing

I am only able to work on this project intermittently, and would love to make this a community project. If you would like to contribute feel free to open a pull request or file an issue! I'll do my best to respond to PRs and issues as quickly as possible, and will probably prioritize that over doing more development of my own.

My workflow

Because I am not a web developer, my familiarity with javascript and typescript is somewhat limited. Thus, the workflow I've developed here may seem odd or convoluted to those with more experience in this domain. Basically, my workflow has been to edit the base stylesheets in the scss directory, and using the gen_css.sh script to generate all of the css files directly. Then I update my builds as necessary. If you know a better way to do this, please let me know!

Bumping versions

Because I have cobbled together a strange workflow for updating all of the themes at once it's a bit unwieldy to update the versioning consistently. This is the command I use (mostly for my own sake):

sed -i 's/"version": "CURRENT_VERSION"/"version": "NEW_VERSION"/g' ./**/package.json

jupyterlab-themes's People

Contributors

arbennett avatar dependabot[bot] avatar ianhi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

jupyterlab-themes's Issues

Got stuck while installing from source

Hello, I'm trying to customize the colors a little bit. I tried installing from source but npm install seemed to hang forever:

~/jupyterlab-themes/base16-solarized-light❯ npm install
❯ npm install
[  ................] / idealTree:tslib: sill fetch manifest [email protected]

When I add --verbose, these messages kept repeating again and again:

npm timing idealTree:node_modules/@jupyterlab/apputils Completed in 2ms
npm timing idealTree:node_modules/@jupyterlab/codemirror Completed in 0ms
npm timing idealTree:node_modules/@jupyterlab/statusbar Completed in 0ms
npm timing idealTree:node_modules/@jupyterlab/ui-components Completed in 3ms

Here are my versions:

  • node: 14.16.0
  • npm: 7.12.1

is not a valid npm package

(pt-gpu) hu@ecume:~$ jupyter labextension install base16-mexico-light
An error occured.
ValueError: "base16-mexico-light" is not a valid npm package
See the log file for details: /tmp/jupyterlab-debug-kcpnj0zk.log

how to solve this?

Color of hyperlink texts

Is it possible to change the color of hyperlink texts so that it has a higher contrast with the background color? I love everything about the nord theme except for this T.T

Screenshot 2021-10-14 at 3 20 11 PM

Support JupyterLab 1.x.x

Great Job..... However does not build in JupyterLab 1.2.6 with message:

Extension Installation Error
An error occurred installing @arbennett/base16-solarized-dark.

Error message:

No version of @arbennett/base16-solarized-dark could be found that is compatible with the current version of JupyterLab. However, it seems to support a new version of JupyterLab. Consider upgrading JupyterLab.

Conflicting Dependencies:
JupyterLab Extension Package

=1.2.1 <1.3.0 >=2.0.0 <3.0.0 @jupyterlab/application
=1.2.1 <1.3.0 >=2.0.0 <3.0.0 @jupyterlab/apputils

Make overarching installer for all themes

Currently each individual theme must be installed separately, but it might be more convenient/efficient if there was a way to install all the themes in one go and share dependencies etc.

Local installs broken?

The logs keep giving me this dumb error when trying to run jupyter labextension link .:

Error: Cannot find module '@arbennett/base16-{theme}package.json' 

Even worse - it appears to install the extension according to the "Extension Manager" but is not available in the "Themes" selector. Disappointing.

🤷‍♂️

Search (ctrl+f) has no highlighting

The default jupyter-lab themes provide high-visibility highlighting (via background color) of the search results. However, the themes in this reposity seem to provide no bgcolor highlighting at all, or very low contrast, which makes it hard to find the search results.

selection color in text files in base16-nord

First of all, thank you for your work. I really like the theme.

This time the base16-nord installation went fine, but an issue still persists. In text files (I use both .txt and .do) sometimes when you select a slice of text you do not see a different color highlighting it. Is it because the selection color is the same as the background color?

selection color in terminal covers up all the codes!

Thank you for your wonderful theme. But can you tell me how I can fix this issue?

Issue : Selection colors in terminal covers up all the codes.

image

When you scroll the mouse cursors to select a slice of codes, the codes are covered up by the selection color! I have tested with the default theme of Jupyet Lab (Dark, Light), this problem does not occur. Is there any way to fix this issue?

Thank you

Fix zoom size

@cenkt noted in #5 that the custom themes generally have a smaller font size than the default themes. This should be fixed for consistency.

Solarized dark looks dumb

I'm not even going to dignify this with a screenshot to avoid embarrassing myself. But it needs some work.

Outrun looks dumb

I'm not even going to dignify this with a screenshot to avoid embarrassing myself. But it needs some work.

widget font colour

I really like these themes, but in the dark ones I can't see font labels for widgets (from holoviz/panel). Is there a quick way to set the font colour? I don't know css much, and it wasn't obvious to me what to change.

Any supports for pypi?

Your guys' themes are really really really fascinating, but I'm new to js and my env is not suitable for npm installation or related. So I wonder if there any supports for pypi installation That would really help.

Statusbar disappear

In default themes (e.g. JupyterLab Dark), there exist a status bar below the jupyterlab UI.
It disappeared when I switch to gruvbox dark and light themes

Provide pre-built packages for jlab 3

Supposedly it's now possible to pre-build extensions in jupyterlab 3 so you don't have to rebuild the entire application when you install some css for themes. I gotta explore how to make that happen!

[ JL v3.1.10 ] Status bar disappears on theme change

Status bar at bottom disappears after switching from built-in theme (JupyterLab Light/Dark) to installed theme, re-appears after switching back to built-in theme. Tested one-dark, nord, and solarized-dark. No error messages.

jupyter core     : 4.7.1
jupyter-notebook : 6.4.3
qtconsole        : not installed
ipython          : 7.27.0
ipykernel        : 6.3.1
jupyter client   : 7.0.2
jupyter lab      : 3.1.10
nbconvert        : 6.1.0
ipywidgets       : 7.6.4
nbformat         : 5.1.3
traitlets        : 5.1.0

Improve plotting for most dark themes

Currently light themes work well with plotting because axis text is legible. For most of these themes it seems that the plot background is not getting changed to something lighter. An example of a bad scheme (gruvbox-dark):

image

And the better behavior (nord):

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.