{"id":24506976,"url":"https://github.com/trsvchn/serpentarium","last_synced_at":"2025-03-15T09:11:33.152Z","repository":{"id":256632727,"uuid":"855385845","full_name":"trsvchn/serpentarium","owner":"trsvchn","description":"Serpentarium","archived":false,"fork":false,"pushed_at":"2024-09-13T00:15:47.000Z","size":6,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2025-01-21T23:42:57.413Z","etag":null,"topics":["make","pip","python","venv"],"latest_commit_sha":null,"homepage":"","language":"Makefile","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/trsvchn.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2024-09-10T19:27:33.000Z","updated_at":"2024-09-13T00:15:50.000Z","dependencies_parsed_at":"2024-09-13T07:57:06.291Z","dependency_job_id":null,"html_url":"https://github.com/trsvchn/serpentarium","commit_stats":null,"previous_names":["trsvchn/serpentarium"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trsvchn%2Fserpentarium","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trsvchn%2Fserpentarium/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trsvchn%2Fserpentarium/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trsvchn%2Fserpentarium/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trsvchn","download_url":"https://codeload.github.com/trsvchn/serpentarium/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243707370,"owners_count":20334618,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["make","pip","python","venv"],"created_at":"2025-01-21T23:43:05.622Z","updated_at":"2025-03-15T09:11:33.128Z","avatar_url":"https://github.com/trsvchn.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [WIP] Serpentarium\n\n_Yet Another Python Versions/Environments Management \"Tool\"._\n\n---\n\n## Concepts\n\nThe idea is to use GNU Make and tools provided by Python standard library, such as pip, venv, for\nmanaging packages, orchestrating Python virtual environments, and installing (compiling) Python interpreters.\n\n-- TODO\n\n## Usage\n\n\u003e [!IMPORTANT]  \n\u003e The API and command list are provisional and subject to change.\n\nPython project dir has the following structure: \n\n```sh\n.\n├── Makefile\n├── pysrc             # User code.\n│   ├── __init__.py\n│   └── lib.py\n├── requirements.txt  # Optional.\n└── ...\n    └── ...\n```\n\nAfter invoking `make python` two more directories are created `.Python` and `.venv`:\n\n```sh\n.\n├── Makefile\n├── pysrc             # User code.\n│   ├── __init__.py\n│   └── lib.py\n├── requirements.txt  # Optional.\n├── .Python           # Python source code.\n│   └── ...\n└── .venv             # Python \"build\" dir.\n    ├── bin\n    ├── include\n    ├── lib\n    └── share\n```\n\nInstall `python` and `pip` to default location `.venv`.\n\n```sh\nmake python\n```\n\nHelper command for \"health checking\".\n\n```sh\nmake ping\n```\n\nInstall packages from the `requirements.txt`.\n\n```sh\nmake pip_install\n```\n\nClean virtual env by removing `.venv` dir.\n\n```sh\nmake clean_venv\n```\n\nRemove installed and previously cloned Python source.\n\n```sh\nmake clean\n```\n\n## Contribution\n\nThe project is still in the WIP stage, so the [Discussions](https://github.com/trsvchn/serpentarium/discussions) are the right place to start.\n \n- [Discussions](https://github.com/trsvchn/serpentarium/discussions) for feedback, questions, ideas.\n- [Issues](https://github.com/trsvchn/serpentarium/issues) for bug reports.\n- [Pull Requests](https://github.com/trsvchn/serpentarium/pulls) for bug fixes, enhancements etc.  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrsvchn%2Fserpentarium","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrsvchn%2Fserpentarium","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrsvchn%2Fserpentarium/lists"}