Show HN: A modern Jupyter client for macOS
Satyrn is a Jupyter client for Mac with fast startup, context-aware prompts, minimalist design, and a modern command palette. It supports Black code formatting, easy graph/table copying, and seamless virtual environment management. User-friendly, it directly handles ipynb files, detects kernels, and needs no setup.
Read original articleThe text describes Satyrn, a modern Jupyter client designed for Mac users. It offers a faster startup compared to VS Code and JupyterLab, context-aware prompt cells for code generation, a minimalist design for uninterrupted workflow, and a modern command palette for efficient task completion. Satyrn supports Black code formatting for organization, allows easy copying of graphs and tables, and facilitates the addition of new virtual environments through its kernel manager. The client is user-friendly, as it works with all ipynb files directly from the Finder, automatically detects existing kernels, and requires no setup - users can simply download the app and start coding.
Related
How to Use Jupyter Notebooks: The Ultimate Guide – DataCamp
Jupyter notebooks are crucial for technical and data work, offering code, output, and text in one document. DataLab, a hosted service, enhances collaboration and database connectivity. Popular among data professionals, they come in hosted and local types, with DataLab providing a user-friendly hosted option.
Open-Sora does pretty good video generation on consumer GPUs
To access Jupyter notebooks in the specified environment, start an instance by clicking the top right button. This step is essential for accessing Jupyter within the environment.
Maker of RStudio launches new R and Python IDE
Posit introduces Positron, a new beta IDE merging R and Python development. Built on Visual Studio Code, it offers a user-friendly interface, data exploration tools, and seamless script running for polyglot projects.
Chr – terminal editor inspired by Turbo Pascal editor from 1997
A terminal-based text editor "chr" on GitHub mimics desktop editors' shortcuts, blending modern GUI with retro text mode. Developed with Tui Widget, it welcomes contributions. Installation involves cloning, building, and compiling.
Show HN: Adding Mistral Codestral and GPT-4o to Jupyter Notebooks
Pretzel is an open-source tool enhancing Jupyter with AI code generation, inline tab completion, sidebar chat, and error fixing. Seamless transition from Jupyter is possible, maintaining compatibility. Installation via 'pip install pretzelai'.
Adding something like built in .venv support and even python distribution would be immense (I'm thinking of a dream scenario where installing something like this gives a beginner all the tools to get up and running python notebooks with) any plans for that on the roadmap?
Excited to play around with this!
Surprised to hear you started with a native UI and pivoted to electron. What was the major blocker there?
I recently got frustrated with OpenSCAD and decided to try CadQuery and Build123d. The modeling backend is a big step forward, but the GUI is not nearly as good as OpenSCAD. I managed to get it working via VSCode with a plugin, but I’m dreaming of embedding everything in a dedicated MacOS app so I can jump into CAD work without hacking through dev setup.
Is your project related to these two other "Satyrn"s ??
Satyrn: A Notebook alternative that supports branching code and local collaboration. https://github.com/CharlesAverill/satyrn
Satyrn: A Platform for Analytics Augmented Generation https://arxiv.org/abs/2406.12069
Feature request: If I drag a tabular file (e.g. CSV, parquet, etc.) into the UI, do something like:
temp1 = pd.read_csv('path_to_file')
temp1.head()
Good luck with it!It would be great if you asked the user before doing this. My environments are usually managed by one of poetry or pipenv or nix, not pip. Which means now my lock files and installed stuff is out of sync.
Is this loading the same webpage whatever JupyterLab is serving or did you write the JavaScript machinery for cell management etc yourself?
If the latter, are interactive plotly graphs or IPython widgets on your radar?
I also hope you’re able to add something about the business model soon.
I was scared about doing it this way, but it worked out for me: https://videohubapp.com/ for pay-what-you-want-$5-minimum for my app, and https://github.com/whyboris/Video-Hub-App git-clone-and-build for the code. I currently sell about 60 copies per month (same average across the last 4 years too).
Will your tool allow custom key bindings?
Good luck to you though, I do think the demographics of scientists who find VSCode confusing is actually sizeable.
I found it quite painful to point it to a couple of environments I have, and confusing how i get it pointing to my gpt4 api keys. Once I did these two I was not sure how to prompt rather than typing a command.
Good luck with this, don't mean this in a critical way, just trying to give some feedback of what I think when I first try it.
Would love to see this adopt the document-based app API and the toolbar API.
I feel I did not understand the main advantages of this notebook aside from the AI integration. I don't understand how "start-up" time is a cost; I have a Jupyter server running at all times and use it as a scratch-pad throughout the day, so it is always available.
I don't understand the "modern command palette". As far as I can tell all the commands are available to regular Jupyter Labs, and either way I always use hotkeys for them.
The code formatting using black isn't bad, but notebooks are for scratchy ideas, not real code. If I'm at the point of formatting code, it's going in an actual IDE. I'd even argue providing formatting inside of a notebook encourages bad habits for scientists, who prefer to stay entirely within a notebook, but are then sometimes unable to reproduce their results.
I don't see the advantage of the copy-paste; I can copy paste directly from Labs to Slack/online editing pages, and certain Latex typesetters.
Pros: it looks pretty, the site has nice demo videos (in terms of quality; I didn't understand the content).
I want to like this but I don't see any benefits for a power user except for the AI integration; if AI is the only selling point then I prefer to get it differently.
I'm not sure if the post text above is visible (I can't see it on my phone's HN reader) so I'm going to repost it here as a comment too:
I love Jupyter – it's how I learned to code back when I was working as a scientist. But I was always frustrated that there wasn't a simple and elegant app that I could use with my Mac. I made do by wrapping JupyterLab in a chrome app, and then more recently switching to VS Code to make use of Copilot. I've always craved a more focused and lighter-weight experience when working in a notebook. That's why I created Satyrn. It starts up really fast (faster time-to-execution than VS Code or JupyterLab), you can launch notebooks right from the Finder, and the design is super minimalist. It's got an OpenAI integration (use your own API key) for multi-cell generation with your notebook as context (I'll add other LLMs soon). And many more useful features like a virtual environment management UI, Black code formatting, and easy image/table copy buttons.
Full disclosure: it's built with Electron. I originally wrote it in Swift but couldn't get the editor experience to where I wanted it. Now it supports autocomplete, multi-cursor editing, and moving the cursor between cells just like you'd expect from JupyterLab or VS Code.
Satyrn sits on top of the jupyter-server, so it works with all your existing python kernels, Jupyter configuration, and ipynb files. It only works with local files at the moment, but I'm planning to extend it to support remote servers as well.
I'm an indie developer, and I will try to monetize at some point, but it's free while in alpha. If you're interested, please try it out!
I'd love your feedback in the comments, or you can contact me at jack-at-satyrn-dot-app.
The interface is sleek, the language server and debugger are built in (so completions, variable renaming, step-by-step debugging etc. all work seamlessly) and it makes Jupyter a pleasure to use.
- vim on the left half of the screen, a jupyter QtConsole on the right, showing any plots, possibly interactive.
- the kernel on the jupyter QtConsole can be running on a powerful remote host, e.g., with GPU, but the plots are displayed locally
- Focused window is always vim. From vim editing a .py and without ever leaving vim or touching the mouse, one connects once to the jupyter kernel of the QtConsole. Then one can send a selection of lines, or vim text objects, to be evaluated in the QtConsole with a few keystrokes. Code is shown+evaluated and plots are displayed in the QtConsole as if the code sent from vim had been typed there.
One gets the full power of both vim and jupyter kernels with native plots. No more browser based notebooks or other editors with half-baked vim bindings.
I guess I'm old school and am used to cutting and pasting and running things in my own terminal, so I'm wondering if there are added benefits that I'm not aware of of Jupyter notebooks. It seems to have a very loyal following so I would love to learn their perspective!
Related
How to Use Jupyter Notebooks: The Ultimate Guide – DataCamp
Jupyter notebooks are crucial for technical and data work, offering code, output, and text in one document. DataLab, a hosted service, enhances collaboration and database connectivity. Popular among data professionals, they come in hosted and local types, with DataLab providing a user-friendly hosted option.
Open-Sora does pretty good video generation on consumer GPUs
To access Jupyter notebooks in the specified environment, start an instance by clicking the top right button. This step is essential for accessing Jupyter within the environment.
Maker of RStudio launches new R and Python IDE
Posit introduces Positron, a new beta IDE merging R and Python development. Built on Visual Studio Code, it offers a user-friendly interface, data exploration tools, and seamless script running for polyglot projects.
Chr – terminal editor inspired by Turbo Pascal editor from 1997
A terminal-based text editor "chr" on GitHub mimics desktop editors' shortcuts, blending modern GUI with retro text mode. Developed with Tui Widget, it welcomes contributions. Installation involves cloning, building, and compiling.
Show HN: Adding Mistral Codestral and GPT-4o to Jupyter Notebooks
Pretzel is an open-source tool enhancing Jupyter with AI code generation, inline tab completion, sidebar chat, and error fixing. Seamless transition from Jupyter is possible, maintaining compatibility. Installation via 'pip install pretzelai'.