Juno 4.1 is here — Python 3.13, an AI coding assistant, projects, a REPL, and native iOS APIs. Editing is free, running code is free to try — Pro is a one-time purchase.
Zero-setup Python IDE that runs your code offline, an AI coding assistant, and a developer toolbox — in a first-class citizen app for iPad and iPhone.
Juno is designed to cover all your Python coding needs, supporting both Python scripts (.py) and Jupyter notebooks (.ipynb) — a document format focused on applying Python to data analysis and computational science.
FREE FEATURES
- Navigate and manage files and folders, quickly preview documents and media
- Browse and edit Jupyter notebooks in a powerful, customizable notebook editor with beautifully rendered previews — editing is free
- Write and edit code sources, scripts, JSON, XML, and other text-based formats — one versatile editor for code and text alike, with syntax highlighting
- Add quick access bookmarks for file system locations outside the app's sandbox, or simply open documents in place
PRO FEATURES
Only one thing in Juno is Pro: running code. Even that is free to try — a generous trial allowance lets you run notebooks, scripts, projects, and the REPL before you buy. After the trial, running code unlocks with a one-time Pro purchase — not a subscription.
- Run Jupyter notebooks, Python scripts, and whole projects locally with the built-in Python 3.13 interpreter and a full suite of up-to-date, preinstalled scientific and data packages — entirely offline
- Explore interactively in a Python REPL — open a standalone prompt, or drop into it after running a script or project to keep exploring what it defined
- Search the variables, functions, and imports in your session with the Object Inspector — no need to print each one
- Open any folder as a project: file tree, multiple editor tabs, run any script, with a coding assistant aware of the whole project
- Keep side outputs — Preview, Browser, Console, Object Inspector — open as side-by-side tabs in an output sidebar
- View local web servers and HTML your code produces in a built-in browser with developer debug tools
- Long-running scripts and Jupyter sessions keep going in the background
- Automate with Shortcuts and Siri: App Intents run a Python file, run Python code, or open a file — pass arguments and files, capture output, and chain actions
- Leverage powerful data analysis, machine learning and developer tools: NumPy, pandas, Matplotlib, SciPy, Scikit-learn, OpenCV, LXML, and more
- Enjoy painless package management: install any pure Python package with an intuitive package manager
AI CODING ASSISTANT
The assistant runs on your key, not ours: add your OpenAI, Anthropic, or Gemini API key, and requests go straight from your device to your provider. You control what you spend and share — Juno never takes a cut.
PYTHON MEETS iOS
Reach native iOS APIs straight from Python with the built-in juno modules: clipboard, Keychain, device info, location, motion sensors, contacts, reminders, photos, sound, notifications, sharing, and Bluetooth. Show native alerts and pickers, present full-screen image, video, and web previews, or call into UIKit, Foundation, and any Objective-C framework via the Objective-C bridge.
PYTHON SCRIPTS
Python scripts are plain-text Python source code files with a .py extension. Juno lets you work on these with snappy, intelligent code completion, a console with full terminal emulator support, and a built-in media viewer for code-generated images, plots, web apps, and more — executed by the embedded Python interpreter, locally on your iPhone or iPad and completely offline.
JUPYTER NOTEBOOKS
A Jupyter notebook is a versatile document format that stores live code, markdown text, plots, images, and LaTeX equations in a single .ipynb file. Notebooks keep a record of every input and output of an interactive session, embedding rich output (HTML, images, video, plots) right in the document — a perfect playground for data analysis, machine learning, and computational science, and Juno makes working with them a breeze!
I recently started using a bluetooth keyboard with my iPad 11 pro, an I noticed that when I try to type the page advanced to the top of the screen. Which makes it difficult to type as I’m not able to see what I type. Can this be fixed.
Developer Response
Apologies for a late reply — this has been resolved in the recent Juno releases.
The joy of doing Data Science on iPad
Prteek
The Juno apps are by far the most helpful tools in my Data Science workflow. Since I pretty much work by myself and like the flexibility to just start prototyping an idea without having to switch back and forth between devices (and needing to carry many of them), Juno comes in very handy. I am just waiting for Scikit-learn to make it to Juno until then switching back and forth between Juno and Connect is anyway no problem. Integration with git using Working copy works like a charm (and highly recommended). Surprisingly iPad is able to handle computations very well and I haven’t struggled with the app or iPad (7th gen) resource constraints. I see this app as a very good model for device convergence, doing such a marvellous job at putting beautiful iPad touch interface to use for service like Jupyter.Kudos !!
Fantastic. An iPad native jupyter notebook that runs offline
StopHasslingMe
Quite an impressive application. If you’re using Jupyter notebooks, it makes your iPad a lovely environment to work with them in. Everything happens on device, so you’re not connecting to a remote server that may or may not need updating, tweaking, and faffing with.It consumes notebooks from any document storage provides on the iPad, so if a third party applications exposes storage to Files, you can work with them. The Working Copy git client provides this functionality, so you can have an iPad-based Jupyter Notebook server with git tracking working seamlessly side by side.My only criticism is that it often seems to need to restart the running notebook when switching between applications, but this hasn’t happened so much when you have those applications running side-by-side. I suspect this is more a matter of iPad memory management than an issue with this application.I would recommend this as a first-class Jupyter Notebook solution - probably the best way of using them on the iPad. I’m still quite astounded this exists at all, let alone how good and well integrated it is into iPad OS.
Nice to have Jupyter notebooks on my iPad
c93j2922lk
Overall the running of Python scripts and Jupyter notebooks works very well. In fact, the app would be worth the money just for the Jupyter notebooks. However, the user experience for me was a bit of a let down. I keep getting little problems like auto indents going to the wrong place, eapecially after two finger cursor moving gestures over the keyboard, and sometimes the cursor going off a few lines when I tap to place the cursor, which require me to exit and reopen the app. Plus navigating back to the project/file list can be unintuitive and frustrating especially in portrait view (perhaps because I have an iPad Mini). I do like this app though, I just think the dev could spend a bit more time coding with it so it becomes a bit more polished.
Developer Response
Thank you for the thoughtful feedback! I'm working on addressing these issues in Juno 4.0, which is in beta right now. Ping me at help@juno.sh and I'll add you to TestFlight if you'd like to give it a go.
What's New in Juno 4.1.4:
HTML files now open in a live web view: pages run their JavaScript and load their own stylesheets, images, and scripts. This update also fixes installing certain packages from source, moving files in the project tree, and a range of stability issues.
Juno 4 is our biggest update yet — here's everything new.
CODING ASSISTANT
– Code alongside an AI assistant in your notebooks and scripts. Bring your own OpenAI, Anthropic, or Gemini API key and stay in full control of your data and usage.
PYTHON 3.13
– The built-in environment now runs Python 3.13, with every bundled package — NumPy, pandas, SciPy, Matplotlib, OpenCV, and more — updated along with it.
NEW WAYS TO RUN
– Python REPL: run code interactively at a prompt — standalone, or drop in after running a script or project.
– Project mode: open a folder as a project with a file tree, multiple editor tabs, and a project-aware assistant.
– Object Inspector: browse the variables, functions, and imports defined in your session.
– Output sidebar: keep previews, the console, a browser, and the inspector side by side.
PYTHON MEETS iOS
– New juno modules reach the clipboard, Keychain, device info, location, motion, contacts, reminders, photos, sound, notifications, sharing, and Bluetooth — plus native dialogs, full-screen previews, and an Objective-C bridge.
– Run Python files and code from Shortcuts and Siri, and keep long-running scripts and sessions going in the background.
MORE
– A built-in browser for local web servers and HTML, with view-source and console-log forwarding.
– One editor for code and text, with syntax highlighting and the coding assistant for both.
– Faster package search, collapsible cells, auto-scrolling notebooks, a customizable keyboard toolbar, redesigned settings, and a wide range of fixes and polish.
Editing notebooks and files is now free. Running code is a Pro feature — and you can try it, and every other Pro feature, free before you buy.
Version 4.1.4
The developer, Rational Matter, indicated that the app’s privacy practices may include handling of data as described below. For more information, see the developer’s privacy policy .
Data Not Linked to You
The following data may be collected but it is not linked to your identity:
Usage Data
Diagnostics
Privacy practices may vary based, for example, on the features you use or your age. Learn More
Accessibility
The developer has not yet indicated which accessibility features this app supports. Learn More
Information
Provider
Rational Matter Ltd
Size
692.2 MB
Category
Developer Tools
Compatibility
Requires iOS 17.0 or later.
iPhone Requires iOS 17.0 or later.
iPad Requires iPadOS 17.0 or later.
Apple Vision Requires visionOS 1.0 or later.
Languages
English and 7 more
English, French, German, Japanese, Russian, Simplified Chinese, Spanish, Traditional Chinese