Metadata-Version: 2.4
Name: marimo-learn
Version: 0.14.0
Summary: marimo learning utilities
Project-URL: Repository, https://github.com/gvwilson/learn
Author-email: Greg Wilson <gvwilson@third-bit.com>
License-File: LICENSE.md
Keywords: education,marimo,open source
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.12
Requires-Dist: anywidget>=0.9.21
Requires-Dist: marimo>=0.23.0
Description-Content-Type: text/markdown

<p align="center">
  <img src="/assets/marimo-learn.png">
</p>

<p align="center">
  <span><em>A curated collection of educational <a href="https://github.com/marimo-team/marimo">marimo</a> notebooks</em> || <a href="https://discord.gg/rT48v2Y9fe">💬 Discord</a></span>
</p>

# 📚 Learn

This repository contains a curated collection of educational
[marimo](https://github.com/marimo-team/marimo) notebooks. These Python notebooks,
organized into courses, explain fundamental concepts for an expanding set of
topics, including academic topics like computer science, linear algebra,
probability, and machine learning, as well as applied topics such as how to use
popular packages such as polars, pytorch, matplotlib, and more.

Our goal with `marimo learn` is to create a central repository of high quality
notebooks for educators, students, and practitioners.

## Courses

- 🐍 [Python](python/): Learn the basics of the Python programming language
- ⚖️ [Optimization](optimization/): Learn how to solve optimization problems, with applications to finance and control

**Coming soon.** 

- 🎲 Probability
- 📏 Linear algebra
- ❄️ Polars
- 🔥 Pytorch
- 🗄️ Duckdb
- 💜 Daft
- 📈 Altair
- 📈 Plotly
- 📈 matplotlib


_We're seeking contributions! If you'd like to contribute, please [reach out](https://github.com/marimo-team/learn/issues/new?template=example_request.yaml)._

## Adding notebooks

We welcome community contributions of notebooks and entire courses (folders of
notebooks on a single topic).

To get started, please start by [opening an issue](https://github.com/marimo-team/learn/issues/new?template=example_request.yaml) and proposing the notebook
or course you'd like to contribute. Once your proposal is accepted, draft
your notebook and submit it for review as a pull request. We hold learn notebooks to a high
standard, and we may go through a few rounds of reviews before your notebook
is merged.

Here's a contribution checklist:

- [ ] Include package dependencies in notebook files [using
  `--sandbox`](https://docs.marimo.io/guides/package_reproducibility/)
- [ ] If adding a course, include a `README.md`
- [ ] Keep language direct and simple.

If you aren't comfortable adding a new notebook or course, you can also request
what you'd like to see by [filing an issue](https://github.com/marimo-team/learn/issues/new?template=example_request.yaml).

## Building and Previewing

The site is built using a Python script that exports marimo notebooks to HTML and generates an index page.

```bash
# Build the site
python scripts/build.py --output-dir _site

# Preview the site (builds first)
python scripts/preview.py

# Preview without rebuilding
python scripts/preview.py --no-build
```

## Community

We're building a community. Come hang out with us!

- 🌟 [Star us on GitHub](https://github.com/marimo-team/examples)
- 💬 [Chat with us on Discord](https://discord.gg/rT48v2Y9fe)
- 📧 [Subscribe to our Newsletter](https://marimo.io/newsletter)
- ☁️ [Join our Cloud Waitlist](https://marimo.io/cloud)
- ✏️ [Start a GitHub Discussion](https://github.com/marimo-team/marimo/discussions)
- 🦋 [Follow us on Bluesky](https://bsky.app/profile/marimo.io)
- 🐦 [Follow us on Twitter](https://twitter.com/marimo_io)
- 🕴️ [Follow us on LinkedIn](https://www.linkedin.com/company/marimo-io)


<p align="right">
  <img src="https://raw.githubusercontent.com/marimo-team/marimo/main/docs/_static/marimo-logotype-horizontal.png" height="200px">
</p>
