CINXE.COM
marimo - The next-generation Python notebook | Product Hunt
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1"/><link rel="preload" as="image" href="/widgets/embed-image/v1/chart-votes.svg?post_id=588585"/><link rel="preload" as="image" href="/widgets/embed-image/v1/chart-comments.svg?post_id=588585"/><link rel="stylesheet" href="/_next/static/css/995723523c94c0f2.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/1ea9739f23a3b69e.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/38f7d385ab6d9f22.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/b88e86162ffe7c55.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/c99d6c2024146960.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/639ca35bc51610d3.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/1571eeb1adaac6eb.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/dfb8dd372860f727.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/52c78cbf7408e1af.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/6cc9c7cd07516c52.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/6a29de96c920f097.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/657f667ef8d3f7dc.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/4284c6d814dea4e8.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/0a0d922ec8281d19.css" as="style" data-precedence="dynamic"/><link rel="stylesheet" href="/_next/static/css/b0e0dd11aa1ac818.css" as="style" data-precedence="dynamic"/><link rel="stylesheet" href="/_next/static/css/006228bc07977ccd.css" as="style" data-precedence="dynamic"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-f10c1c82552cb238.js"/><script src="/_next/static/chunks/fd9d1056-96a9c9a805849b31.js" async=""></script><script src="/_next/static/chunks/19948-c36f71a920d62304.js" async=""></script><script src="/_next/static/chunks/main-app-b33ad6968a35f0dc.js" async=""></script><script src="/_next/static/chunks/53877-51c4a285eb192ef0.js" async=""></script><script src="/_next/static/chunks/46403-e33a58cdfbb894e8.js" async=""></script><script src="/_next/static/chunks/58056-751c28e77ae5a19a.js" async=""></script><script src="/_next/static/chunks/87138-0346ed4de56c8f41.js" async=""></script><script src="/_next/static/chunks/48191-5065c49d069bd01c.js" async=""></script><script src="/_next/static/chunks/14604-45e3a9aa74635210.js" async=""></script><script src="/_next/static/chunks/55579-59b56c16d22d5e09.js" async=""></script><script src="/_next/static/chunks/94531-936a58903208c445.js" async=""></script><script src="/_next/static/chunks/7851-391d4a68ffe47521.js" async=""></script><script src="/_next/static/chunks/28051-6c99bb1ef2e7af63.js" async=""></script><script src="/_next/static/chunks/23714-107263d1137b8b64.js" async=""></script><script src="/_next/static/chunks/65777-3de4ee3a8101d13d.js" async=""></script><script src="/_next/static/chunks/50634-a6b23532a6b29b55.js" async=""></script><script src="/_next/static/chunks/50570-f5cbfddf7e09b62f.js" async=""></script><script src="/_next/static/chunks/69558-1b9bff93d908a3d5.js" async=""></script><script src="/_next/static/chunks/63761-17f7fa9792e0fc0c.js" async=""></script><script src="/_next/static/chunks/2934-e092570a1d425008.js" async=""></script><script src="/_next/static/chunks/86996-f19689892afa988b.js" async=""></script><script src="/_next/static/chunks/app/(main)/layout-35d187729779b08c.js" async=""></script><script src="/_next/static/chunks/74468-913b2d3a1cd26fb3.js" async=""></script><script src="/_next/static/chunks/app/(main)/not-found-7ecd9d628a6c3e70.js" async=""></script><script src="/_next/static/chunks/1997-8c211c482f7f1b80.js" async=""></script><script src="/_next/static/chunks/87620-cdf22e94cf823402.js" async=""></script><script src="/_next/static/chunks/17436-7d847d18b236a58e.js" async=""></script><script src="/_next/static/chunks/app/layout-8cb71c97b1bd48a2.js" async=""></script><script src="/_next/static/chunks/app/(cards)/layout-ed869996799e05ab.js" async=""></script><script src="/_next/static/chunks/25058-f2b5f735f386b605.js" async=""></script><script src="/_next/static/chunks/app/global-error-3a6f51a8df7af95d.js" async=""></script><script src="/_next/static/chunks/18489-27cb2cd16662f495.js" async=""></script><script src="/_next/static/chunks/28183-d2b5c7881649326f.js" async=""></script><script src="/_next/static/chunks/44207-413f8ddf3bf8d73a.js" async=""></script><script src="/_next/static/chunks/85253-f8be5dd1b3c0f4dd.js" async=""></script><script src="/_next/static/chunks/41790-d16b26401942af4f.js" async=""></script><script src="/_next/static/chunks/39496-cf718729701e27bd.js" async=""></script><script src="/_next/static/chunks/app/(main)/posts/%5Bslug%5D/page-f9cfc164c5848311.js" async=""></script><link rel="preload" href="https://www.googletagmanager.com/gtag/js?id=G-WZ46833KH9" as="script"/><link rel="preload" href="https://www.googletagmanager.com/gtm.js?id=G-WZ46833KH9" as="script"/><meta property="fb:app_id" content="1467820943460899"/><link rel="search" type="application/opensearchdescription+xml" title="ProductHunt" href="/osd.xml"/><meta name="theme-color" content="#ffffff"/><title> marimo - The next-generation Python notebook | Product Hunt</title><meta name="description" content="marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor."/><link rel="author" href="https://www.producthunt.com/@themylesfiles"/><meta name="author" content="Myles Scolnick"/><link rel="manifest" href="/manifest.json" crossorigin="use-credentials"/><meta name="fb:app_id" content="1467820943460899"/><link rel="alternate" type="application/atom+xml" title="Product Hunt - All newest Products" href="https://www.producthunt.com/feed"/><meta property="og:title" content=" marimo - The next-generation Python notebook | Product Hunt"/><meta property="og:description" content="marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor."/><meta property="og:url" content="https://www.producthunt.com/posts/marimo"/><meta property="og:site_name" content="Product Hunt"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format&fit=crop&frame=1&h=512&w=1024"/><meta property="og:type" content="article"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@producthunt"/><meta name="twitter:creator" content="@themylesfiles"/><meta name="twitter:title" content=" marimo - The next-generation Python notebook | Product Hunt"/><meta name="twitter:description" content="marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor."/><meta name="twitter:image" content="https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format&fit=crop&frame=1&h=512&w=1024"/><link rel="icon" href="https://ph-static.imgix.net/ph-favicon-brand-500.ico?auto=format"/><link rel="apple-touch-icon-precomposed" href="https://ph-static.imgix.net/ph-ios-icon.png?auto=format"/><link rel="chrome-webstore-item" href="https://producthunt.app.link/extension"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script><script>(window[Symbol.for("ApolloSSRDataTransport")] ??= []).push({"rehydrate":{":R1kq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R5kq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R8ocutkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R18cutkq:":{"data":undefined,"loading":true,"networkStatus":1,"called":true},":R9ocutkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":Ra8cutkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":Rkutkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":Rsutkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R14utkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R1kutkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R2sutkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R34utkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R3cutkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R1dkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":R1tkq:":{"data":{},"complete":false,"missing":"Dangling reference to missing Viewer object"},":Rccutkq:":{"data":{"viewer":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}}},"networkStatus":7},":RccutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R37rrqkutkq:":{"data":{"post":{"__typename":"Post","id":"588585","slug":"marimo","name":"marimo","trashedAt":null,"launchState":"featured","isArchived":false,"embargoPreviewAt":null,"product":{"__typename":"Product","id":"700475","slug":"marimo","passedOnePost":false,"name":"marimo","postsCount":1,"reviewsCount":7,"reviewersCount":7,"reviewsRating":5,"isMaker":false,"reviewers":{"__typename":"UserConnection","edges":[{"__typename":"UserEdge","node":{"__typename":"User","id":"829475","username":"vincent_warmerdam","name":"Vincent Warmerdam","avatarUrl":"https://ph-avatars.imgix.net/829475/eb9936db-a462-48a1-9e81-856fea2e62b4.jpeg"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"7837118","username":"dmadisetti","name":"Dylan Madisetti","avatarUrl":"https://ph-avatars.imgix.net/7837118/fca87522-0eba-4533-951e-1b19480d967a.png"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"6825053","username":"faraz_abidi","name":"Faraz Abidi","avatarUrl":"https://ph-avatars.imgix.net/6825053/fb7d3cff-7bf9-4b0c-983c-8b02c4cacfdd.png"}}]},"canEdit":false,"followersCount":265,"activeUpcomingEvent":null,"upcomingBannerFollowers":{"__typename":"UserConnection","edges":[{"__typename":"UserEdge","node":{"__typename":"User","id":"18280","name":"Chris Messina","username":"chrismessina","avatarUrl":"https://ph-avatars.imgix.net/18280/f49f2882-55cd-4279-add0-7761638c8104.png"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"128979","name":"Thiago Araujo","username":"todearaujo","avatarUrl":"https://ph-avatars.imgix.net/128979/f7feb4c8-65e3-4e26-b963-d6f9fa458d2d.jpeg"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"9355","name":"Vlad Arbatov","username":"vladzima","avatarUrl":"https://ph-avatars.imgix.net/9355/89bf60d8-1570-4ef9-a976-2aa35a12907a.jpeg"}}]},"viewerReview":null,"tagline":"The next-generation Python notebook","logoUuid":"b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png","isNoLongerOnline":false,"url":"https://www.producthunt.com/products/marimo","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with Git, share as interactive web apps, and execute as Python scripts. All in a modern, AI-powered editor.","topics":{"__typename":"TopicConnection","edges":[{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"267","slug":"developer-tools","name":"Developer Tools"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"268","slug":"artificial-intelligence","name":"Artificial Intelligence"}}]},"isSubscribed":false,"isMuted":false,"websiteUrl":"https://marimo.io","websiteDomain":"marimo.io","isClaimed":false,"canClaim":false,"isViewerTeamMember":null,"viewerPendingTeamRequest":null,"moderation":null,"firstPost":{"__typename":"Post","id":"588585","createdAt":"2024-11-19T00:01:00-08:00"},"cleanUrl":"marimo.io"},"targetedAd":null,"redirectToProduct":null,"tagline":"The next-generation Python notebook","dailyRank":"7","createdAt":"2024-11-19T00:01:00-08:00","description":"\u003cb\u003emarimo\u003c/b\u003e is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","pricingType":"free","isMaker":false,"featuredAt":"2024-11-19T00:01:00-08:00","topics":{"__typename":"TopicConnection","edges":[{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"267","slug":"developer-tools","name":"Developer Tools"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"268","slug":"artificial-intelligence","name":"Artificial Intelligence"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"272","slug":"github","name":"GitHub"}}],"totalCount":4},"scheduledAt":"2024-11-19T00:01:00-08:00","canCreateUpcomingEvent":false,"canViewUpcomingEventCreateBtn":false,"isHunter":false,"upcomingEvent":{"__typename":"UpcomingEvent","id":"70274","canEdit":false},"moderationReason":null,"user":{"__typename":"User","id":"18280","name":"Chris Messina","email":null,"username":"chrismessina","avatarUrl":"https://ph-avatars.imgix.net/18280/f49f2882-55cd-4279-add0-7761638c8104.png"},"makers":[{"__typename":"User","id":"210426","name":"Myles Scolnick","email":null,"username":"themylesfiles","avatarUrl":"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png"},{"__typename":"User","id":"7709330","name":"Akshay Agrawal","email":null,"username":"akshay_agrawal6","avatarUrl":"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png"}],"votesCount":229,"commentsCount":41,"weeklyRank":"35","canManage":false,"primaryLink":{"__typename":"ProductLink","id":"787407","url":"https://marimo.io"},"media":[{"__typename":"Media","id":"1868289","originalHeight":760,"originalWidth":1270,"imageUuid":"eda6b3b6-007f-417a-ae02-fa0db772a125.png","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1868288","originalHeight":760,"originalWidth":1270,"imageUuid":"91b82925-bba0-45ca-a993-cc64be1ea2a5.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849569","originalHeight":760,"originalWidth":1270,"imageUuid":"e3911b13-470a-4702-ac2c-81cf19507959.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849572","originalHeight":760,"originalWidth":1270,"imageUuid":"f7cc5350-6eed-418b-9570-44d11e6b25d9.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849571","originalHeight":760,"originalWidth":1270,"imageUuid":"ef1a79f0-4b07-4046-86a8-fa80add633e4.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849568","originalHeight":760,"originalWidth":1270,"imageUuid":"5ec348e7-70be-4122-bfb3-9581683a727c.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849612","originalHeight":760,"originalWidth":1270,"imageUuid":"6707e104-59cd-4872-a524-27c644e1521f.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849574","originalHeight":760,"originalWidth":1270,"imageUuid":"ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849570","originalHeight":760,"originalWidth":1270,"imageUuid":"34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1854601","originalHeight":1297,"originalWidth":1730,"imageUuid":"37620e3d-baad-4414-ab1e-fbb914d24233.gif","mediaType":"video","metadata":{"__typename":"MediaMetadata","url":"https://www.loom.com/share/301baaefba47458e915b5173c22ad59b?sid=4d5bf501-2eb9-4f34-9b7a-7f50088ed8ab","videoId":"301baaefba47458e915b5173c22ad59b","interactiveDemoId":null,"interactiveDemoType":null,"platform":"loom"}}],"shoutouts":[{"__typename":"PostShoutout","id":"92401","to":{"__typename":"Product","id":"110872","name":"GitHub","logoUuid":"c17453f9-e544-4e6a-86b0-4027cf710cf5.png","isNoLongerOnline":false,"tagline":"How people build software","path":"/products/github"},"note":"GitHub is the lifeblood of our community — it's where we all come together to collaborate on marimo, and it's how we share what we've built with others."},{"__typename":"PostShoutout","id":"97128","to":{"__typename":"Product","id":"409658","name":"Pyodide","logoUuid":"2ec5f1e9-972c-4fad-807d-f85d0fe3c928.png","isNoLongerOnline":false,"tagline":"Mozilla brings Python to the browser","path":"/products/pyodide"},"note":"Our free online playground (https://marimo.new) lets you run marimo notebooks entirely in the browser — no backend required! This is powered by the amazing Pyodide project, which is a port of CPython to WebAssembly."},{"__typename":"PostShoutout","id":"104143","to":{"__typename":"Product","id":"585328","name":"DuckDB","logoUuid":"2396d46b-2c67-4abe-9dca-3c123c88efac.png","isNoLongerOnline":false,"tagline":"rich, fast \u0026 open source.","path":"/products/duckdb"},"note":"Our built-in SQL cells are powered by duckdb, which makes it possible to execute blazingly fast queries against Python dataframes as well as external databases like SQLite and Postgres."},{"__typename":"PostShoutout","id":"101652","to":{"__typename":"Product","id":"586732","name":"Python.org","logoUuid":"f1a37595-dad1-4bd3-aeba-c4488e298ce7.png","isNoLongerOnline":false,"tagline":"The official home of the Python Programming Language","path":"/products/python-org"},"note":"marimo is notebook for Python, built using Python. Python's built-in AST module is what makes marimo's reactive runtime possible."},{"__typename":"PostShoutout","id":"101651","to":{"__typename":"Product","id":"733759","name":"uv","logoUuid":"74673618-d541-4cac-bba7-ded9379575bb.png","isNoLongerOnline":false,"tagline":"uv","path":"/products/uv"},"note":"marimo is reproducible down to the packages thanks to uv, an extremely fast package manager for Python written in Rust. uv's implementation of Python's PEP 723 makes it possible for us to save package requirements in notebook files, and create temporary environments containing them on notebook startup."},{"__typename":"PostShoutout","id":"101657","to":{"__typename":"Product","id":"733794","name":"Narwhals","logoUuid":"1191bf3a-23f0-485e-ab31-335ca6b637e4.jpeg","isNoLongerOnline":false,"tagline":"Lightweight compatibility layer between dataframe libraries!","path":"/products/narwhals-3"},"note":"marimo has native support for many dataframe-like libraries, including Pandas, Polars, Ibis, and Pyarrow tables. We used to manually maintain glue code for all these libraries, which was difficult and error-prone. Narwhals let us delete all this code — we rely on narwhals for interchange between dataframe libraries, letting us focus on the core functionality of marimo instead."}],"isSubscribed":false,"structuredData":{"@context":"http://schema.org","@type":"WebApplication","name":"marimo","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","datePublished":"2024-11-07T11:01:42.390-08:00","dateModified":"2024-11-27T04:41:22.838-08:00","image":"https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=format","screenshot":["https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop","https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?auto=format\u0026fit=crop"],"operatingSystem":"Web","offers":{"@type":"Offer","price":0,"priceCurrency":"USD"},"applicationCategory":"Developer Tools","author":[{"@type":"Person","name":"Myles Scolnick","image":"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100","url":"https://www.producthunt.com/@themylesfiles"},{"@type":"Person","name":"Akshay Agrawal","image":"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100","url":"https://www.producthunt.com/@akshay_agrawal6"}]},"meta":{"__typename":"MetaTags","canonicalUrl":"https://www.producthunt.com/posts/marimo","creator":"@themylesfiles","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","image":"https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop\u0026frame=1\u0026h=512\u0026w=1024","mobileAppUrl":"producthunt://post/588585","oembedUrl":"https://www.producthunt.com/posts/marimo","robots":null,"title":"marimo - The next-generation Python notebook","type":"product","author":"Myles Scolnick","authorUrl":"https://www.producthunt.com/@themylesfiles"},"thumbnailImageUuid":"b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png","productState":"default","updatedAt":"2024-11-27T04:41:22-08:00","disabledWhenScheduled":true,"hasVoted":false,"isAvailable":true,"links":[{"__typename":"ProductLink","id":"787407","redirectPath":"/r/TNWEJEBUHUTKI6","storeName":"Website","websiteName":"marimo.io","devices":[]},{"__typename":"ProductLink","id":"787406","redirectPath":"/r/JGKEMPCGEWUHY3","storeName":"Github","websiteName":"github.com","devices":[]}],"badges":{"__typename":"Connection","edges":[]},"userId":"18280","url":"https://www.producthunt.com/posts/marimo","promo":null,"moderation":null}},"networkStatus":7},":R37rrqkutkqH1:":{"data":{"viewer":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}}},"networkStatus":7},":R37rrqkutkqH2:":{"data":{"post":{"__typename":"Post","id":"588585","slug":"marimo","name":"marimo","trashedAt":null,"launchState":"featured","isArchived":false,"embargoPreviewAt":null,"product":{"__typename":"Product","id":"700475","slug":"marimo","passedOnePost":false,"name":"marimo","postsCount":1,"reviewsCount":7,"reviewersCount":7,"reviewsRating":5,"isMaker":false,"reviewers":{"__typename":"UserConnection","edges":[{"__typename":"UserEdge","node":{"__typename":"User","id":"829475","username":"vincent_warmerdam","name":"Vincent Warmerdam","avatarUrl":"https://ph-avatars.imgix.net/829475/eb9936db-a462-48a1-9e81-856fea2e62b4.jpeg"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"7837118","username":"dmadisetti","name":"Dylan Madisetti","avatarUrl":"https://ph-avatars.imgix.net/7837118/fca87522-0eba-4533-951e-1b19480d967a.png"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"6825053","username":"faraz_abidi","name":"Faraz Abidi","avatarUrl":"https://ph-avatars.imgix.net/6825053/fb7d3cff-7bf9-4b0c-983c-8b02c4cacfdd.png"}}]},"canEdit":false,"followersCount":265,"activeUpcomingEvent":null,"upcomingBannerFollowers":{"__typename":"UserConnection","edges":[{"__typename":"UserEdge","node":{"__typename":"User","id":"18280","name":"Chris Messina","username":"chrismessina","avatarUrl":"https://ph-avatars.imgix.net/18280/f49f2882-55cd-4279-add0-7761638c8104.png"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"128979","name":"Thiago Araujo","username":"todearaujo","avatarUrl":"https://ph-avatars.imgix.net/128979/f7feb4c8-65e3-4e26-b963-d6f9fa458d2d.jpeg"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"9355","name":"Vlad Arbatov","username":"vladzima","avatarUrl":"https://ph-avatars.imgix.net/9355/89bf60d8-1570-4ef9-a976-2aa35a12907a.jpeg"}}]},"viewerReview":null,"tagline":"The next-generation Python notebook","logoUuid":"b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png","isNoLongerOnline":false,"url":"https://www.producthunt.com/products/marimo","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with Git, share as interactive web apps, and execute as Python scripts. All in a modern, AI-powered editor.","topics":{"__typename":"TopicConnection","edges":[{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"267","slug":"developer-tools","name":"Developer Tools"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"268","slug":"artificial-intelligence","name":"Artificial Intelligence"}}]},"isSubscribed":false,"isMuted":false,"websiteUrl":"https://marimo.io","websiteDomain":"marimo.io","isClaimed":false,"canClaim":false,"isViewerTeamMember":null,"viewerPendingTeamRequest":null,"moderation":null,"firstPost":{"__typename":"Post","id":"588585","createdAt":"2024-11-19T00:01:00-08:00"},"cleanUrl":"marimo.io"},"targetedAd":null,"redirectToProduct":null,"tagline":"The next-generation Python notebook","dailyRank":"7","createdAt":"2024-11-19T00:01:00-08:00","description":"\u003cb\u003emarimo\u003c/b\u003e is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","pricingType":"free","isMaker":false,"featuredAt":"2024-11-19T00:01:00-08:00","topics":{"__typename":"TopicConnection","edges":[{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"267","slug":"developer-tools","name":"Developer Tools"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"268","slug":"artificial-intelligence","name":"Artificial Intelligence"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"272","slug":"github","name":"GitHub"}}],"totalCount":4},"scheduledAt":"2024-11-19T00:01:00-08:00","canCreateUpcomingEvent":false,"canViewUpcomingEventCreateBtn":false,"isHunter":false,"upcomingEvent":{"__typename":"UpcomingEvent","id":"70274","canEdit":false},"moderationReason":null,"user":{"__typename":"User","id":"18280","name":"Chris Messina","email":null,"username":"chrismessina","avatarUrl":"https://ph-avatars.imgix.net/18280/f49f2882-55cd-4279-add0-7761638c8104.png"},"makers":[{"__typename":"User","id":"210426","name":"Myles Scolnick","email":null,"username":"themylesfiles","avatarUrl":"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png"},{"__typename":"User","id":"7709330","name":"Akshay Agrawal","email":null,"username":"akshay_agrawal6","avatarUrl":"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png"}],"votesCount":229,"commentsCount":41,"weeklyRank":"35","canManage":false,"primaryLink":{"__typename":"ProductLink","id":"787407","url":"https://marimo.io"},"media":[{"__typename":"Media","id":"1868289","originalHeight":760,"originalWidth":1270,"imageUuid":"eda6b3b6-007f-417a-ae02-fa0db772a125.png","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1868288","originalHeight":760,"originalWidth":1270,"imageUuid":"91b82925-bba0-45ca-a993-cc64be1ea2a5.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849569","originalHeight":760,"originalWidth":1270,"imageUuid":"e3911b13-470a-4702-ac2c-81cf19507959.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849572","originalHeight":760,"originalWidth":1270,"imageUuid":"f7cc5350-6eed-418b-9570-44d11e6b25d9.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849571","originalHeight":760,"originalWidth":1270,"imageUuid":"ef1a79f0-4b07-4046-86a8-fa80add633e4.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849568","originalHeight":760,"originalWidth":1270,"imageUuid":"5ec348e7-70be-4122-bfb3-9581683a727c.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849612","originalHeight":760,"originalWidth":1270,"imageUuid":"6707e104-59cd-4872-a524-27c644e1521f.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849574","originalHeight":760,"originalWidth":1270,"imageUuid":"ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849570","originalHeight":760,"originalWidth":1270,"imageUuid":"34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1854601","originalHeight":1297,"originalWidth":1730,"imageUuid":"37620e3d-baad-4414-ab1e-fbb914d24233.gif","mediaType":"video","metadata":{"__typename":"MediaMetadata","url":"https://www.loom.com/share/301baaefba47458e915b5173c22ad59b?sid=4d5bf501-2eb9-4f34-9b7a-7f50088ed8ab","videoId":"301baaefba47458e915b5173c22ad59b","interactiveDemoId":null,"interactiveDemoType":null,"platform":"loom"}}],"shoutouts":[{"__typename":"PostShoutout","id":"92401","to":{"__typename":"Product","id":"110872","name":"GitHub","logoUuid":"c17453f9-e544-4e6a-86b0-4027cf710cf5.png","isNoLongerOnline":false,"tagline":"How people build software","path":"/products/github"},"note":"GitHub is the lifeblood of our community — it's where we all come together to collaborate on marimo, and it's how we share what we've built with others."},{"__typename":"PostShoutout","id":"97128","to":{"__typename":"Product","id":"409658","name":"Pyodide","logoUuid":"2ec5f1e9-972c-4fad-807d-f85d0fe3c928.png","isNoLongerOnline":false,"tagline":"Mozilla brings Python to the browser","path":"/products/pyodide"},"note":"Our free online playground (https://marimo.new) lets you run marimo notebooks entirely in the browser — no backend required! This is powered by the amazing Pyodide project, which is a port of CPython to WebAssembly."},{"__typename":"PostShoutout","id":"104143","to":{"__typename":"Product","id":"585328","name":"DuckDB","logoUuid":"2396d46b-2c67-4abe-9dca-3c123c88efac.png","isNoLongerOnline":false,"tagline":"rich, fast \u0026 open source.","path":"/products/duckdb"},"note":"Our built-in SQL cells are powered by duckdb, which makes it possible to execute blazingly fast queries against Python dataframes as well as external databases like SQLite and Postgres."},{"__typename":"PostShoutout","id":"101652","to":{"__typename":"Product","id":"586732","name":"Python.org","logoUuid":"f1a37595-dad1-4bd3-aeba-c4488e298ce7.png","isNoLongerOnline":false,"tagline":"The official home of the Python Programming Language","path":"/products/python-org"},"note":"marimo is notebook for Python, built using Python. Python's built-in AST module is what makes marimo's reactive runtime possible."},{"__typename":"PostShoutout","id":"101651","to":{"__typename":"Product","id":"733759","name":"uv","logoUuid":"74673618-d541-4cac-bba7-ded9379575bb.png","isNoLongerOnline":false,"tagline":"uv","path":"/products/uv"},"note":"marimo is reproducible down to the packages thanks to uv, an extremely fast package manager for Python written in Rust. uv's implementation of Python's PEP 723 makes it possible for us to save package requirements in notebook files, and create temporary environments containing them on notebook startup."},{"__typename":"PostShoutout","id":"101657","to":{"__typename":"Product","id":"733794","name":"Narwhals","logoUuid":"1191bf3a-23f0-485e-ab31-335ca6b637e4.jpeg","isNoLongerOnline":false,"tagline":"Lightweight compatibility layer between dataframe libraries!","path":"/products/narwhals-3"},"note":"marimo has native support for many dataframe-like libraries, including Pandas, Polars, Ibis, and Pyarrow tables. We used to manually maintain glue code for all these libraries, which was difficult and error-prone. Narwhals let us delete all this code — we rely on narwhals for interchange between dataframe libraries, letting us focus on the core functionality of marimo instead."}],"isSubscribed":false,"structuredData":{"@context":"http://schema.org","@type":"WebApplication","name":"marimo","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","datePublished":"2024-11-07T11:01:42.390-08:00","dateModified":"2024-11-27T04:41:22.838-08:00","image":"https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=format","screenshot":["https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop","https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?auto=format\u0026fit=crop"],"operatingSystem":"Web","offers":{"@type":"Offer","price":0,"priceCurrency":"USD"},"applicationCategory":"Developer Tools","author":[{"@type":"Person","name":"Myles Scolnick","image":"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100","url":"https://www.producthunt.com/@themylesfiles"},{"@type":"Person","name":"Akshay Agrawal","image":"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100","url":"https://www.producthunt.com/@akshay_agrawal6"}]},"meta":{"__typename":"MetaTags","canonicalUrl":"https://www.producthunt.com/posts/marimo","creator":"@themylesfiles","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","image":"https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop\u0026frame=1\u0026h=512\u0026w=1024","mobileAppUrl":"producthunt://post/588585","oembedUrl":"https://www.producthunt.com/posts/marimo","robots":null,"title":"marimo - The next-generation Python notebook","type":"product","author":"Myles Scolnick","authorUrl":"https://www.producthunt.com/@themylesfiles"},"thumbnailImageUuid":"b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png","productState":"default","updatedAt":"2024-11-27T04:41:22-08:00","disabledWhenScheduled":true,"hasVoted":false,"isAvailable":true,"links":[{"__typename":"ProductLink","id":"787407","redirectPath":"/r/TNWEJEBUHUTKI6","storeName":"Website","websiteName":"marimo.io","devices":[]},{"__typename":"ProductLink","id":"787406","redirectPath":"/r/JGKEMPCGEWUHY3","storeName":"Github","websiteName":"github.com","devices":[]}],"badges":{"__typename":"Connection","edges":[]},"userId":"18280","url":"https://www.producthunt.com/posts/marimo","promo":null,"moderation":null}},"loading":false,"networkStatus":7,"called":true},":Rb7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rd67r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rd67r7rrqkutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rl67r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rl67r7rrqkutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R1l67r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R1l67r7rrqkutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rko7r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R8o7r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R2oo7r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R2oo7r7rrqkutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R5po7r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R5po7r7rrqkutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rdpo7r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rdpo7r7rrqkutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rlpo7r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rlpo7r7rrqkutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R7to7r7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R1fr7rrqkutkq:":{"data":undefined,"loading":true,"networkStatus":1,"called":true},":R9jr7rrqkutkq:":{"data":undefined,"loading":true,"networkStatus":1,"called":true},":Rbmajr7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Raajr7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Raajr7rrqkutkqH1:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rn2ejr7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":Rcrejr7rrqkutkq:":{"data":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}},"complete":true,"missing":undefined},":R3jr7rrqkutkq:":{"data":undefined,"loading":true,"networkStatus":1,"called":true}},"events":[{"type":"started","options":{"skip":false,"fetchPolicy":"cache-first","query":"query Context{viewer{...UseCurrentUserFragment}}fragment ViewerNoticeFragment on Notice{type invite{id product{id slug}}makerSuggestion{id post{id slug}}dismissable{id isDismissed dismissableKey dismissableGroup}}fragment AbTestFragment on AbTestAssignment{name variant}fragment LaunchTipsFragment on Post{id canComment commentsCount featuredAt makerInviteUrl name url slug createdAt isMaker isHunter launchState shoutouts{id}}fragment UseCurrentUserFragment on Viewer{id email emailVerified isImpersonated analyticsIdentifyJson deviceType showCookiePolicy showCommentWarning showCaptcha showPhoneVerification isAdmin features notificationFeedItemsUnreadCount flashAlert notice{...ViewerNoticeFragment}otpRequiredFrom user{id avatarUrl isMaker name username}abTestActiveParticipations{...AbTestFragment}visitStreak{id emoji duration}recentLaunch{id ...LaunchTipsFragment}intercomUserHash ifVisitedFromMobile newsletterSettings{hasNewsletterSubscription}}","notifyOnNetworkStatusChange":false,"nextFetchPolicy":undefined},"id":"2"},{"type":"started","options":{"variables":{"slug":"marimo","badgeTypes":["TopPostBadge","TopPostTopicBadge","GoldenKittyAwardBadge"]},"skip":false,"fetchPolicy":"cache-first","query":"query PostPage($slug:String!$badgeTypes:[BadgesTypeEnum!]){post(slug:$slug){id slug name trashedAt launchState isArchived embargoPreviewAt product{id slug passedOnePost ...ProductPageReviewSummaryFragment ...ReviewCardFragment ...ProductLayoutFirstLaunchFragment}targetedAd(kind:\"sidebar\"){id ...AdFragment}redirectToProduct{id slug}...PostPageHeaderFragment ...PostPageDescriptionFragment ...PostPageScheduledNoticeFragment ...PostPageLaunchDayNoticeFragment ...PostPageModerationReasonFragment ...PostPageModerationToolsFragment ...PostPageBreadcrumbFragment ...PostPageAboutFragment ...PostPageGalleryFragment ...PostPageBannerFragment ...PostShoutoutsFragment ...PostPageAdminBarFragment ...EmbargoedPostCountdownFragment ...EmbargoedPostItemNotifyButtonFragment ...StructuredDataFromPost ...MetaTags}}fragment UserImage on User{id name username avatarUrl}fragment ProductPageAboutReviewSummatyUserLinkFragment on User{id username name ...UserImage}fragment ProductThumbnailFragment on Product{id name logoUuid isNoLongerOnline}fragment FacebookShareButtonFragment on Shareable{id url}fragment ReviewCTASharePromptFragment on Product{id name tagline slug ...ProductThumbnailFragment ...FacebookShareButtonFragment}fragment ReviewCTAPromptFragment on Product{id isMaker viewerReview{id}...ReviewCTASharePromptFragment}fragment MetaTags on SEOInterface{id meta{canonicalUrl creator description image mobileAppUrl oembedUrl robots title type author authorUrl}}fragment UpcomingEventFollowButtonFragment on UpcomingEvent{id isSubscribed truncatedDescription product{id isSubscribed followersCount}}fragment UserCircleListFragment on User{id ...UserImage}fragment PostVoteButtonFragment on Post{id featuredAt updatedAt createdAt embargoPreviewAt product{id isSubscribed}disabledWhenScheduled hasVoted ...on Votable{id votesCount}}fragment HomefeedItemPostItemCommentsButtonFragment on Post{id slug commentsCount}fragment HomefeedItemPostItemVoteButtonFragment on Post{id hideVotesCount featuredAt createdAt disabledWhenScheduled embargoPreviewAt ...on Votable{id hasVoted votesCount}}fragment HomefeedItemPostItemTopicTagsFragment on Post{id topics(first:3){edges{node{id slug name}}}}fragment PostStatusIconFragment on Post{id productState}fragment PostThumbnailFragment on Post{id name thumbnailImageUuid ...PostStatusIconFragment}fragment PostPageGetItButtonFragment on Post{id isAvailable productState links{id redirectPath storeName websiteName devices}}fragment ProductTopPostBadgeFragment on TopPostBadge{id post{id name}position period date}fragment ProductGoldenKittyBadgeFragment on GoldenKittyAwardBadge{id year position category post{id name}}fragment ProductTopPostTopicBadgeFragment on TopPostTopicBadge{id}fragment ProductBadgeFragment on Badge{...on TopPostBadge{id ...ProductTopPostBadgeFragment}...on GoldenKittyAwardBadge{id ...ProductGoldenKittyBadgeFragment}...on TopPostTopicBadge{id ...ProductTopPostTopicBadgeFragment}}fragment PostHeaderBadgesFragment on Post{id badges(first:3 types:$badgeTypes){edges{node{...ProductBadgeFragment}}}}fragment PostPageActionsFragment on Post{id slug userId canManage}fragment ShareModalSubjectFragment on Shareable{id url ...FacebookShareButtonFragment}fragment PostPromoCodeFragment on Post{id promo{text code}}fragment ProductFollowButtonFragment on Product{id followersCount isSubscribed}fragment ProductMuteButtonFragment on Product{id isMuted}fragment ReviewStarRatingCTAFragment on Product{id slug name isMaker reviewsRating}fragment ProductItemFragment on Product{id slug name tagline followersCount reviewsCount topics(first:2){edges{node{id slug name}}}...ProductFollowButtonFragment ...ProductThumbnailFragment ...ProductMuteButtonFragment ...FacebookShareButtonFragment ...ReviewStarRatingCTAFragment}fragment CollectionAddButtonFragment on Product{id name description ...ProductItemFragment}fragment TeamRequestCTAFragment on Product{id slug name websiteUrl websiteDomain isClaimed canEdit canClaim isViewerTeamMember viewerPendingTeamRequest{id}}fragment ProductYCombinatorPillFragment on Product{id moderation{id yCombinatorUrl}}fragment ModerationChangeProductFormProductFragment on Product{id name slug tagline cleanUrl websiteUrl ...ProductThumbnailFragment}fragment ModerationChangeProductFormPostFragment on Post{id name primaryLink{id url}product{id ...ModerationChangeProductFormProductFragment}}fragment ModerationMessageFragment on ModerationMessage{id body createdAt user{id name}}fragment ModerationMessagesFragment on Post{id moderation{id messages{edges{node{id ...ModerationMessageFragment}}totalCount}}}fragment ModerationLogFragment on ModerationLog{id message reason moderator{id name}createdAt}fragment ModerationLogsFragment on Post{id moderation{id logs{edges{node{id ...ModerationLogFragment}}}}}fragment PostShoutoutFragment on PostShoutout{id to{id ...ProductThumbnailFragment}}fragment ShoutoutNoteFragment on PostShoutout{id note}fragment PostShoutoutListFragment on PostShoutout{id to{id name tagline path ...ProductThumbnailFragment}...ShoutoutNoteFragment}fragment ProductPageReviewSummaryFragment on Product{id name slug postsCount reviewsCount reviewersCount reviewsRating isMaker reviewers(first:3){edges{node{id username name ...UserImage ...ProductPageAboutReviewSummatyUserLinkFragment}}}...ReviewCTAPromptFragment}fragment ReviewCardFragment on Product{id name isMaker ...ReviewCTAPromptFragment}fragment ProductLayoutFirstLaunchFragment on Product{id slug canEdit followersCount activeUpcomingEvent{id title description bannerUuid bannerMobileUuid isFirstLaunch ...MetaTags ...UpcomingEventFollowButtonFragment}upcomingBannerFollowers:followers(first:3 order:friends excludeViewer:true){edges{node{id ...UserCircleListFragment}}}}fragment AdFragment on Ad{id subject post{id slug featuredComment{id body:bodyText user{id ...UserImage}}name updatedAt commentsCount topics(first:3){edges{node{id slug name}}}...PostVoteButtonFragment ...HomefeedItemPostItemCommentsButtonFragment ...HomefeedItemPostItemVoteButtonFragment ...HomefeedItemPostItemTopicTagsFragment}name tagline thumbnailUuid largeAssetUuid smallAssetUuid url variationId}fragment PostPageHeaderFragment on Post{id name tagline(respectEmbargo:true)dailyRank createdAt ...PostThumbnailFragment ...PostStatusIconFragment ...PostVoteButtonFragment ...PostPageGetItButtonFragment ...PostHeaderBadgesFragment ...PostPageActionsFragment}fragment PostPageDescriptionFragment on Post{id slug tagline(respectEmbargo:true)description pricingType isArchived createdAt isMaker featuredAt ...ShareModalSubjectFragment ...PostThumbnailFragment ...PostPromoCodeFragment product{id slug name tagline logoUuid ...CollectionAddButtonFragment}topics(first:3){edges{node{id slug name}}totalCount}}fragment PostPageScheduledNoticeFragment on Post{id slug name createdAt scheduledAt canCreateUpcomingEvent canViewUpcomingEventCreateBtn isMaker isHunter upcomingEvent{id canEdit}product{id name slug canEdit ...TeamRequestCTAFragment}}fragment PostPageLaunchDayNoticeFragment on Post{id slug createdAt isMaker isHunter product{id slug}}fragment PostPageModerationReasonFragment on Post{id moderationReason{reason moderator{id name headline username}}}fragment PostPageModerationToolsFragment on Post{id name slug featuredAt createdAt user{id name email}product{id ...ProductYCombinatorPillFragment}makers{id name email}...ModerationChangeProductFormPostFragment ...ModerationMessagesFragment ...ModerationLogsFragment}fragment PostPageBreadcrumbFragment on Post{id slug name product{id slug}}fragment PostPageAboutFragment on Post{id name slug votesCount commentsCount dailyRank weeklyRank createdAt featuredAt canManage product{id name slug tagline reviewersCount reviewsCount followersCount firstPost{id createdAt}...ProductThumbnailFragment ...ProductFollowButtonFragment ...ReviewStarRatingCTAFragment}user{id name username ...UserImage}makers{id name username ...UserImage}topics(first:3){edges{node{id name slug}}}}fragment PostPageGalleryFragment on Post{id name primaryLink{id url}media{id originalHeight originalWidth imageUuid mediaType metadata{url videoId interactiveDemoId interactiveDemoType platform}}}fragment PostPageBannerFragment on Post{id isArchived featuredAt createdAt product{id slug name postsCount}}fragment PostShoutoutsFragment on Post{id shoutouts{id ...PostShoutoutFragment ...PostShoutoutListFragment}}fragment PostPageAdminBarFragment on Post{id slug launchState}fragment EmbargoedPostCountdownFragment on Post{id featuredAt scheduledAt createdAt}fragment EmbargoedPostItemNotifyButtonFragment on Post{id isSubscribed}fragment StructuredDataFromPost on Post{id structuredData}","notifyOnNetworkStatusChange":false,"nextFetchPolicy":undefined},"id":"3"},{"type":"data","id":"2","result":{"data":{"viewer":{"__typename":"Viewer","id":null,"email":null,"emailVerified":false,"isImpersonated":false,"analyticsIdentifyJson":{},"deviceType":"desktop","showCookiePolicy":false,"showCommentWarning":false,"showCaptcha":false,"showPhoneVerification":false,"isAdmin":false,"features":["ph_top_product_badge","ph_hub_top_badges","ph_phone_verification","ph_verify_usa_phone_number","ph_verify_with_targeted_friction","ph_score_events_enabled","ph_mega_ads"],"notificationFeedItemsUnreadCount":0,"flashAlert":null,"notice":null,"otpRequiredFrom":null,"user":null,"abTestActiveParticipations":[],"visitStreak":{"__typename":"VisitStreak","id":"a4329bd4-ee7e-4186-9a47-f163ee93290a","emoji":null,"duration":1},"recentLaunch":null,"intercomUserHash":null,"ifVisitedFromMobile":false,"newsletterSettings":{"__typename":"ViewerNewsletterSettings","hasNewsletterSubscription":false}}}}},{"type":"complete","id":"2"},{"type":"data","id":"3","result":{"data":{"post":{"__typename":"Post","id":"588585","slug":"marimo","name":"marimo","trashedAt":null,"launchState":"featured","isArchived":false,"embargoPreviewAt":null,"product":{"__typename":"Product","id":"700475","slug":"marimo","passedOnePost":false,"name":"marimo","postsCount":1,"reviewsCount":7,"reviewersCount":7,"reviewsRating":5,"isMaker":false,"reviewers":{"__typename":"UserConnection","edges":[{"__typename":"UserEdge","node":{"__typename":"User","id":"829475","username":"vincent_warmerdam","name":"Vincent Warmerdam","avatarUrl":"https://ph-avatars.imgix.net/829475/eb9936db-a462-48a1-9e81-856fea2e62b4.jpeg"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"7837118","username":"dmadisetti","name":"Dylan Madisetti","avatarUrl":"https://ph-avatars.imgix.net/7837118/fca87522-0eba-4533-951e-1b19480d967a.png"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"6825053","username":"faraz_abidi","name":"Faraz Abidi","avatarUrl":"https://ph-avatars.imgix.net/6825053/fb7d3cff-7bf9-4b0c-983c-8b02c4cacfdd.png"}}]},"canEdit":false,"followersCount":265,"activeUpcomingEvent":null,"upcomingBannerFollowers":{"__typename":"UserConnection","edges":[{"__typename":"UserEdge","node":{"__typename":"User","id":"18280","name":"Chris Messina","username":"chrismessina","avatarUrl":"https://ph-avatars.imgix.net/18280/f49f2882-55cd-4279-add0-7761638c8104.png"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"128979","name":"Thiago Araujo","username":"todearaujo","avatarUrl":"https://ph-avatars.imgix.net/128979/f7feb4c8-65e3-4e26-b963-d6f9fa458d2d.jpeg"}},{"__typename":"UserEdge","node":{"__typename":"User","id":"9355","name":"Vlad Arbatov","username":"vladzima","avatarUrl":"https://ph-avatars.imgix.net/9355/89bf60d8-1570-4ef9-a976-2aa35a12907a.jpeg"}}]},"viewerReview":null,"tagline":"The next-generation Python notebook","logoUuid":"b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png","isNoLongerOnline":false,"url":"https://www.producthunt.com/products/marimo","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with Git, share as interactive web apps, and execute as Python scripts. All in a modern, AI-powered editor.","topics":{"__typename":"TopicConnection","edges":[{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"267","slug":"developer-tools","name":"Developer Tools"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"268","slug":"artificial-intelligence","name":"Artificial Intelligence"}}]},"isSubscribed":false,"isMuted":false,"websiteUrl":"https://marimo.io","websiteDomain":"marimo.io","isClaimed":false,"canClaim":false,"isViewerTeamMember":null,"viewerPendingTeamRequest":null,"moderation":null,"firstPost":{"__typename":"Post","id":"588585","createdAt":"2024-11-19T00:01:00-08:00"},"cleanUrl":"marimo.io"},"targetedAd":null,"redirectToProduct":null,"tagline":"The next-generation Python notebook","dailyRank":"7","createdAt":"2024-11-19T00:01:00-08:00","description":"\u003cb\u003emarimo\u003c/b\u003e is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","pricingType":"free","isMaker":false,"featuredAt":"2024-11-19T00:01:00-08:00","topics":{"__typename":"TopicConnection","edges":[{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"267","slug":"developer-tools","name":"Developer Tools"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"268","slug":"artificial-intelligence","name":"Artificial Intelligence"}},{"__typename":"TopicEdge","node":{"__typename":"Topic","id":"272","slug":"github","name":"GitHub"}}],"totalCount":4},"scheduledAt":"2024-11-19T00:01:00-08:00","canCreateUpcomingEvent":false,"canViewUpcomingEventCreateBtn":false,"isHunter":false,"upcomingEvent":{"__typename":"UpcomingEvent","id":"70274","canEdit":false},"moderationReason":null,"user":{"__typename":"User","id":"18280","name":"Chris Messina","email":null,"username":"chrismessina","avatarUrl":"https://ph-avatars.imgix.net/18280/f49f2882-55cd-4279-add0-7761638c8104.png"},"makers":[{"__typename":"User","id":"210426","name":"Myles Scolnick","email":null,"username":"themylesfiles","avatarUrl":"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png"},{"__typename":"User","id":"7709330","name":"Akshay Agrawal","email":null,"username":"akshay_agrawal6","avatarUrl":"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png"}],"votesCount":229,"commentsCount":41,"weeklyRank":"35","canManage":false,"primaryLink":{"__typename":"ProductLink","id":"787407","url":"https://marimo.io"},"media":[{"__typename":"Media","id":"1868289","originalHeight":760,"originalWidth":1270,"imageUuid":"eda6b3b6-007f-417a-ae02-fa0db772a125.png","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1868288","originalHeight":760,"originalWidth":1270,"imageUuid":"91b82925-bba0-45ca-a993-cc64be1ea2a5.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849569","originalHeight":760,"originalWidth":1270,"imageUuid":"e3911b13-470a-4702-ac2c-81cf19507959.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849572","originalHeight":760,"originalWidth":1270,"imageUuid":"f7cc5350-6eed-418b-9570-44d11e6b25d9.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849571","originalHeight":760,"originalWidth":1270,"imageUuid":"ef1a79f0-4b07-4046-86a8-fa80add633e4.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849568","originalHeight":760,"originalWidth":1270,"imageUuid":"5ec348e7-70be-4122-bfb3-9581683a727c.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849612","originalHeight":760,"originalWidth":1270,"imageUuid":"6707e104-59cd-4872-a524-27c644e1521f.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849574","originalHeight":760,"originalWidth":1270,"imageUuid":"ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1849570","originalHeight":760,"originalWidth":1270,"imageUuid":"34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif","mediaType":"image","metadata":{"__typename":"MediaMetadata","url":null,"videoId":null,"interactiveDemoId":null,"interactiveDemoType":null,"platform":null}},{"__typename":"Media","id":"1854601","originalHeight":1297,"originalWidth":1730,"imageUuid":"37620e3d-baad-4414-ab1e-fbb914d24233.gif","mediaType":"video","metadata":{"__typename":"MediaMetadata","url":"https://www.loom.com/share/301baaefba47458e915b5173c22ad59b?sid=4d5bf501-2eb9-4f34-9b7a-7f50088ed8ab","videoId":"301baaefba47458e915b5173c22ad59b","interactiveDemoId":null,"interactiveDemoType":null,"platform":"loom"}}],"shoutouts":[{"__typename":"PostShoutout","id":"92401","to":{"__typename":"Product","id":"110872","name":"GitHub","logoUuid":"c17453f9-e544-4e6a-86b0-4027cf710cf5.png","isNoLongerOnline":false,"tagline":"How people build software","path":"/products/github"},"note":"GitHub is the lifeblood of our community — it's where we all come together to collaborate on marimo, and it's how we share what we've built with others."},{"__typename":"PostShoutout","id":"97128","to":{"__typename":"Product","id":"409658","name":"Pyodide","logoUuid":"2ec5f1e9-972c-4fad-807d-f85d0fe3c928.png","isNoLongerOnline":false,"tagline":"Mozilla brings Python to the browser","path":"/products/pyodide"},"note":"Our free online playground (https://marimo.new) lets you run marimo notebooks entirely in the browser — no backend required! This is powered by the amazing Pyodide project, which is a port of CPython to WebAssembly."},{"__typename":"PostShoutout","id":"104143","to":{"__typename":"Product","id":"585328","name":"DuckDB","logoUuid":"2396d46b-2c67-4abe-9dca-3c123c88efac.png","isNoLongerOnline":false,"tagline":"rich, fast \u0026 open source.","path":"/products/duckdb"},"note":"Our built-in SQL cells are powered by duckdb, which makes it possible to execute blazingly fast queries against Python dataframes as well as external databases like SQLite and Postgres."},{"__typename":"PostShoutout","id":"101652","to":{"__typename":"Product","id":"586732","name":"Python.org","logoUuid":"f1a37595-dad1-4bd3-aeba-c4488e298ce7.png","isNoLongerOnline":false,"tagline":"The official home of the Python Programming Language","path":"/products/python-org"},"note":"marimo is notebook for Python, built using Python. Python's built-in AST module is what makes marimo's reactive runtime possible."},{"__typename":"PostShoutout","id":"101651","to":{"__typename":"Product","id":"733759","name":"uv","logoUuid":"74673618-d541-4cac-bba7-ded9379575bb.png","isNoLongerOnline":false,"tagline":"uv","path":"/products/uv"},"note":"marimo is reproducible down to the packages thanks to uv, an extremely fast package manager for Python written in Rust. uv's implementation of Python's PEP 723 makes it possible for us to save package requirements in notebook files, and create temporary environments containing them on notebook startup."},{"__typename":"PostShoutout","id":"101657","to":{"__typename":"Product","id":"733794","name":"Narwhals","logoUuid":"1191bf3a-23f0-485e-ab31-335ca6b637e4.jpeg","isNoLongerOnline":false,"tagline":"Lightweight compatibility layer between dataframe libraries!","path":"/products/narwhals-3"},"note":"marimo has native support for many dataframe-like libraries, including Pandas, Polars, Ibis, and Pyarrow tables. We used to manually maintain glue code for all these libraries, which was difficult and error-prone. Narwhals let us delete all this code — we rely on narwhals for interchange between dataframe libraries, letting us focus on the core functionality of marimo instead."}],"isSubscribed":false,"structuredData":{"@context":"http://schema.org","@type":"WebApplication","name":"marimo","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","datePublished":"2024-11-07T11:01:42.390-08:00","dateModified":"2024-11-27T04:41:22.838-08:00","image":"https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=format","screenshot":["https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop","https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?auto=format\u0026fit=crop","https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?auto=format\u0026fit=crop"],"operatingSystem":"Web","offers":{"@type":"Offer","price":0,"priceCurrency":"USD"},"applicationCategory":"Developer Tools","author":[{"@type":"Person","name":"Myles Scolnick","image":"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100","url":"https://www.producthunt.com/@themylesfiles"},{"@type":"Person","name":"Akshay Agrawal","image":"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100","url":"https://www.producthunt.com/@akshay_agrawal6"}]},"meta":{"__typename":"MetaTags","canonicalUrl":"https://www.producthunt.com/posts/marimo","creator":"@themylesfiles","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","image":"https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop\u0026frame=1\u0026h=512\u0026w=1024","mobileAppUrl":"producthunt://post/588585","oembedUrl":"https://www.producthunt.com/posts/marimo","robots":null,"title":"marimo - The next-generation Python notebook","type":"product","author":"Myles Scolnick","authorUrl":"https://www.producthunt.com/@themylesfiles"},"thumbnailImageUuid":"b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png","productState":"default","updatedAt":"2024-11-27T04:41:22-08:00","disabledWhenScheduled":true,"hasVoted":false,"isAvailable":true,"links":[{"__typename":"ProductLink","id":"787407","redirectPath":"/r/TNWEJEBUHUTKI6","storeName":"Website","websiteName":"marimo.io","devices":[]},{"__typename":"ProductLink","id":"787406","redirectPath":"/r/JGKEMPCGEWUHY3","storeName":"Github","websiteName":"github.com","devices":[]}],"badges":{"__typename":"Connection","edges":[]},"userId":"18280","url":"https://www.producthunt.com/posts/marimo","promo":null,"moderation":null}}}},{"type":"complete","id":"3"}]})</script></head><body><div id="root-container"><header class="w-full border-b-2 border-gray-200 bg-white sticky top-0 z-20 "><div class="mx-auto grid max-w-[1216px] grid-cols-[1fr_2fr_1fr] items-center gap-2 bg-white px-6 py-5 sm:grid-cols-[auto_1fr_auto] lg:px-0"><div class="flex flex-row items-center gap-6 md:gap-8"><a aria-label="Product Hunt Logo" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40" class="size-10"><g fill="none" fill-rule="evenodd"><path fill="#FF6154" d="M40 20c0 11.046-8.954 20-20 20S0 31.046 0 20 8.954 0 20 0s20 8.954 20 20"></path><path fill="#FFF" d="M22.667 20H17v-6h5.667a3 3 0 0 1 0 6m0-10H13v20h4v-6h5.667a7 7 0 1 0 0-14"></path></g></svg></a><div class="text-14 font-normal text-dark-gray relative"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" class="absolute left-4 top-3 size-4"><path fill="#4B587C" d="M7 14c-3.86 0-7-3.14-7-7s3.14-7 7-7 7 3.14 7 7-3.14 7-7 7M7 2C4.243 2 2 4.243 2 7s2.243 5 5 5 5-2.243 5-5-2.243-5-5-5m8.707 12.293L13.314 11.9a8 8 0 0 1-1.414 1.414l2.393 2.393a.997.997 0 0 0 1.414 0 1 1 0 0 0 0-1.414" opacity="0.5"></path></svg><input data-hj-allow="true" data-test="header-search-input" autoComplete="off" class="input box-border h-10 w-full min-w-[164px] max-w-full appearance-none rounded-full border-0 border-white bg-gray-100 px-10 pl-[40px] text-light-gray focus:outline-none sm:w-full sm:max-w-[216px] sm:text-base" placeholder="Search" title="Search" name="q"/></div></div><nav aria-label="Main Navigation"><ul class="flex flex-row items-center justify-center gap-6 md:gap-7 lg:gap-8"><li class="group relative list-none" data-test="header-nav-link-launches"><a class="cursor-pointer text-16 group flex flex-row items-center gap-1 font-semibold text-gray-700 transition-all duration-300 group-hover:text-brand-500" href="/leaderboard/daily/2024/11/27?ref=header_nav">Launches<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="none" viewBox="0 0 14 14" class="size-4 stroke-gray-500 transition-all duration-300 group-hover:-rotate-90 group-hover:stroke-brand-500"><path d="M3.5 6.25 7 9.75l3.5-3.5"></path></svg></a><div class="styles_dropdown__6p8ZV hidden group-hover:block group-hover:translate-y-0 group-hover:opacity-100 styles_left__zme_r"><div class="bg-white styles_shadow__RlOHG"><div class="z-100 px-4 py-2"><a href="/coming-soon?ref=header_nav"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(213, 243, 221, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#d5f3dd" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#599D6B" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" clip-path="url(#ComingSoon_svg__a)"><path d="M12 21.25a8.25 8.25 0 1 0 0-16.5 8.25 8.25 0 0 0 0 16.5m-6.75-18-3 3m16.5-3 3 3"></path><path d="M12 7.75V13h5.25"></path></g><defs><clipPath id="ComingSoon_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Coming soon</div><div class="text-12 font-normal text-light-gray">Upcoming launches to watch</div></div></div></a><a href="/leaderboard/daily/2024/11/27?ref=header_nav"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(255, 230, 228, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#ffe6e4" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#F86C60" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" clip-path="url(#LaunchArchive_svg__a)"><path d="M9 17.25s-.75 3-5.25 3c0-4.5 3-5.25 3-5.25m11.167-4.416c2.25-2.25 2.39-4.927 2.32-6.12a.75.75 0 0 0-.7-.7c-1.194-.071-3.869.068-6.12 2.32L7.5 12l4.5 4.5zM12.75 6.75H6.97a.75.75 0 0 0-.53.22l-3.22 3.22a.75.75 0 0 0 .425 1.272L7.5 12"></path><path d="M17.25 11.25v5.78a.75.75 0 0 1-.22.53l-3.22 3.22a.75.75 0 0 1-1.272-.425L12 16.5"></path></g><defs><clipPath id="LaunchArchive_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Launch archive</div><div class="text-12 font-normal text-light-gray">Most-loved launches by the community</div></div></div></a><a href="/launch?ref=header_nav"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(229, 239, 255, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#e5efff" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#3979E3" stroke-width="1.5" clip-path="url(#LaunchGuide_svg__a)"><path stroke-miterlimit="10" d="M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18Z"></path><path stroke-linecap="round" stroke-linejoin="round" d="m16.5 7.5-6 3-3 6 6-3z"></path></g><defs><clipPath id="LaunchGuide_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Launch Guide</div><div class="text-12 font-normal text-light-gray">Checklists and pro tips for launching</div></div></div></a></div></div></div></li><li class="group relative"><a class="group flex flex-row items-center gap-1 text-16 font-semibold text-gray-700 transition-all duration-300 group-hover:text-brand-500" href="/categories?ref=header_nav">Products<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="none" viewBox="0 0 14 14" class="size-4 stroke-gray-500 transition-all duration-300 group-hover:-rotate-90 group-hover:stroke-brand-500"><path d="M3.5 6.25 7 9.75l3.5-3.5"></path></svg></a></li><li class="group relative list-none" data-test="header-nav-link-news"><a class="cursor-pointer text-16 group flex flex-row items-center gap-1 font-semibold text-gray-700 transition-all duration-300 group-hover:text-brand-500" href="/newsletters?ref=header_nav">News<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="none" viewBox="0 0 14 14" class="size-4 stroke-gray-500 transition-all duration-300 group-hover:-rotate-90 group-hover:stroke-brand-500"><path d="M3.5 6.25 7 9.75l3.5-3.5"></path></svg></a><div class="styles_dropdown__6p8ZV hidden group-hover:block group-hover:translate-y-0 group-hover:opacity-100 styles_left__zme_r"><div class="bg-white styles_shadow__RlOHG"><div class="z-100 px-4 py-2"><a href="/newsletters?ref=header_nav"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(234, 233, 255, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#eae9ff" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#6D68D4" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" clip-path="url(#Newsletter_svg__a)"><path d="M3 5.25h18V18a.75.75 0 0 1-.75.75H3.75A.75.75 0 0 1 3 18z"></path><path d="m21 5.25-9 8.25-9-8.25"></path></g><defs><clipPath id="Newsletter_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Newsletter</div><div class="text-12 font-normal text-light-gray">The best of Product Hunt, every day</div></div></div></a><a href="/stories?ref=header_nav"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(255, 233, 244, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#ffe9f4" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#F468AC" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" clip-path="url(#Stories_svg__a)"><path d="M12 8.25a3 3 0 0 1 3-3h6a.75.75 0 0 1 .75.75v12a.75.75 0 0 1-.75.75h-6a3 3 0 0 0-3 3M2.25 18a.75.75 0 0 0 .75.75h6a3 3 0 0 1 3 3V8.25a3 3 0 0 0-3-3H3a.75.75 0 0 0-.75.75zM15 9h3.75M15 12h3.75M15 15h3.75"></path></g><defs><clipPath id="Stories_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Stories</div><div class="text-12 font-normal text-light-gray">Tech news, interviews, and tips from makers</div></div></div></a><a href="/changes?ref=header_nav"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(207, 252, 219, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#cffcdb" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#579167" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" clip-path="url(#Changelog_svg__a)"><path d="M10.5 10.5h6m-6 3h6m3-9.75h-15a.75.75 0 0 0-.75.75v15c0 .414.336.75.75.75h15a.75.75 0 0 0 .75-.75v-15a.75.75 0 0 0-.75-.75m-12 0v16.5"></path></g><defs><clipPath id="Changelog_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Changelog</div><div class="text-12 font-normal text-light-gray">New Product Hunt features and releases</div></div></div></a></div></div></div></li><li class="group relative list-none" data-test="header-nav-link-community"><a class="cursor-pointer text-16 group flex flex-row items-center gap-1 font-semibold text-gray-700 transition-all duration-300 group-hover:text-brand-500" href="/discussions?ref=header_nav">Community<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="none" viewBox="0 0 14 14" class="size-4 stroke-gray-500 transition-all duration-300 group-hover:-rotate-90 group-hover:stroke-brand-500"><path d="M3.5 6.25 7 9.75l3.5-3.5"></path></svg></a><div class="styles_dropdown__6p8ZV hidden group-hover:block group-hover:translate-y-0 group-hover:opacity-100 styles_left__zme_r"><div class="bg-white styles_shadow__RlOHG"><div class="z-100 px-4 py-2"><a href="/discussions?ref=header_nav"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(255, 233, 248, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#ffe9f8" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#DE62B6" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" clip-path="url(#Discussions_svg__a)"><path d="M6.71 13.5 3 16.5v-12a.75.75 0 0 1 .75-.75h12a.75.75 0 0 1 .75.75v8.25a.75.75 0 0 1-.75.75z"></path><path d="M7.5 13.5v3.75a.75.75 0 0 0 .75.75h9.04L21 21V9a.75.75 0 0 0-.75-.75H16.5"></path></g><defs><clipPath id="Discussions_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Discussions</div><div class="text-12 font-normal text-light-gray">Ask questions, find support, and connect</div></div></div></a><a href="/visit-streaks?ref=header_nav"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(255, 228, 228, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#ffe4e4" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#F10202" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" clip-path="url(#Streaks_svg__a)"><path d="M12.75 18c1.875-.316 3.432-1.875 3.75-3.75"></path><path d="m10.5 9 2.463-6.75C14.987 3.93 19.5 8.264 19.5 13.5a7.5 7.5 0 0 1-15 0c0-2.866 1.352-5.462 2.906-7.5z"></path></g><defs><clipPath id="Streaks_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Streaks</div><div class="text-12 font-normal text-light-gray">The most active community members</div></div></div></a><a href="https://lu.ma/producthunt" target="_blank"><div class="my-2 flex flex-row gap-4 styles_container__K6Yj1" style="background:linear-gradient(to right, rgba(207, 242, 216, 0.25) 50%, rgba(255, 255, 255, 0.3) 50%)"><div style="background-color:#cff2d8" class="styles_container__T4TJj"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><g stroke="#3F9E58" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" clip-path="url(#Event_svg__a)"><path d="M19.5 3.75h-15a.75.75 0 0 0-.75.75v15c0 .414.336.75.75.75h15a.75.75 0 0 0 .75-.75v-15a.75.75 0 0 0-.75-.75m-3-1.5v3m-9-3v3m-3.75 3h16.5"></path><path d="m8.625 14.25 2.25 2.25 4.5-4.5"></path></g><defs><clipPath id="Event_svg__a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs></svg></div><div class="flex flex-1 flex-col"><div class="text-14 font-normal text-dark-gray">Events</div><div class="text-12 font-normal text-light-gray">Meet others online and in-person</div></div></div></a></div></div></div></li><li class="group relative list-none" data-test="header-nav-link-advertise"><a class="cursor-pointer text-16 group flex flex-row items-center gap-1 font-semibold text-gray-700 transition-all duration-300 group-hover:text-brand-500" href="/sponsor?ref=header_nav">Advertise</a></li></ul></nav><!--$--><div class="flex flex-row items-center justify-end gap-4"><a class="text-16 font-normal text-dark-gray flex h-10 items-center gap-1 rounded-full border-2 border-gray-200 px-4 align-middle text-16 font-semibold text-gray-700 transition-all duration-300 hover:border-gray-300 hover:bg-gray-50" data-test="header-nav-link-subscribe" href="/newsletters?ref=header_nav&campaign=weekly_newsletter&source=header_nav"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20" class="size-4"><path stroke="#344054" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.667" d="m11.453 2.195 6.274 4.077c.221.144.332.216.412.313a.8.8 0 0 1 .158.289c.036.12.036.252.036.516v6.11c0 1.4 0 2.1-.272 2.635a2.5 2.5 0 0 1-1.093 1.092c-.535.273-1.235.273-2.635.273H5.667c-1.4 0-2.1 0-2.635-.273a2.5 2.5 0 0 1-1.093-1.092c-.272-.535-.272-1.235-.272-2.635V7.39c0-.264 0-.396.036-.516a.8.8 0 0 1 .157-.29c.08-.096.192-.168.413-.312l6.274-4.077m2.906 0c-.526-.342-.789-.513-1.072-.58a1.7 1.7 0 0 0-.762 0c-.283.067-.546.238-1.072.58m2.906 0 5.16 3.354c.574.372.86.559.96.795a.83.83 0 0 1 0 .645c-.1.237-.386.423-.96.796l-5.16 3.354c-.526.342-.789.513-1.072.58a1.7 1.7 0 0 1-.762 0c-.283-.067-.546-.238-1.072-.58l-5.16-3.354c-.574-.373-.86-.56-.96-.796a.83.83 0 0 1 0-.645c.1-.236.386-.423.96-.795l5.16-3.354m9.37 13.638-5.536-5m-4.762 0-5.536 5"></path></svg>Subscribe</a><div class="text-16 font-semibold text-white flex h-10 cursor-pointer items-center gap-1 rounded-full bg-brand-500 px-4" data-test="header-nav-link-sign-in"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20" class="size-4"><g clip-path="url(#SignInIcon_svg__a)"><path stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.667" d="M2.782 5.833a8.333 8.333 0 1 1 0 8.333M10 13.334 13.333 10m0 0L10 6.667M13.333 10H1.667"></path></g><defs><clipPath id="SignInIcon_svg__a"><path fill="#fff" d="M0 0h20v20H0z"></path></clipPath></defs></svg>Sign in</div></div><!--/$--></div></header><div class="styles_container__2Seaj flex flex-1 !flex-col styles_compact__rs_Rt"><ol class="my-5 flex list-none flex-row flex-wrap gap-2"><li class="flex flex-row items-center gap-2"><a class="text-14 font-normal text-dark-gray hover:text-blue opacity-70" href="/">Home</a></li><li class="flex flex-row items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="7" height="11" viewBox="0 0 7 11" class="mt-0.5 h-2 fill-light-gray"><path fill-rule="evenodd" d="M6.744 5.502a1 1 0 0 1-.292.703l-4.247 4.247a1.003 1.003 0 0 1-1.412-.002.996.996 0 0 1-.003-1.412L4.33 5.5.79 1.962A1.004 1.004 0 0 1 .794.55a.995.995 0 0 1 1.41-.002l4.248 4.247c.192.192.29.447.29.702z"></path></svg><a class="text-14 font-normal text-dark-gray hover:text-blue opacity-70" href="/products/marimo">Product</a></li><li class="flex flex-row items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="7" height="11" viewBox="0 0 7 11" class="mt-0.5 h-2 fill-light-gray"><path fill-rule="evenodd" d="M6.744 5.502a1 1 0 0 1-.292.703l-4.247 4.247a1.003 1.003 0 0 1-1.412-.002.996.996 0 0 1-.003-1.412L4.33 5.5.79 1.962A1.004 1.004 0 0 1 .794.55a.995.995 0 0 1 1.41-.002l4.248 4.247c.192.192.29.447.29.702z"></path></svg><a class="text-14 font-normal text-dark-gray hover:text-blue pointer-events-none" href="/posts/marimo">marimo</a></li></ol><div class="flex flex-col gap-3"><div class="flex flex-row"><img loading="lazy" srcSet="https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=72&h=72&fit=crop&dpr=1 1x, https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=72&h=72&fit=crop&dpr=2 2x, https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=72&h=72&fit=crop&dpr=3 3x" src="https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=72&h=72&fit=crop" style="width:72px;height:72px" alt="marimo" class="relative z-0 rounded"/><div class="flex flex-1 flex-row items-start justify-end"><!--$--><!--/$--></div></div><div class="flex flex-1 flex-col justify-between gap-6 sm:flex-row"><div class="flex flex-col gap-2"><h1 class="text-24 font-bold text-dark-gray styles_title__O2bMP">marimo<a href="#" class="styles_toggle__qDzF5" data-test="post-actions" aria-label="Post actions"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="7" viewBox="0 0 12 7"><path fill="#CCC8C7" d="M5.998 6.244a1 1 0 0 1-.703-.292L1.048 1.705A1.003 1.003 0 0 1 1.05.293.996.996 0 0 1 2.462.29L6 3.83 9.538.29a1.003 1.003 0 0 1 1.412.003.997.997 0 0 1 .002 1.412L6.705 5.952a1 1 0 0 1-.702.29z"></path></svg></a></h1><h2 class="text-24 font-light text-light-gray styles_tagline__Mhn2j">The next-generation Python notebook</h2></div><div class="flex flex-row items-end gap-3"><button type="button" data-test="get-it-button" class="styles_reset__0clCw styles_button__BmLM4 styles_secondary__zB2Yb styles_button__5P5ng"><div class="flex flex-row items-center justify-center"><div class="text-14 font-semibold text-dark-gray">Visit</div><svg xmlns="http://www.w3.org/2000/svg" width="12" height="7" viewBox="0 0 12 7"><path fill="#CCC8C7" d="M5.998 6.244a1 1 0 0 1-.703-.292L1.048 1.705A1.003 1.003 0 0 1 1.05.293.996.996 0 0 1 2.462.29L6 3.83 9.538.29a1.003 1.003 0 0 1 1.412.003.997.997 0 0 1 .002 1.412L6.705 5.952a1 1 0 0 1-.702.29z"></path></svg></div></button><button type="button" data-test="vote-button" class="styles_reset__0clCw styles_large__O8Tv3 styles_voteButton__lEzEx"><div class="flex flex-row items-center justify-center"><div class="styles_icon__kJG98 styles_white__sa9Bu"></div><div class="text-14 font-semibold text-white uppercase">Upvote<!-- --> <!-- -->229</div></div></button></div></div></div><div class="mt-12 flex flex-col gap-3"><div class="flex flex-row items-center justify-between"><div class="flex flex-row gap-2"><div class="text-16 font-normal text-light-gray" data-test="pricing-type">Free</div></div><div class="styles_actionItems__mr5bO text-16 text-light-gray"><button class="textButton_textButton__SIhmH"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="none"><path stroke="#4B587C" stroke-linecap="round" stroke-linejoin="round" d="m9.356 12.244-.925 1.543a.506.506 0 0 1-.862 0l-.925-1.543A.5.5 0 0 0 6.219 12H2.5a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5H9.781a.5.5 0 0 0-.425.244"></path></svg> Discuss</button><button class="textButton_textButton__SIhmH" data-test="collection-product-700475-collect-text" aria-label="Add to Collection"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="13" fill="none"><path stroke="#4B587C" stroke-linecap="round" stroke-linejoin="round" d="M9 12 5 9.5 1 12V1a.5.5 0 0 1 .5-.5h7A.5.5 0 0 1 9 1z"></path></svg>Collect</button><button class="textButton_textButton__SIhmH" data-test="share-btn"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="none"><path stroke="#4B587C" stroke-linecap="round" stroke-linejoin="round" d="M5.375 4.29 8 1.668l2.625 2.624M8.002 8.667V1.668M11 6.667h1.5a.5.5 0 0 1 .5.5v6.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-6.5a.5.5 0 0 1 .5-.5H5"></path></svg> Share</button><button class="textButton_textButton__SIhmH"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="none"><path stroke="#4B587C" stroke-linecap="round" stroke-linejoin="round" d="M2.75 13V8.5h3.5m8 4.5H1.75m4.5 0V5.5h3.5m3.5-3h-3.5V13h3.5z"></path></svg> Stats</button></div></div><div class="styles_htmlText__eYPgj text-16 font-normal text-dark-gray"><b>marimo</b> is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.</div><div class="flex flex-col justify-between gap-2 sm:flex-row"><div class="text-16 font-normal text-light-gray">Launched <!-- -->in<!-- --> <a class="styles_reset__0clCw styles_blank__ZZrxq" href="/topics/developer-tools"><div class="inline-block shrink-0 self-start whitespace-nowrap rounded-[20px] border px-2 lg:rounded-[12px] bg-light-sky border-0 styles_topicItem__zLFg_"><div><span class="text-12 font-semibold text-dark-gray text-dark-gray">Developer Tools</span></div></div></a> <a class="styles_reset__0clCw styles_blank__ZZrxq" href="/topics/artificial-intelligence"><div class="inline-block shrink-0 self-start whitespace-nowrap rounded-[20px] border px-2 lg:rounded-[12px] bg-light-sky border-0 styles_topicItem__zLFg_"><div><span class="text-12 font-semibold text-dark-gray text-dark-gray">Artificial Intelligence</span></div></div></a> <a class="styles_reset__0clCw styles_blank__ZZrxq" href="/topics/github"><div class="inline-block shrink-0 self-start whitespace-nowrap rounded-[20px] border px-2 lg:rounded-[12px] bg-light-sky border-0 styles_topicItem__zLFg_"><div><span class="text-12 font-semibold text-dark-gray text-dark-gray">GitHub</span></div></div></a> +1 <!-- -->by<!-- --> <div class="styles_inline__HTSLZ"><a class="text-16 font-normal text-blue" href="/products/marimo">marimo</a></div></div></div></div></div><div class="styles_layout__gA7_o styles_container__eS_WB"><div class="styles_mainContainer__iJ2s_ justify-center mt-10 flex flex-1 flex-row items-center gap-6"><div class="styles_galleryContainer__e6tX1 flex flex-row gap-2"><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><svg xmlns="http://www.w3.org/2000/svg" width="35" height="34" fill="none" viewBox="0 0 35 34" class="styles_playIcon__QlPy_"><g filter="url(#PlayVideo_svg__a)"><path fill="#fff" d="m29.038 15.287-18-10.987a1.94 1.94 0 0 0-2.013-.038A1.98 1.98 0 0 0 8 6v22a1.97 1.97 0 0 0 1.025 1.738 1.94 1.94 0 0 0 2.012-.038l18-10.988a2 2 0 0 0 0-3.425z"></path></g><defs><filter id="PlayVideo_svg__a" width="30.004" height="34.002" x="4" y="-0.001" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" result="hardAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"></feColorMatrix><feOffset></feOffset><feGaussianBlur stdDeviation="2"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.37 0"></feColorMatrix><feBlend in2="BackgroundImageFix" result="effect1_dropShadow_709_3590"></feBlend><feBlend in="SourceGraphic" in2="effect1_dropShadow_709_3590" result="shape"></feBlend></filter></defs></svg><div class="overflow-hidden"><video style="width:391px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="391" height="220" poster="https://ph-files.imgix.net/37620e3d-baad-4414-ab1e-fbb914d24233.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=391&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/37620e3d-baad-4414-ab1e-fbb914d24233.gif?fm=mp4&crop=max&w=391&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/37620e3d-baad-4414-ab1e-fbb914d24233.gif?fm=webm&crop=max&w=391&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><img loading="lazy" srcSet="https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=368&h=220&fit=max&dpr=1 1x, https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=368&h=220&fit=max&dpr=2 2x, https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=368&h=220&fit=max&dpr=3 3x" src="https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=368&h=220&fit=max" style="width:368px;height:220px" alt="marimo gallery image" class="styles_image__I6DXW"/></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><video style="width:368px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="368" height="220" poster="https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=368&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?fm=mp4&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?fm=webm&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><video style="width:368px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="368" height="220" poster="https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=368&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?fm=mp4&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?fm=webm&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><video style="width:368px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="368" height="220" poster="https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=368&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?fm=mp4&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?fm=webm&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><video style="width:368px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="368" height="220" poster="https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=368&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?fm=mp4&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?fm=webm&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><video style="width:368px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="368" height="220" poster="https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=368&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?fm=mp4&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?fm=webm&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><video style="width:368px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="368" height="220" poster="https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=368&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?fm=mp4&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?fm=webm&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><video style="width:368px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="368" height="220" poster="https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=368&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?fm=mp4&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?fm=webm&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button><button type="button" class="text-left text-16 font-normal text-dark-gray relative" aria-label="marimo gallery media"><div class=""><video style="width:368px;height:220px" class="styles_image__I6DXW styles_video__b8SeA" aria-label="marimo gallery image" width="368" height="220" poster="https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?auto=compress&codec=mozjpeg&cs=strip&fm=webp&w=368&h=220&fit=max&frame=1&dpr=2" muted="" loop="" disableRemotePlayback="" disablePictureInPicture="" playsInline="" preload="auto"><source src="https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?fm=mp4&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/mp4"/><source src="https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?fm=webm&crop=max&w=368&h=220&dpr=2#t=0.001" type="video/webm"/></video></div></button></div></div></div><div class="styles_container__2Seaj flex flex-1 !flex-col styles_compact__rs_Rt"><div class="mt-10 flex max-h-9 flex-row flex-wrap gap-2 overflow-hidden"><div class="size-9 rounded-full" style="background-color:#fee2d6"></div><div class="size-9 rounded-full" style="background-color:#fdf4d6"></div><div class="size-9 rounded-full" style="background-color:#edf8d6"></div><div class="size-9 rounded-full" style="background-color:#e3f5e3"></div><div class="size-9 rounded-full" style="background-color:#d8ecff"></div><div class="size-9 rounded-full" style="background-color:#e6e0ff"></div><div class="size-9 rounded-full" style="background-color:#fbdcf2"></div><div class="size-9 rounded-full" style="background-color:#fee2d6"></div><div class="size-9 rounded-full" style="background-color:#fdf4d6"></div><div class="size-9 rounded-full" style="background-color:#edf8d6"></div><div class="size-9 rounded-full" style="background-color:#e3f5e3"></div><div class="size-9 rounded-full" style="background-color:#d8ecff"></div><div class="size-9 rounded-full" style="background-color:#e6e0ff"></div><div class="size-9 rounded-full" style="background-color:#fbdcf2"></div><div class="size-9 rounded-full" style="background-color:#fee2d6"></div><div class="size-9 rounded-full" style="background-color:#fdf4d6"></div><div class="size-9 rounded-full" style="background-color:#edf8d6"></div><div class="size-9 rounded-full" style="background-color:#e3f5e3"></div><div class="size-9 rounded-full" style="background-color:#d8ecff"></div><div class="size-9 rounded-full" style="background-color:#e6e0ff"></div><div class="size-9 rounded-full" style="background-color:#fbdcf2"></div><div class="size-9 rounded-full" style="background-color:#fee2d6"></div><div class="size-9 rounded-full" style="background-color:#fdf4d6"></div><div class="size-9 rounded-full" style="background-color:#edf8d6"></div><div class="size-9 rounded-full" style="background-color:#e3f5e3"></div><div class="size-9 rounded-full" style="background-color:#d8ecff"></div><div class="size-9 rounded-full" style="background-color:#e6e0ff"></div><div class="size-9 rounded-full" style="background-color:#fbdcf2"></div><div class="size-9 rounded-full" style="background-color:#fee2d6"></div><div class="size-9 rounded-full" style="background-color:#fdf4d6"></div><div class="size-9 rounded-full" style="background-color:#edf8d6"></div><div class="size-9 rounded-full" style="background-color:#e3f5e3"></div><div class="size-9 rounded-full" style="background-color:#d8ecff"></div><div class="size-9 rounded-full" style="background-color:#e6e0ff"></div><div class="size-9 rounded-full" style="background-color:#fbdcf2"></div><div class="size-9 rounded-full" style="background-color:#fee2d6"></div></div><div class="mt-4 flex flex-col gap-4 rounded border border-light-blue p-2 sm:mt-8 sm:gap-8 sm:p-6"><div class="flex flex-col justify-between gap-4 sm:flex-row"><div><div class="text-18 font-semibold text-dark-gray styles_noOfLines-1__u8iSd">Maker Shoutouts</div><div class="text-16 font-normal text-light-gray">We couldn't have built this without...</div></div><div class="flex flex-row items-center justify-between gap-4 sm:justify-end sm:gap-6"><div class="flex flex-row gap-4"><div class=""><img loading="lazy" srcSet="https://ph-files.imgix.net/c17453f9-e544-4e6a-86b0-4027cf710cf5.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=1 1x, https://ph-files.imgix.net/c17453f9-e544-4e6a-86b0-4027cf710cf5.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=2 2x, https://ph-files.imgix.net/c17453f9-e544-4e6a-86b0-4027cf710cf5.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=3 3x" src="https://ph-files.imgix.net/c17453f9-e544-4e6a-86b0-4027cf710cf5.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop" style="width:34px;height:34px" alt="GitHub" class="rounded" data-test="GitHub-thumbnail"/></div><div class=""><img loading="lazy" srcSet="https://ph-files.imgix.net/2ec5f1e9-972c-4fad-807d-f85d0fe3c928.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=1 1x, https://ph-files.imgix.net/2ec5f1e9-972c-4fad-807d-f85d0fe3c928.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=2 2x, https://ph-files.imgix.net/2ec5f1e9-972c-4fad-807d-f85d0fe3c928.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=3 3x" src="https://ph-files.imgix.net/2ec5f1e9-972c-4fad-807d-f85d0fe3c928.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop" style="width:34px;height:34px" alt="Pyodide" class="rounded" data-test="Pyodide-thumbnail"/></div><div class=""><img loading="lazy" srcSet="https://ph-files.imgix.net/2396d46b-2c67-4abe-9dca-3c123c88efac.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=1 1x, https://ph-files.imgix.net/2396d46b-2c67-4abe-9dca-3c123c88efac.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=2 2x, https://ph-files.imgix.net/2396d46b-2c67-4abe-9dca-3c123c88efac.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=3 3x" src="https://ph-files.imgix.net/2396d46b-2c67-4abe-9dca-3c123c88efac.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop" style="width:34px;height:34px" alt="DuckDB" class="rounded" data-test="DuckDB-thumbnail"/></div><div class=""><img loading="lazy" srcSet="https://ph-files.imgix.net/f1a37595-dad1-4bd3-aeba-c4488e298ce7.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=1 1x, https://ph-files.imgix.net/f1a37595-dad1-4bd3-aeba-c4488e298ce7.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=2 2x, https://ph-files.imgix.net/f1a37595-dad1-4bd3-aeba-c4488e298ce7.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop&dpr=3 3x" src="https://ph-files.imgix.net/f1a37595-dad1-4bd3-aeba-c4488e298ce7.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=34&h=34&fit=crop" style="width:34px;height:34px" alt="Python.org" class="rounded" data-test="Python.org-thumbnail"/></div></div><button type="button" class="text-left text-16 font-semibold text-dark-gray hover:text-coral text-center group flex h-[34px] w-[148px] flex-row items-center justify-between rounded border border-light-blue px-4" data-test="show-more-shoutouts-button">Show <!-- -->more<!-- --> <svg xmlns="http://www.w3.org/2000/svg" width="27" height="30" class="cursor-pointer fill-light-gray transition-transform duration-300 group-hover:fill-brand-500"><path fill-rule="evenodd" d="m13.032 18.29-5.34-5.115a.6.6 0 0 1-.192-.448.6.6 0 0 1 .193-.448l.605-.58a.7.7 0 0 1 .468-.198.6.6 0 0 1 .468.171l4.266 4.086 4.266-4.086a.6.6 0 0 1 .468-.171.7.7 0 0 1 .468.198l.605.58a.6.6 0 0 1 .193.448.6.6 0 0 1-.193.448l-5.34 5.114a.61.61 0 0 1-.467.211.61.61 0 0 1-.468-.21"></path></svg></button></div></div></div></div><div class="mt-6 sm:mt-8 styles_container__2Seaj flex flex-1 !flex-col styles_compact__rs_Rt"><div id="comments"><!--$--><!--/$--></div><div id="about" class="mt-12 flex flex-col sm:mt-16 md:mt-16"><div class="text-16 font-semibold text-dark-gray mb-6">About this launch</div><div data-test="marimo-product-card" class="mb-8 flex flex-row gap-3"><a aria-label="marimo" href="/products/marimo"><img loading="lazy" srcSet="https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=72&h=72&fit=crop&dpr=1 1x, https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=72&h=72&fit=crop&dpr=2 2x, https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=72&h=72&fit=crop&dpr=3 3x" src="https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=72&h=72&fit=crop" style="width:72px;height:72px" alt="marimo" class="rounded" data-test="marimo-thumbnail"/></a><div class="flex flex-1 flex-row justify-between"><div class="flex flex-col"><a class="text-12 sm:text-16 md:text-16 font-semibold text-dark-gray styles_noOfLines-1__u8iSd block" href="/products/marimo">marimo</a><a class="text-12 sm:text-16 md:text-16 font-normal text-light-gray styles_noOfLines-1__u8iSd block" href="/products/marimo">The next-generation Python notebook</a><div class="flex flex-row gap-4"><div class="flex flex-row items-center justify-center"><div class="flex flex-row"><label data-test="star-1" class="cursor-pointer styles_smallStar__INWcE"><input hidden="" type="radio" value="1"/><svg xmlns="http://www.w3.org/2000/svg" width="24" height="23" viewBox="0 0 24 23" data-test="star-1-filled" class="fill-light-blue pl-1 !fill-[#f5a623]"><path d="m12 0 3.709 7.514L24 8.718l-6 5.848 1.416 8.26-7.416-3.9-7.416 3.9L6 14.566 0 8.718l8.291-1.204z"></path></svg></label><label data-test="star-2" class="cursor-pointer styles_smallStar__INWcE"><input hidden="" type="radio" value="2"/><svg xmlns="http://www.w3.org/2000/svg" width="24" height="23" viewBox="0 0 24 23" data-test="star-2-filled" class="fill-light-blue pl-1 !fill-[#f5a623]"><path d="m12 0 3.709 7.514L24 8.718l-6 5.848 1.416 8.26-7.416-3.9-7.416 3.9L6 14.566 0 8.718l8.291-1.204z"></path></svg></label><label data-test="star-3" class="cursor-pointer styles_smallStar__INWcE"><input hidden="" type="radio" value="3"/><svg xmlns="http://www.w3.org/2000/svg" width="24" height="23" viewBox="0 0 24 23" data-test="star-3-filled" class="fill-light-blue pl-1 !fill-[#f5a623]"><path d="m12 0 3.709 7.514L24 8.718l-6 5.848 1.416 8.26-7.416-3.9-7.416 3.9L6 14.566 0 8.718l8.291-1.204z"></path></svg></label><label data-test="star-4" class="cursor-pointer styles_smallStar__INWcE"><input hidden="" type="radio" value="4"/><svg xmlns="http://www.w3.org/2000/svg" width="24" height="23" viewBox="0 0 24 23" data-test="star-4-filled" class="fill-light-blue pl-1 !fill-[#f5a623]"><path d="m12 0 3.709 7.514L24 8.718l-6 5.848 1.416 8.26-7.416-3.9-7.416 3.9L6 14.566 0 8.718l8.291-1.204z"></path></svg></label><label data-test="star-5" class="cursor-pointer styles_smallStar__INWcE"><input hidden="" type="radio" value="5"/><svg xmlns="http://www.w3.org/2000/svg" width="24" height="23" viewBox="0 0 24 23" data-test="star-5-filled" class="fill-light-blue pl-1 !fill-[#f5a623]"><path d="m12 0 3.709 7.514L24 8.718l-6 5.848 1.416 8.26-7.416-3.9-7.416 3.9L6 14.566 0 8.718l8.291-1.204z"></path></svg></label></div><a class="text-12 sm:text-14 md:text-14 font-semibold text-dark-gray ml-4" href="/products/marimo/reviews">7</a><a class="text-12 sm:text-14 md:text-14 font-normal text-light-gray ml-1" href="/products/marimo/reviews">reviews</a></div><div class="flex flex-row gap-1"><div class="text-14 font-semibold text-dark-gray">265</div><div class="text-14 font-normal text-light-gray">followers</div></div></div></div><div class="flex flex-col justify-center"><button type="button" data-test="product-follow-button" class="styles_reset__0clCw styles_button__BmLM4 styles_small___owQ3">Follow for updates</button></div></div></div><div class="text-14 font-normal text-light-gray mb-8">marimo <!-- -->by <div class="styles_inline__HTSLZ"><a class="text-14 font-normal text-blue" href="/products/marimo">marimo</a> </div>was hunted by<!-- --> <div class="styles_inline__Y6yqI"><a class="text-14 font-normal text-blue" href="/@chrismessina">Chris Messina</a></div> in <a class="text-14 font-normal text-blue" href="/topics/developer-tools">Developer Tools</a>, <a class="text-14 font-normal text-blue" href="/topics/artificial-intelligence">Artificial Intelligence</a>, <a class="text-14 font-normal text-blue" href="/topics/github">GitHub</a>.<!-- --> Made by <div class="styles_inline__Y6yqI"><a class="text-14 font-normal text-blue" href="/@themylesfiles">Myles Scolnick</a></div> and <div class="styles_inline__Y6yqI"><a class="text-14 font-normal text-blue" href="/@akshay_agrawal6">Akshay Agrawal</a></div>.<!-- --> <!-- -->Featured on <!-- -->November 19th, 2024<!-- -->. <div class="styles_inline__HTSLZ"><a class="text-14 font-normal text-blue" href="/products/marimo">marimo</a></div> <!-- -->is rated <a class="text-14 font-normal text-blue" href="/products/marimo/reviews">5/5<!-- --> ★<!-- --> </a>by <!-- -->7 users<!-- -->. <!-- -->This is marimo's first launch.</div><div class="mb-10 flex flex-row justify-between"><div class="flex flex-col items-center gap-2"><div class="text-14 font-semibold text-light-gray">Upvotes</div><div class="text-18 font-semibold text-dark-gray">229</div><img alt="Vote chart" src="/widgets/embed-image/v1/chart-votes.svg?post_id=588585" width="80" height="24"/></div><div class="styles_divider__HM8sQ"></div><div class="flex flex-col items-center gap-2"><div class="text-14 font-semibold text-light-gray">Comments</div><div class="text-18 font-semibold text-dark-gray">41</div><img alt="Vote chart" src="/widgets/embed-image/v1/chart-comments.svg?post_id=588585" width="80" height="24"/></div><div class="styles_divider__HM8sQ"></div><div class="flex flex-col items-center gap-2"><div class="text-14 font-semibold text-light-gray">Day rank</div><div class="text-18 font-semibold text-dark-gray">#7</div><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 46 23" width="44" height="21"><path fill="#F5F8FF" stroke="#7D8AB0" d="M30 1H16a1 1 0 0 0-1 1v20h16V2a1 1 0 0 0-1-1ZM15 9H2c-.265 0-.52.091-.707.254A.81.81 0 0 0 1 9.867v11.266c0 .23.105.45.293.613.187.163.442.254.707.254h13zm29 3H31v10h13a1 1 0 0 0 1-1v-8a1 1 0 0 0-1-1Z"></path></svg></div><div class="styles_divider__HM8sQ"></div><div class="flex flex-col items-center gap-2"><div class="text-14 font-semibold text-light-gray">Week rank</div><div class="text-18 font-semibold text-dark-gray">#35</div><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 46 23" width="44" height="21"><path fill="#F5F8FF" stroke="#7D8AB0" d="M30 1H16a1 1 0 0 0-1 1v20h16V2a1 1 0 0 0-1-1ZM15 9H2c-.265 0-.52.091-.707.254A.81.81 0 0 0 1 9.867v11.266c0 .23.105.45.293.613.187.163.442.254.707.254h13zm29 3H31v10h13a1 1 0 0 0 1-1v-8a1 1 0 0 0-1-1Z"></path></svg></div></div><div class="flex flex-row items-center justify-center gap-3"><button type="button" class="text-left text-14 font-normal text-light-gray hover:text-blue">Report</button></div></div></div><script type="application/ld+json">[{"@context":"http://schema.org","@type":"WebApplication","name":"marimo","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","datePublished":"2024-11-07T11:01:42.390-08:00","dateModified":"2024-11-27T04:41:22.838-08:00","image":"https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=format","screenshot":["https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format&fit=crop","https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?auto=format&fit=crop","https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?auto=format&fit=crop","https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?auto=format&fit=crop","https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?auto=format&fit=crop","https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?auto=format&fit=crop","https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?auto=format&fit=crop","https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?auto=format&fit=crop","https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?auto=format&fit=crop"],"operatingSystem":"Web","offers":{"@type":"Offer","price":0,"priceCurrency":"USD"},"applicationCategory":"Developer Tools","author":[{"@type":"Person","name":"Myles Scolnick","image":"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png?auto=format&fit=crop&crop=faces&w=100&h=100","url":"https://www.producthunt.com/@themylesfiles"},{"@type":"Person","name":"Akshay Agrawal","image":"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png?auto=format&fit=crop&crop=faces&w=100&h=100","url":"https://www.producthunt.com/@akshay_agrawal6"}]},{"@context":"http://schema.org","@type":"WebApplication","name":"marimo","description":"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.","datePublished":"2024-11-07T11:01:42.390-08:00","dateModified":"2024-11-27T04:41:22.838-08:00","image":"https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=format","screenshot":["https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format&fit=crop","https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?auto=format&fit=crop","https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?auto=format&fit=crop","https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?auto=format&fit=crop","https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?auto=format&fit=crop","https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?auto=format&fit=crop","https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?auto=format&fit=crop","https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?auto=format&fit=crop","https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?auto=format&fit=crop"],"operatingSystem":"Web","offers":{"@type":"Offer","price":0,"priceCurrency":"USD"},"applicationCategory":"Developer Tools","author":[{"@type":"Person","name":"Myles Scolnick","image":"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png?auto=format&fit=crop&crop=faces&w=100&h=100","url":"https://www.producthunt.com/@themylesfiles"},{"@type":"Person","name":"Akshay Agrawal","image":"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png?auto=format&fit=crop&crop=faces&w=100&h=100","url":"https://www.producthunt.com/@akshay_agrawal6"}]},{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.producthunt.com/"},{"@type":"ListItem","position":2,"name":"Product","item":"https://www.producthunt.com/products/marimo"},{"@type":"ListItem","position":3,"name":"marimo","item":"https://www.producthunt.com/posts/marimo"}]}]</script><!--$--><!--/$--></div><div id="root-portal"></div><script>(self.__next_s=self.__next_s||[]).push([0,{"children":"\n !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error(\"Segment snippet included twice.\");else{analytics.invoked=!0;analytics.methods=[\"trackSubmit\",\"trackClick\",\"trackLink\",\"trackForm\",\"pageview\",\"identify\",\"reset\",\"group\",\"track\",\"ready\",\"alias\",\"debug\",\"page\",\"once\",\"off\",\"on\",\"addSourceMiddleware\",\"addIntegrationMiddleware\",\"setAnonymousId\",\"addDestinationMiddleware\"];analytics.factory=function(e){return function(){var t=Array.prototype.slice.call(arguments);t.unshift(e);analytics.push(t);return analytics}};for(var e=0;e<analytics.methods.length;e++){var key=analytics.methods[e];analytics[key]=analytics.factory(key)}analytics.load=function(key,e){var t=document.createElement(\"script\");t.type=\"text/javascript\";t.defer=!0;t.src=\"https://segment-cdn.producthunt.com/\";var n=document.getElementsByTagName(\"script\")[0];n.parentNode.insertBefore(t,n);analytics._loadOptions=e};analytics._writeKey=\"dtyjquswuq\";analytics.SNIPPET_VERSION=\"4.15.2\";\n analytics.load(\"dtyjquswuq\");\n }}();\n","id":"segment"}])</script><script src="/_next/static/chunks/webpack-f10c1c82552cb238.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/css/995723523c94c0f2.css\",\"style\"]\n2:HL[\"/_next/static/css/1ea9739f23a3b69e.css\",\"style\"]\n3:HL[\"/_next/static/css/38f7d385ab6d9f22.css\",\"style\"]\n4:HL[\"/_next/static/css/b88e86162ffe7c55.css\",\"style\"]\n5:HL[\"/_next/static/css/c99d6c2024146960.css\",\"style\"]\n6:HL[\"/_next/static/css/639ca35bc51610d3.css\",\"style\"]\n7:HL[\"/_next/static/css/1571eeb1adaac6eb.css\",\"style\"]\n8:HL[\"/_next/static/css/dfb8dd372860f727.css\",\"style\"]\n9:HL[\"/_next/static/css/52c78cbf7408e1af.css\",\"style\"]\na:HL[\"/_next/static/css/6cc9c7cd07516c52.css\",\"style\"]\nb:HL[\"/_next/static/css/6a29de96c920f097.css\",\"style\"]\nc:HL[\"/_next/static/css/657f667ef8d3f7dc.css\",\"style\"]\nd:HL[\"/_next/static/css/4284c6d814dea4e8.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"e:I[95751,[],\"\"]\n11:I[39275,[],\"\"]\n13:I[61343,[],\"\"]\n14:I[73200,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"94531\",\"static/chunks/94531-936a58903208c445.js\",\"7851\",\"static/chunks/7851-391d4a68ffe47521.js\",\"28051\",\"static/chunks/28051-6c99bb1ef2e7af63.js\",\"23714\",\"static/chunks/23714-107263d1137b8b64.js\",\"65777\",\"static/chunks/65777-3de4ee3a8101d13d.js\",\"50634\",\"static/chunks/50634-a6b23532a6b29b55.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63761\",\"static/chunks/63761-17f7fa9792e0fc0c.js\",\"2934\",\"static/chunks/2934-e092570a1d425008.js\",\"86996\",\"static/chunks/86996-f19689892afa988b.js\",\"4095\",\"static/chunks/app/(main)/layout-35d187729779b08c.js\"],\"default\",1]\n15:I[64417,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"74468\",\"static/chunks/74468-913b2d3a1cd26fb3.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"86883\",\"static/chunks/app/(main)/not-found-7ecd9d628a6c3e70.js\"],\"default\"]\n16:I[66914,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\",\"17436\",\"stat"])</script><script>self.__next_f.push([1,"ic/chunks/17436-7d847d18b236a58e.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63185\",\"static/chunks/app/layout-8cb71c97b1bd48a2.js\"],\"AppRouter\"]\n17:I[76236,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\",\"17436\",\"static/chunks/17436-7d847d18b236a58e.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63185\",\"static/chunks/app/layout-8cb71c97b1bd48a2.js\"],\"UserAgentProvider\"]\n18:I[39342,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\",\"17436\",\"static/chunks/17436-7d847d18b236a58e.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63185\",\"static/chunks/app/layout-8cb71c97b1bd48a2.js\"],\"NavigationProgressProvider\"]\n19:I[3374,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\","])</script><script>self.__next_f.push([1,"\"17436\",\"static/chunks/17436-7d847d18b236a58e.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63185\",\"static/chunks/app/layout-8cb71c97b1bd48a2.js\"],\"default\"]\n1a:I[79395,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\",\"31462\",\"static/chunks/app/(cards)/layout-ed869996799e05ab.js\"],\"default\"]\n1b:I[75299,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\",\"17436\",\"static/chunks/17436-7d847d18b236a58e.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63185\",\"static/chunks/app/layout-8cb71c97b1bd48a2.js\"],\"ErrorBoundary\"]\n1c:I[84080,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\",\"17436\",\"static/chunks/17436-7d847d18b236a58e.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63185\",\"static/chunks/app/layout-8cb71c97b1bd48a2.js\"],\"\"]\n1e:I[64404,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-03"])</script><script>self.__next_f.push([1,"46ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\",\"17436\",\"static/chunks/17436-7d847d18b236a58e.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63185\",\"static/chunks/app/layout-8cb71c97b1bd48a2.js\"],\"GoogleAnalytics\"]\n1f:I[27640,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"87620\",\"static/chunks/87620-cdf22e94cf823402.js\",\"17436\",\"static/chunks/17436-7d847d18b236a58e.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"63185\",\"static/chunks/app/layout-8cb71c97b1bd48a2.js\"],\"GoogleTagManager\"]\n21:I[96314,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"25058\",\"static/chunks/25058-f2b5f735f386b605.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"69558\",\"static/chunks/69558-1b9bff93d908a3d5.js\",\"16470\",\"static/chunks/app/global-error-3a6f51a8df7af95d.js\"],\"default\"]\n12:[\"slug\",\"marimo\",\"d\"]\n1d:T449,\n !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console\u0026\u0026console.error\u0026\u0026console.error(\"Segment snippet included twice.\");else{analytics.invoked=!0;analytics.methods=[\"trackSubmit\",\"trackClick\",\"trackLink\",\"trackForm\",\"pageview\",\"i"])</script><script>self.__next_f.push([1,"dentify\",\"reset\",\"group\",\"track\",\"ready\",\"alias\",\"debug\",\"page\",\"once\",\"off\",\"on\",\"addSourceMiddleware\",\"addIntegrationMiddleware\",\"setAnonymousId\",\"addDestinationMiddleware\"];analytics.factory=function(e){return function(){var t=Array.prototype.slice.call(arguments);t.unshift(e);analytics.push(t);return analytics}};for(var e=0;e\u003canalytics.methods.length;e++){var key=analytics.methods[e];analytics[key]=analytics.factory(key)}analytics.load=function(key,e){var t=document.createElement(\"script\");t.type=\"text/javascript\";t.defer=!0;t.src=\"https://segment-cdn.producthunt.com/\";var n=document.getElementsByTagName(\"script\")[0];n.parentNode.insertBefore(t,n);analytics._loadOptions=e};analytics._writeKey=\"dtyjquswuq\";analytics.SNIPPET_VERSION=\"4.15.2\";\n analytics.load(\"dtyjquswuq\");\n }}();\n22:[]\n"])</script><script>self.__next_f.push([1,"0:[\"$\",\"$Le\",null,{\"buildId\":\"4N26eUOWFft6UPVXEj-nh\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"posts\",\"marimo\"],\"initialTree\":[\"\",{\"children\":[\"(main)\",{\"children\":[\"posts\",{\"children\":[[\"slug\",\"marimo\",\"d\"],{\"children\":[\"__PAGE__\",{}]}]}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"(main)\",{\"children\":[\"posts\",{\"children\":[[\"slug\",\"marimo\",\"d\"],{\"children\":[\"__PAGE__\",{},[[\"$Lf\",\"$L10\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/52c78cbf7408e1af.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/6cc9c7cd07516c52.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/6a29de96c920f097.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/657f667ef8d3f7dc.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"4\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/4284c6d814dea4e8.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]]],null],null]},[null,[\"$\",\"$L11\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"(main)\",\"children\",\"posts\",\"children\",\"$12\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L13\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[null,[\"$\",\"$L11\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"(main)\",\"children\",\"posts\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L13\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/639ca35bc51610d3.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1571eeb1adaac6eb.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/dfb8dd372860f727.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"$L14\",null,{\"children\":[\"$\",\"$L11\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"(main)\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L13\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[\"$\",\"$L15\",null,{\"code\":404}],\"notFoundStyles\":[]}],\"params\":{}}]],null],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/995723523c94c0f2.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1ea9739f23a3b69e.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/38f7d385ab6d9f22.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/b88e86162ffe7c55.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"4\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/c99d6c2024146960.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"property\":\"fb:app_id\",\"content\":\"1467820943460899\"}],[\"$\",\"link\",null,{\"rel\":\"search\",\"type\":\"application/opensearchdescription+xml\",\"title\":\"ProductHunt\",\"href\":\"/osd.xml\"}]]}],[\"$\",\"body\",null,{\"className\":\"$undefined\",\"children\":[[\"$\",\"div\",null,{\"id\":\"root-container\",\"children\":[\"$\",\"$L16\",null,{\"children\":[\"$\",\"$L17\",null,{\"userAgent\":\"$undefined\",\"children\":[\"$\",\"$L18\",null,{\"children\":[\"$\",\"$L19\",null,{\"ApolloWrapper\":\"$1a\",\"serverSideRendered\":true,\"children\":[\"$\",\"$L1b\",null,{\"children\":[\"$\",\"$L11\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L13\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}]}]}]}]}]}]}],[\"$\",\"div\",null,{\"id\":\"root-portal\"}],[[\"$\",\"$L1c\",null,{\"id\":\"intercom\",\"strategy\":\"afterInteractive\",\"dangerouslySetInnerHTML\":{\"__html\":\"\\n (function() {\\n if (window.innerWidth \u003c= 576) {\\n return;\\n }\\n window.intercomSettings = {\\n app_id: \\\"fe4ce68d4a8352909f553b276994db414d33a55c\\\"\\n };\\n (function(){var w=window;var ic=w.Intercom;if(typeof ic===\\\"function\\\"){ic('reattach_activator');ic('update',w.intercomSettings);}else{var d=document;var i=function(){i.c(arguments);};i.q=[];i.c=function(args){i.q.push(args);};w.Intercom=i;var l=function(){setTimeout(function(){var s=d.createElement('script');s.type='text/javascript';s.defer=true;s.src='https://widget.intercom.io/widget/fe4ce68d4a8352909f553b276994db414d33a55c';var x=d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s,x);}, 4000);};if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}}})();\\n })()\\n\"}}],[\"$\",\"$L1c\",null,{\"id\":\"segment\",\"strategy\":\"beforeInteractive\",\"dangerouslySetInnerHTML\":{\"__html\":\"$1d\"}}],false,[[\"$\",\"$L1e\",null,{\"gaId\":\"G-WZ46833KH9\"}],[\"$\",\"$L1f\",null,{\"gtmId\":\"G-WZ46833KH9\"}]]]]}]]}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[null,\"$L20\"],\"globalErrorComponent\":\"$21\",\"missingSlots\":\"$W22\"}]\n"])</script><script>self.__next_f.push([1,"23:I[17668,[\"53877\",\"static/chunks/53877-51c4a285eb192ef0.js\",\"46403\",\"static/chunks/46403-e33a58cdfbb894e8.js\",\"58056\",\"static/chunks/58056-751c28e77ae5a19a.js\",\"87138\",\"static/chunks/87138-0346ed4de56c8f41.js\",\"48191\",\"static/chunks/48191-5065c49d069bd01c.js\",\"14604\",\"static/chunks/14604-45e3a9aa74635210.js\",\"55579\",\"static/chunks/55579-59b56c16d22d5e09.js\",\"94531\",\"static/chunks/94531-936a58903208c445.js\",\"7851\",\"static/chunks/7851-391d4a68ffe47521.js\",\"28051\",\"static/chunks/28051-6c99bb1ef2e7af63.js\",\"23714\",\"static/chunks/23714-107263d1137b8b64.js\",\"1997\",\"static/chunks/1997-8c211c482f7f1b80.js\",\"18489\",\"static/chunks/18489-27cb2cd16662f495.js\",\"28183\",\"static/chunks/28183-d2b5c7881649326f.js\",\"44207\",\"static/chunks/44207-413f8ddf3bf8d73a.js\",\"50570\",\"static/chunks/50570-f5cbfddf7e09b62f.js\",\"85253\",\"static/chunks/85253-f8be5dd1b3c0f4dd.js\",\"41790\",\"static/chunks/41790-d16b26401942af4f.js\",\"39496\",\"static/chunks/39496-cf718729701e27bd.js\",\"85503\",\"static/chunks/app/(main)/posts/%5Bslug%5D/page-f9cfc164c5848311.js\"],\"default\"]\n24:T109f,"])</script><script>self.__next_f.push([1,"[{\"@context\":\"http://schema.org\",\"@type\":\"WebApplication\",\"name\":\"marimo\",\"description\":\"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.\",\"datePublished\":\"2024-11-07T11:01:42.390-08:00\",\"dateModified\":\"2024-11-27T04:41:22.838-08:00\",\"image\":\"https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=format\",\"screenshot\":[\"https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?auto=format\u0026fit=crop\"],\"operatingSystem\":\"Web\",\"offers\":{\"@type\":\"Offer\",\"price\":0,\"priceCurrency\":\"USD\"},\"applicationCategory\":\"Developer Tools\",\"author\":[{\"@type\":\"Person\",\"name\":\"Myles Scolnick\",\"image\":\"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100\",\"url\":\"https://www.producthunt.com/@themylesfiles\"},{\"@type\":\"Person\",\"name\":\"Akshay Agrawal\",\"image\":\"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100\",\"url\":\"https://www.producthunt.com/@akshay_agrawal6\"}]},{\"@context\":\"http://schema.org\",\"@type\":\"WebApplication\",\"name\":\"marimo\",\"description\":\"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.\",\"datePublished\":\"2024-11-07T11:01:42.390-08:00\",\"dateModified\":\"2024-11-27T04:41:22.838-08:00\",\"image\":\"https://ph-files.imgix.net/b1ada730-4bb2-488f-a2cc-7c6ef8f7130a.png?auto=format\",\"screenshot\":[\"https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/91b82925-bba0-45ca-a993-cc64be1ea2a5.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/e3911b13-470a-4702-ac2c-81cf19507959.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/f7cc5350-6eed-418b-9570-44d11e6b25d9.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/ef1a79f0-4b07-4046-86a8-fa80add633e4.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/5ec348e7-70be-4122-bfb3-9581683a727c.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/6707e104-59cd-4872-a524-27c644e1521f.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/ed29a153-7a03-448c-8a42-ce28ab38d9ac.gif?auto=format\u0026fit=crop\",\"https://ph-files.imgix.net/34b8abd3-e39a-4027-8286-a6f22eb67ccb.gif?auto=format\u0026fit=crop\"],\"operatingSystem\":\"Web\",\"offers\":{\"@type\":\"Offer\",\"price\":0,\"priceCurrency\":\"USD\"},\"applicationCategory\":\"Developer Tools\",\"author\":[{\"@type\":\"Person\",\"name\":\"Myles Scolnick\",\"image\":\"https://ph-avatars.imgix.net/210426/53c55246-19e6-46d6-8ee7-deb546e56d18.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100\",\"url\":\"https://www.producthunt.com/@themylesfiles\"},{\"@type\":\"Person\",\"name\":\"Akshay Agrawal\",\"image\":\"https://ph-avatars.imgix.net/7709330/c5d25da0-6047-4589-9aef-aa008512e29e.png?auto=format\u0026fit=crop\u0026crop=faces\u0026w=100\u0026h=100\",\"url\":\"https://www.producthunt.com/@akshay_agrawal6\"}]},{\"@context\":\"http://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.producthunt.com/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Product\",\"item\":\"https://www.producthunt.com/products/marimo\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"marimo\",\"item\":\"https://www.producthunt.com/posts/marimo\"}]}]"])</script><script>self.__next_f.push([1,"10:[[\"$\",\"$L23\",null,{}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"$24\"}}]]\n"])</script><script>self.__next_f.push([1,"20:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, minimum-scale=1\"}],[\"$\",\"meta\",\"1\",{\"name\":\"theme-color\",\"content\":\"#ffffff\"}],[\"$\",\"meta\",\"2\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"3\",{\"children\":\" marimo - The next-generation Python notebook | Product Hunt\"}],[\"$\",\"meta\",\"4\",{\"name\":\"description\",\"content\":\"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.\"}],[\"$\",\"link\",\"5\",{\"rel\":\"author\",\"href\":\"https://www.producthunt.com/@themylesfiles\"}],[\"$\",\"meta\",\"6\",{\"name\":\"author\",\"content\":\"Myles Scolnick\"}],[\"$\",\"link\",\"7\",{\"rel\":\"manifest\",\"href\":\"/manifest.json\",\"crossOrigin\":\"use-credentials\"}],[\"$\",\"meta\",\"8\",{\"name\":\"fb:app_id\",\"content\":\"1467820943460899\"}],[\"$\",\"link\",\"9\",{\"rel\":\"alternate\",\"type\":\"application/atom+xml\",\"title\":\"Product Hunt - All newest Products\",\"href\":\"https://www.producthunt.com/feed\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:title\",\"content\":\" marimo - The next-generation Python notebook | Product Hunt\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:description\",\"content\":\"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:url\",\"content\":\"https://www.producthunt.com/posts/marimo\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:site_name\",\"content\":\"Product Hunt\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:image\",\"content\":\"https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop\u0026frame=1\u0026h=512\u0026w=1024\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:type\",\"content\":\"article\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:site\",\"content\":\"@producthunt\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:creator\",\"content\":\"@themylesfiles\"}],[\"$\",\"meta\",\"20\",{\"name\":\"twitter:title\",\"content\":\" marimo - The next-generation Python notebook | Product Hunt\"}],[\"$\",\"meta\",\"21\",{\"name\":\"twitter:description\",\"content\":\"marimo is an open-source notebook for Python and SQL, designed from the ground up for working with data — run reproducible experiments, version with git, share as interactive web apps, and execute as scripts, all in a modern, AI-powered editor.\"}],[\"$\",\"meta\",\"22\",{\"name\":\"twitter:image\",\"content\":\"https://ph-files.imgix.net/eda6b3b6-007f-417a-ae02-fa0db772a125.png?auto=format\u0026fit=crop\u0026frame=1\u0026h=512\u0026w=1024\"}],[\"$\",\"link\",\"23\",{\"rel\":\"icon\",\"href\":\"https://ph-static.imgix.net/ph-favicon-brand-500.ico?auto=format\"}],[\"$\",\"link\",\"24\",{\"rel\":\"apple-touch-icon-precomposed\",\"href\":\"https://ph-static.imgix.net/ph-ios-icon.png?auto=format\"}],[\"$\",\"link\",\"25\",{\"rel\":\"chrome-webstore-item\",\"href\":\"https://producthunt.app.link/extension\"}]]\n"])</script><script>self.__next_f.push([1,"f:null\n"])</script></body></html>