Looks cool! Have you looked into WASM? Something like a jupyterlite [0] alternative for marimo? And are there plans to integrate linting and formatting with ruff? [1] [0] https://jupyterlite.readthedocs.io/en/stable/ [1] https://github.com/astral-sh/ruff (ruff format is almost 100% compatible with black formatting)
We started looking into WASM this week, and did some light exploratory coding toward it. It's on our roadmap: https://marimo-team.notion.site/The-marimo-roadmap-e5460b9f2... A ruff integration is a great idea. I'll add it to the roadmap.
Show HN: Marimo – an open-source reactive notebook for Python
21–30 of 110 posts
Re: Show HN: Marimo – an open-source reactive notebook for Python
#22Unfortunately, I'm quite used to very specific vim keybindings in Jupyter (https://github.com/lambdalisue/jupyter-vim-binding) that make it pretty hard to use anything else :/
Re: Show HN: Marimo – an open-source reactive notebook for Python
#23https://soltech.com/blogs/blog/how-to-care-for-your-marimo-m...
Re: Show HN: Marimo – an open-source reactive notebook for Python
#24Earlier quoted context omitted.
Yes, the second half of reproducibility is for sure packages. A solution for reproducible environments is on our roadmap ( https://marimo-team.notion.site/The-marimo-roadmap-e5460b9f2... ), but we haven't quite figured it out yet. It's a bit challenging because Python has so many different solutions for package management. If you have any ideas we'd love to hear them.
People always complain about pip and python packaging but it’s never been an issue for me. I create a requirements.base.txt that has the versions of things I want installed. I then: pip freeze -r requirements.base.txt > requirements.txt Install is then simply: pip install -r requirements.txt Updating / installing something new is a matter of adding to the base file and then refreezing.
And it does not account for dependincies version conflicts which life very hard.
Re: Show HN: Marimo – an open-source reactive notebook for Python
#25Earlier quoted context omitted.
People always complain about pip and python packaging but it’s never been an issue for me. I create a requirements.base.txt that has the versions of things I want installed. I then: pip freeze -r requirements.base.txt > requirements.txt Install is then simply: pip install -r requirements.txt Updating / installing something new is a matter of adding to the base file and then refreezing.
There are several problems with this approach, notably you don't get information about specific platform stuff. You don't get information on how these package are installed (conda, mamba..etc). And it does not account for dependincies version conflicts which life very hard.
If you have conflicts then you have to reconcile those at point of initial install - pip deals with that for you. I’ve never had a situation in 15 years of Python packages where there wasn’t a working combination of versions.
These are genuine questions btw. I see these common complaints and wonder how I’ve not ever had issues with it.
Re: Show HN: Marimo – an open-source reactive notebook for Python
#26Marimo kind of takes the reactive widgets of streamlit and brings them back into a notebook-like UI, and provides a way to export the notebooks into shareable apps.
Re: Show HN: Marimo – an open-source reactive notebook for Python
#27Re: Show HN: Marimo – an open-source reactive notebook for Python
#28You've solved that incredibly well!
I also really like that the Marimo file format is just Python. Here's an example saved file from playing around with the intro: https://gist.github.com/simonw/e6e6e4b45d1bed9fc1482412743b8...
Nice that it's Apache 2 licensed too.
Wow, I just found the GitHub Copilot feature too!
Re: Show HN: Marimo – an open-source reactive notebook for Python
#29Looks cool. This is kind of like streamlit, which (I think) tried to escape the limitations of notebooks by giving you an API to quickly make a shareable app with sliders/charts etc. (Yet it retains some notebook concepts like 'cells'). Marimo kind of takes the reactive widgets of streamlit and brings them back into a notebook-like UI, and provides a way to export the notebooks into shareable apps.