{"id":42926720,"url":"https://github.com/coderefinery/handsonscicomp","last_synced_at":"2026-01-30T18:10:36.580Z","repository":{"id":48255438,"uuid":"196374712","full_name":"coderefinery/handsonscicomp","owner":"coderefinery","description":"Hands on scientific computing program","archived":false,"fork":false,"pushed_at":"2024-12-16T15:22:06.000Z","size":3111,"stargazers_count":6,"open_issues_count":7,"forks_count":4,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-09-10T04:44:32.311Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://handsonscicomp.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/coderefinery.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":null,"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":"2019-07-11T10:38:52.000Z","updated_at":"2025-01-09T23:18:42.000Z","dependencies_parsed_at":"2024-12-16T16:27:19.772Z","dependency_job_id":"0b1e7f82-00ac-4c5f-9d36-7863720c35d9","html_url":"https://github.com/coderefinery/handsonscicomp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/coderefinery/handsonscicomp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coderefinery%2Fhandsonscicomp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coderefinery%2Fhandsonscicomp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coderefinery%2Fhandsonscicomp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coderefinery%2Fhandsonscicomp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/coderefinery","download_url":"https://codeload.github.com/coderefinery/handsonscicomp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coderefinery%2Fhandsonscicomp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28917035,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-30T16:37:38.804Z","status":"ssl_error","status_checked_at":"2026-01-30T16:37:37.878Z","response_time":66,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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-30T18:10:35.859Z","updated_at":"2026-01-30T18:10:36.569Z","avatar_url":"https://github.com/coderefinery.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Hands-on Scientific Computing\n=============================\n\nHands-on SciComp is a practical scientific computing reference and\ncourse.  The intention is not to make a new course, but to organize\nall the best material that is already available and provide better\nintroductions and motivation.\n\n\n\nCourses\n--------\n\nSee `DESIGN.rst \u003cDESIGN.rst\u003e`__ for the philosophy behind choosing the\ncourses and levels.\n\n\n\nLocal customization\n-------------------\n\nOne primary design criteria is *standard material with local\ncustomizations*.  Thus, we can share the work of finding the overall\nbest material and still allow local customization - either as\nstandalone or embedding within another Sphinx project.  This is done\nusing our custom-developed Sphinx extension `sphinx_ext_substitution\n\u003chttps://github.com/NordicHPC/sphinx_ext_substitution/\u003e`__.\n\nTo make local customizations, see the ``sites/`` directory for\nexamples.  Define a yaml file with the key ``site-name``, and then any\nother substitutions you would like.  Set the path to this file using\n``SPHINX_EXT_SUBSTITUTION_PATH`` and you'll get your local version.\nSee ``sites/aalto/aalto.yaml`` for an example.\n\n\n\nEmbedding in another Sphinx project\n-----------------------------------\n\nThese docs are designed to be embedded within another Sphinx project\nwith your site-specific customizations.  It is not fully automatic\nyet, but here are some hints:\n\n::\n   git clone \u003chandsonscicomp-url\u003e\n   _handsonscicomp --recurse-submodules\n      # Link the source path to where you want it to appear, do what\n   you want.\n   ln -s training _handsonscicomp/source/\n   # ensure that PyYAML is installed\n\nIf your ``conf.py``::\n  sys.path.insert(0, '_handsonscicomp/source/')\n  import conf as handsonscicomp_conf\n  handsonscicomp_conf.embed(globals())\n    globals().setdefault('exclude_patterns',\n  []).append('_handsonscicomp')\n\n  # Set substitute_path to your site's own config\n  substitute_path = '_handsonscicomp/sites/aalto/'\n\n  def setup(app):\n  handsonscicomp_conf.setup(app)\n\n\n\nTechnical development\n----------------------\n\nStructure\n~~~~~~~~~\n* ``source/``: Sphinx project\n* ``courses/``: YAML files defining the \"global\" courses\n* ``sites/``: YAML files defining site-specific (local) course data,\n  to fill out the \"Local\" column.  Site-specific config does *not*\n  have to be in this repository, it can be tracked separately and\n  referenced with an environment variables.\n* ``_ext/``: Sphinx extensions.\n\n\n\nBuilding\n~~~~~~~~\n* Clone the repo, update the extension submodule.\n* ``make html``\n* You can set the environment variable\n  ``SPHINX_EXT_SUBSTITUTION_PATH`` to the path of your site-local YAML\n  configuration.\n\n\nMaintenance and contributing\n----------------------------\n\nThis is currently an alpha-level project.  Until there is enough\ncritical mass for code review, minor changes are pushed directly to\nmaster and more significant changes are pull-requested.\n\nHands-On Scicomp is currently under the CodeRefinery umbrella, but\ncurrently led by Aalto University.  However, the intention is that\nthis is a cross-university project so contributions from all members\nare considered equally.  Contact: Richard Darst\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoderefinery%2Fhandsonscicomp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcoderefinery%2Fhandsonscicomp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoderefinery%2Fhandsonscicomp/lists"}