Coder Social home page Coder Social logo

Theming about marimo HOT 8 OPEN

TobiasEnergyMachines avatar TobiasEnergyMachines commented on August 25, 2024 2
Theming

from marimo.

Comments (8)

TobiasEnergyMachines avatar TobiasEnergyMachines commented on August 25, 2024 2

Sounds great!

I would also add:

  • Coloring for headings and text in general
  • Accordion heading and text styling with color, font-family and font-size
  • Tabs styling with color, font-family and font-size
  • More color options than (light, dark) for backgrounds

from marimo.

mscolnick avatar mscolnick commented on August 25, 2024

For anyone that comes to this issue, please list of the things you would like themed. Let me know if i am missing anything:

primaryBackgroundColor: (light, dark)
primaryForegroundColor: (light, dark)

accentBackgroundColor: (light, dark)
accentForegroundColor: (light, dark)

backgroundColor: (light, dark)
foregroundColor: (light, dark)

font
fontSize
headingFont
headingFontSize

favicon

from marimo.

maphew avatar maphew commented on August 25, 2024

Yeah, the heading formatting is so subdued they're not headings at all. I'm getting pushback from my teammate, an experienced Jupyter user, because the out of box experience visually is meh.

image

image

from marimo.

dmadisetti avatar dmadisetti commented on August 25, 2024

Direct HTML should be stylable in output, but markdown output looks very different from what you posted:

image

That being said, I wouldn't mind a san-serif styling. I wonder if there are any themes that marimo could directly hook into, to take the burden of trying to support theming directly. Maybe something like this? https://github.com/mkdocs/catalog

from marimo.

maphew avatar maphew commented on August 25, 2024

Ah yes, markdown defaults are better. Weird that html with no inline style is so different. Unfortunately md can't use f-strings.
image

Sooo, back to the main thread: how to get at the styles without forcing inline css styling?

(love your "Cariboos" btw! we should use that.)

from marimo.

akshayka avatar akshayka commented on August 25, 2024

Ah yes, markdown defaults are better. Weird that html with no inline style is so different. Unfortunately md can't use f-strings

@maphew , markdown can indeed use f-strings -- use mo.md directly for that. There are many examples of using f-strings with marimo in our documentation and built-in tutorials (marimo tutorial markdown): https://docs.marimo.io/guides/outputs.html#markdown

You can toggle a "markdown" cell to the underlying Python by clicking on the Python button in the top-right of the cell area. After that, you can manually insert an f. We started with the markdown editor using mo.md(f"..."), but there were too many edge cases to get that right.

I am open to having a dropdown on the markdown editor that lets you choose whether a markdown cell is a regular Python string or an f-string.

EDIT: Link to additional documentation showing how to toggle the markdown editor on/off:

https://docs.marimo.io/guides/outputs.html#markdown-editor

from marimo.

maphew avatar maphew commented on August 25, 2024

Ah yes, markdown defaults are better. Weird that html with no inline style is so different. Unfortunately md can't use f-strings

@maphew , markdown can indeed use f-strings -- use mo.md directly for that. ...

Ah, thanks! I'm happy to be corrected and sorry for the noise for what is evident if I'd read more widely.

A drop down or toggle to switch between mo.md(r'''...''') and mo.md(f'''...''') sounds like a good idea. For now using ctrl-shift-m twice in a row is convenient enough -- with the caveat that this is a oneway gate.

from marimo.

maphew avatar maphew commented on August 25, 2024

I've hidden my parts of the sub-thread on how to use f-strings in markdown as off-topic, to keep focus on the main idea:
how to get at and modify the stylesheets.

from marimo.

Related Issues (20)

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.