Skip to main content

A simple module to install Python packages programmatically

Project description

nopip

A simple module to install Python packages programmatically, without needing to use pip to install nopip. Useful for quick scripts, testing, or when you want to embed all the requirements of your app into your code.

Usage

Embed all the requirements of your app into your code for simplicity. You can even try importing packages and install them in case of an error:

from nopip import install

try:
    from flask import Flask
except:
    install.module('Flask==2.2.3')

Other examples

install.from_requirements('./requirements.txt')
install.module('requests')
install.modules(['requests==2.5.1', 'beautifulsoup4==4.10.0'])

Installation

There is no need to install nopip via pip. Simply copy the nopip directory to your project, and you're good to go.

If you find it challenging to copy the entire nopip directory, there's an even simpler solution. You can just copy the contents of the __init__.py file and save it as nopip.py in your project directory. This way, you can still access and use the nopip functionality with minimal setup.

Note

I'd like to clarify that I don't hate pip or intend to undermine its value in the Python ecosystem. pip is an essential tool for managing Python packages and their dependencies. However, I have observed that some people, particularly beginners or those working on very simple applications, might face issues with pip when trying to set up their environment or resolve dependencies. The nopip module aims to provide an alternative way to install packages for those specific scenarios where ease of use is a priority. It's important to note that using nopip is not a substitute for proper dependency management, and it's always recommended to use pip, pipenv, or poetry for production code.

Collaboration

We welcome and appreciate any contributions to improve the nopip module. If you have ideas, suggestions, or bug fixes, feel free to collaborate by following these steps:

  • Fork the repository on GitHub (assuming the project is hosted on GitHub).
  • Clone your fork locally.
  • Create a new branch for your proposed changes. For example, use git checkout -b feature/my-new-feature to create and switch to a new branch called feature/my-new-feature.
  • Make your changes in the new branch, and commit them with meaningful commit messages.
  • Push your changes to your fork on GitHub.
  • Open a pull request on the original repository, describing your proposed changes and why they would be beneficial.
  • We will review pull requests on a regular basis and provide feedback. If your changes are accepted, they will be merged into the main repository.

If you encounter any issues or have questions, feel free to open an issue on the GitHub repository, and we'll do our best to address it.

Let's work together to make nopip even better!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nopip-0.1.0.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

nopip-0.1.0-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

Details for the file nopip-0.1.0.tar.gz.

File metadata

  • Download URL: nopip-0.1.0.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.1

File hashes

Hashes for nopip-0.1.0.tar.gz
Algorithm Hash digest
SHA256 705f7653d39ec3e635b31ae28118ea50bf2b5951e8c97817d224f3abe9e22ed4
MD5 a369ec4a1d1c266fab53eeef4289487e
BLAKE2b-256 75f7379862681ae68929e4100fa3a387e16d3df66ed54b9a6369aed9fa166452

See more details on using hashes here.

File details

Details for the file nopip-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: nopip-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.1

File hashes

Hashes for nopip-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 51806ead53a9471f99ba702c7a7de9214a1710c516f16e3c7376f66300eff6c6
MD5 0cd39c7a34a2b9f83a93beec3800cc7f
BLAKE2b-256 9f4082c1ab736d7a6aa070dd914fce178e7e40d239ae3ccb39ce5806290442bf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page