{"id":42194639,"url":"https://github.com/scientific-python/executable-tutorials","last_synced_at":"2026-01-27T00:02:07.839Z","repository":{"id":292747497,"uuid":"981782712","full_name":"scientific-python/executable-tutorials","owner":"scientific-python","description":"A skeleton repository for tutorials infrastructure","archived":false,"fork":false,"pushed_at":"2025-09-25T23:20:21.000Z","size":484,"stargazers_count":10,"open_issues_count":23,"forks_count":8,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-10-31T06:40:01.282Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://scientific-python.github.io/executable-tutorials/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scientific-python.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-05-11T21:38:48.000Z","updated_at":"2025-10-07T18:57:08.000Z","dependencies_parsed_at":"2025-05-12T00:18:39.657Z","dependency_job_id":"6f8a7ddd-876f-4091-9cb7-eb749f7ef215","html_url":"https://github.com/scientific-python/executable-tutorials","commit_stats":null,"previous_names":["scientific-python/executable-tutorials"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/scientific-python/executable-tutorials","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scientific-python%2Fexecutable-tutorials","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scientific-python%2Fexecutable-tutorials/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scientific-python%2Fexecutable-tutorials/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scientific-python%2Fexecutable-tutorials/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scientific-python","download_url":"https://codeload.github.com/scientific-python/executable-tutorials/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scientific-python%2Fexecutable-tutorials/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28792638,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-26T21:49:50.245Z","status":"ssl_error","status_checked_at":"2026-01-26T21:48:29.455Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-27T00:02:07.162Z","updated_at":"2026-01-27T00:02:07.829Z","avatar_url":"https://github.com/scientific-python.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Executable Tutorials\n\n## Use Cases\n\nMany organizations maintain collections of tutorials addressing realistic\nproblems in a science domain, with runnable code examples written and\nkept current by experts in the tools. They are useful as:\n\n- A trove of working snippets to copy and paste\n- A maintained resource for self-guided learning\n- A ready-to-use curriculum for hands-on workshops\n- A suite of science domain-specific \"integration tests\" for the showcased libraries\n\n## Key Features\n\nThis repository demonstrates one way to configure a collection of tutorials,\ncovering some core features:\n\n- Source is in [MyST Markdown][] which is easy for humans to edit and review.\n- The executed examples—code and results—are published as a\n  [static site][static site example].\n- The examples can be opened as Jupyter notebooks to run and edit:\n  - In a user's local environment\n  - In the cloud using [Binder][binder example]\n  - (Experimental) In the user's browser via a [Jupyter Lite app][jupyterlite example]\n- The examples can be tested using `pytest`, both locally and on CI.\n\n## Try It Out\n\n- Read the [published examples][static site example].\n\n- Open it on [Binder][binder example] to run the examples in the cloud.\n\n- Download and run the examples locally.\n\n  ```sh\n  git clone https://github.com/scientific-python/executable-tutorials\n  ```\n\n  For users of [pixi][]:\n\n  ```sh\n  pixi run start\n  ```\n\n  Alternatively, install the requirements with pip and start JupyterLab.\n\n  ```sh\n  pip install -r requirements.txt\n  jupyter lab\n  ```\n## Build the site\n\nThere are currently two distinct technology stacks that support the\n`executable-tutorials` paradigm: a legacy sphinx-based static-site generation\nengine, and the newer [myst][myst-org] project.\nThe `executable-tutorials` repo contains information about both development\npatterns, and endeavors to serve as a transition guide between technology\nstacks.\n\nBy default, the necessary tooling for both technology stacks is installed with\n`pip install -r requirements.txt`\n\n### Build with sphinx\n\n```bash\nmake html\n```\n\nThe static site can then be viewed by simply opening the index in any browser,\nfor example::\n\n```bash\nfirefox _build/html/index.html\n```\n\n### Build with `myst`\n\n```bash\nmyst start --execute\n```\n\nThis will execute the notebooks, build the site, and set up a server for rendering\nthe site.\nThe rendered page can be viewed by opening `localhost:3000` in a browser.\n\n## Make Your Own\n\nSee the [Guide for Maintainers][] to create your own collection of tutorials.\n\n[Myst Markdown]: https://mystmd.org/guide/typography\n[static site example]: https://scientific-python.github.io/executable-tutorials/\n[binder example]: https://mybinder.org/v2/gh/scientific-python/executable-tutorials/main\n[jupyterlite example]: https://scientific-python.github.io/executable-tutorials/jupyterlite/lab/index.html\n[pixi]: https://pixi.sh/\n[Guide for Maintainers]: https://scientific-python.github.io/executable-tutorials/maintainer-guide.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscientific-python%2Fexecutable-tutorials","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscientific-python%2Fexecutable-tutorials","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscientific-python%2Fexecutable-tutorials/lists"}