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', verbose=True)
    from flask import Flask

Other examples

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

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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: nopip-0.2.2.tar.gz
  • Upload date:
  • Size: 3.9 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.2.tar.gz
Algorithm Hash digest
SHA256 1cd49e3fbc5988fdef45605f9fdf81451aec656b9ad91748bc0fd01ac2e83778
MD5 304781c9852f0febcb07ecc83ec845f1
BLAKE2b-256 4f1b532d2f4ca04178688d8981d294983f7b0f338be03cf97afaaf7e0aadc4f7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nopip-0.2.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1e28cb8b1370a52b47fda25e21faa2a3106826f7223ca6a3e45344f0120d4f97
MD5 644e04e4d9005893080572e8fa276c34
BLAKE2b-256 b96555917399141c68df82b00e7eb237d8d9583ab45b46082fe9d41dd540aed1

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