{"id":15042465,"url":"https://github.com/gwali-1/genenv","last_synced_at":"2025-08-23T06:10:39.970Z","repository":{"id":65383525,"uuid":"590889009","full_name":"Gwali-1/GENENV","owner":"Gwali-1","description":"create python virtual environments  with specified dependencies already installed ","archived":false,"fork":false,"pushed_at":"2023-03-11T20:31:12.000Z","size":57,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-14T20:43:17.322Z","etag":null,"topics":["bash-script","python","shell"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Gwali-1.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}},"created_at":"2023-01-19T13:03:28.000Z","updated_at":"2023-04-03T18:32:39.000Z","dependencies_parsed_at":"2023-02-15T11:10:49.447Z","dependency_job_id":null,"html_url":"https://github.com/Gwali-1/GENENV","commit_stats":{"total_commits":38,"total_committers":2,"mean_commits":19.0,"dds":"0.052631578947368474","last_synced_commit":"2ff97a5e782c0d9a84a611b141a8f252ed226eed"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Gwali-1/GENENV","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gwali-1%2FGENENV","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gwali-1%2FGENENV/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gwali-1%2FGENENV/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gwali-1%2FGENENV/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Gwali-1","download_url":"https://codeload.github.com/Gwali-1/GENENV/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gwali-1%2FGENENV/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271745695,"owners_count":24813516,"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","status":"online","status_checked_at":"2025-08-23T02:00:09.327Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["bash-script","python","shell"],"created_at":"2024-09-24T20:47:21.094Z","updated_at":"2025-08-23T06:10:39.901Z","avatar_url":"https://github.com/Gwali-1.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- ![logo](logo/genenv.png  \"genenv logo\") --\u003e\n\n\u003cimg src=\"logo/genenv.png \" alt=\"logo\" /\u003e\n\n# GENENV\n\nThis command line utility tool allows you to create python virtual environements with dependencies\nyou want already installed easily!\n\n## Features\n\n- [x] You can create virtual environments with pre-installed packages that you specify on command line\n- [x] Instead of providing package name on command line, you can add a `template.txt` file containing\n      names of packages you want intalled.\n- [x] Install packages in already existing virtual environments without having to activate them\n- [x] You can create virtual environments with no packages installed.\n\n## How it works\n\nEssentially, the process of virtual environments creation and installation of packages is done in the bash script `.createnv.sh`.\nThe bash script is called as a subprocess in the python file.\n`Click` is used to provide a CLI interface and collect arguments from the command line to pass into bash script when\nits being called.\n\n## Usage\n\n- Install with pip\n\n```bash\npip install genenv\n```\n\n## NOTE:\n\n1. if you specify package names on command line and `template.txt` file exits, `template.txt` file will be ignored.\n2. if no `template.txt` file or package name(s) are provided on command line as arguments, you'll recieve prompt if you still\n   want to proceed to create virtual environment with no preinstalled dependencies.\n3. To use contents of `template.txt` file , do not provide any package names after you specify environment name\n\n### Creating a virtual environment with name `meseeks` with django and flask installed\n\n- specifying dependecies on command line\n\n```bash\ngenenv -n meseeks flask django\n```\n\n### Creating a virtual environment with name `meseeks` with dependencies specified in `template.txt` file\n\n- create a file with name `template.txt` in same directory you will run command\n- Add package names to it\n\n```bash\ngenenv -n meseeks\n```\n\nIt detects and reads contents `template.txt` file\nthen installs package names specified inside.\nIf `template.txt` file is available and empty, environemnt is created with no installed dependencies.\n\n### Installing dependecies/packages in already existing virtual environment\n\n- specify the name option flag as the name of the environment you want to install package in\n- if you want to install numpy in an existing virtual environment called `pluto`\n  \u003e make sure youre in directory that venv is located then run\n\n```bash\n\ngenenv -n pluto  numpy\n```\n\n- run `genenv --help` to bring up help menu\n\n```\nUsage: genenv [OPTIONS] [DEPENDENCIES]...\n\n  specify package names after name flag to install them,read documentation for\n  how that works\n\nOptions:\n  -n, --name TEXT  provide name to be used for your virtual environment\n                   [required]\n  --help           Show this message and exit.\n```\n\n## Contributing\n\n- Fork this repository to your GitHub account.\n- Clone the forked repository to your local machine.\n- Create a new branch for the feature you want to work on.\n- Make your contributions.\n- Push your local branch to your remote repository.\n- Open a pull request to the develop branch of this repository.\n\n### Setting up the tool for local development\n\n- Clone this repository to your local machine.\n- Create a virtual environment for your project and activate it. Install all dependencies from requirements.txt file.\n\n- In the root directory of the project, develop the project locally from the setup configuration.\n\n```bash\npython3 setup.py develop\n```\n\n- you can now run commands using `genenv`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgwali-1%2Fgenenv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgwali-1%2Fgenenv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgwali-1%2Fgenenv/lists"}