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.2.0.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

nopip-0.2.0-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for nopip-0.2.0.tar.gz
Algorithm Hash digest
SHA256 efc7a5d23a2a1c26c062899f87d31075151086ada8e28509772c822c7b95ae64
MD5 19609b24819a71311bc27ecfd48e9e24
BLAKE2b-256 f7cb91ca4473d1231f03495e22f847476b19cc77cf24d90dc534e73ae564ae51

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nopip-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.0 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 026efc1021a86886e64f03ad0fbd18b85524be2fcafa961b55be7a523ecfb18a
MD5 042d4041fc5ecf500d67907832cdb5c5
BLAKE2b-256 53df9b5c2bdf2cb7005905009b5826e66c67c88d1af517dbc93a3162d5a7a842

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