{"id":34091759,"url":"https://github.com/dsa-ou/algoesup","last_synced_at":"2026-03-27T04:29:41.459Z","repository":{"id":218530297,"uuid":"746622794","full_name":"dsa-ou/algoesup","owner":"dsa-ou","description":"Algorithmic essays support: examples, templates, guides, library","archived":false,"fork":false,"pushed_at":"2026-03-19T15:31:12.000Z","size":6854,"stargazers_count":3,"open_issues_count":12,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-03-20T06:51:45.030Z","etag":null,"topics":["algorithms","data-structures"],"latest_commit_sha":null,"homepage":"https://dsa-ou.github.io/algoesup/","language":"Jupyter Notebook","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/dsa-ou.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"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":"2024-01-22T11:33:31.000Z","updated_at":"2025-12-06T22:03:02.000Z","dependencies_parsed_at":"2024-02-13T16:28:50.700Z","dependency_job_id":"8851634b-d286-457f-834e-dd368eb9638d","html_url":"https://github.com/dsa-ou/algoesup","commit_stats":{"total_commits":10,"total_committers":2,"mean_commits":5.0,"dds":0.4,"last_synced_commit":"26b7d5079a9c66041df54a3f8b25dc0bea657e3b"},"previous_names":["dsa-ou/algoesup"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/dsa-ou/algoesup","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsa-ou%2Falgoesup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsa-ou%2Falgoesup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsa-ou%2Falgoesup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsa-ou%2Falgoesup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dsa-ou","download_url":"https://codeload.github.com/dsa-ou/algoesup/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsa-ou%2Falgoesup/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31019146,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-27T03:51:26.850Z","status":"ssl_error","status_checked_at":"2026-03-27T03:51:09.693Z","response_time":164,"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":["algorithms","data-structures"],"created_at":"2025-12-14T14:49:47.893Z","updated_at":"2026-03-27T04:29:41.452Z","avatar_url":"https://github.com/dsa-ou.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Algorithmic essays support\n\nThis repository contains resources to support the creation of **algorithmic essays**,\nwhich we define as short reports, with code, that present at least two different\napproaches to solving a computational problem and evaluate each approach against\nsome criteria, like efficiency, simplicity, ease to modify.\n\nAlgorithmic essays may help the development of professional skills,\nlike writing clearly and succinctly, giving and acting on feedback,\nproducing clean code, and working collaboratively.\n\nWe created these resources:\n- **Guides** on how to: write and structure essays;\n  lint, format and type check the code; ask for, give and handle feedback on essays.\n- **Example essays** for introductory programming\n  and data structures and algorithms (DSA) courses.\n- **Essay templates** that provide a starting point for writing essays.\n- A **library** of helper functions to easily test functions and measure their run-times.\n\nThe library is on [PyPI](https://pypi.org/project/algoesup).\nThe resources are on our [documentation site](https://dsa-ou.github.io/algoesup) and\n[Deepnote project](https://deepnote.com/workspace/lpsae-cc66-cd5cf5e4-ca6e-49d8-b6ee-dbbf202143d3/project/Algorithmic-Essays-acd23b74-5d63-4ef4-a991-3b8a049ddf6b/notebook/example-jewels-21dfeb1e2a8c4abd8ffb5d9ab40bef40),\nwhich you can copy to your Deepnote account.\n\nIf you want to adapt this material to your course, this repository has\nthe guides in the `docs/` folder and the rest in the `Deepnote/` folder.\n\n## Development\nThis repository is developed with [poetry](https://python-poetry.org).\nAfter installing `poetry`, enter `poetry install` to create the development environment.\n\nTo preview the documentation that will be in GitHub Pages, enter `poetry run mkdocs serve`.\n\nThe documentation must be written in strict Markdown:\nblank line before a new list; line breaks are two spaces; indentation is 4 spaces.\n\nTo build the documentation in the `docs/` folder from the `src/docs` files, first enter\n`poetry install` to update your development environment, then\nenter `poetry run mkdocs build`.\n(Don't use `mkdocs gh-deploy` because it pushes untracked and other files,\nwithout giving you a chance to check what will be pushed.)\n\nAfter making changes to the library code, run the tests using `poetry run pytest`.\n\nWhen a new version of the library is to be put on PyPI:\n\n1. Run again the notebooks (including the coding guide), to test the library.\n2. Update the [changelog](CHANGELOG.md).\n3. Re-generate the docs as explained above.\n4. Bump the version in `pyproject.toml`, `src/docs/library.md` and `Deepnote/Dockerfile`,\n   so that a new docker image can be built.\n5. Commit with a tag indicating the new version.\n6. Run `poetry build` and `poetry publish`.\n\n## Licences\n\nThe code and text in this repository are\nCopyright © 2023–2025 by The Open University, UK.\nThe code is licensed under a [BSD 3-clause licence](LICENSE).\nThe text is licensed under a\n[Creative Commons Attribution 4.0 International Licence](http://creativecommons.org/licenses/by/4.0).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdsa-ou%2Falgoesup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdsa-ou%2Falgoesup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdsa-ou%2Falgoesup/lists"}