A hosted Python library containing 16 text processing and NLP programs, accessible from anywhere.
Project description
🚀 Pipprograms: 16 NLP & Text Processing Programs
A hosted Python library containing 16 text processing, NLP, and AI programs. You can package this library and host it (e.g., on PyPI or GitHub) to import it and run it from anywhere in the world.
✨ Features
- CLI Interface: Show or run any program with a single terminal command.
- Python API: Import and run/inspect the programs directly inside your own Python scripts.
- Automated Fallbacks: Programs automatically generate sample datasets if the default paths (like Colab
/content/paths) are missing, ensuring they work out-of-the-box on any machine. - Backwards Compatible: Works with modern PEP 517 build backends and older setup.py-based systems.
📂 Included Programs
| Program # | Name | Description | Key Libraries |
|---|---|---|---|
| 1 | TF-IDF Summarizer | Extracts key sentences to summarize text | nltk, numpy |
| 2 | Custom Word Cloud | Generates overlapping-free word frequency visual clouds | nltk, matplotlib |
| 3 | Sentiment Classifier (LR) | Sentiment Classifier using balanced Logistic Regression | pandas, scikit-learn |
| 4 | Sentiment Classifier (N-gram) | Classifies sentiment using custom-sized n-grams & Logistic Regression | pandas, scikit-learn |
| 5 | Sentiment Classifier (NB) | Classifies sentiment using balanced Naive Bayes | pandas, scikit-learn |
| 6 | Spam Detector | Classifies Ham vs. Spam using Random Forest | pandas, scikit-learn |
| 7 | Document Topic Modeling | Latent Dirichlet Allocation (LDA) document clustering | PyPDF2, scikit-learn |
| 8 | One Hot Encoding | Custom script to perform One Hot Encoding | numpy, pandas |
| 9 | TF-IDF + SVM | Text Classifier using TF-IDF and Support Vector Machine | scikit-learn |
| 10 | TF-IDF + KNN | Text Classifier using TF-IDF and K-Nearest Neighbors | scikit-learn |
| 11 | CountVectorizer + SVM | Text Classifier using CountVectorizer Bag-of-Words and SVM | scikit-learn |
| 12 | CountVectorizer + KNN | Text Classifier using CountVectorizer Bag-of-Words and KNN | scikit-learn |
| 13 | Visual for LDA (Bar) | Basic bar chart visualization for LDA topic distribution | matplotlib |
| 14 | Visual for LDA (Cloud) | Word cloud visualization for LDA topics | wordcloud, matplotlib |
| 15 | Single PDF in LDA | Runs LDA topic modeling on text extracted from a single PDF | PyPDF2, scikit-learn |
| 16 | Gemini Content Generator | Content generation using the Gemini API | google-genai |
🛠️ Installation
1. From PyPI (Standard & Recommended)
Once the package is published to PyPI (see details below), anyone in the world can install it without Git:
pip install pipprograms-tanuj
2. From a Direct URL (No Git Required)
If you host the built .whl file on any web server, public storage (S3, Dropbox, website, etc.), anyone can install it directly via the URL:
pip install https://your-domain.com/path/pipprograms-1.0.0-py3-none-any.whl
3. Local Installation (for development)
If you want to run or test it locally from the source folder:
pip install -e .
🖥️ Command Line Usage
Once installed, the pipprograms command will be globally available on your system.
1. List all programs
pipprograms list
2. View the source code of a program (e.g. Program 1)
pipprograms show 1
3. Run a program (e.g. Program 3)
pipprograms run 3
🐍 Python Usage
You can import pipprograms in any python script:
import pipprograms
# 1. Print the source code of Program 1
pipprograms.show(1)
# 2. Get the source code as a string
code_str = pipprograms.get_code(1)
# 3. Run Program 1
pipprograms.run(1)
📤 How to Host and Publish this Package
Option A: Hosting on PyPI (Free and Public)
To make your package available via pip install pipprograms (or your chosen package name):
- Create an account on PyPI.
- Install Build Tools:
pip install --upgrade build twine
- Build the Distribution Archives:
python -m build
This will create adist/directory containing.tar.gzand.whlfiles. - Upload to PyPI:
python -m twine upload dist/*
Note: You will be prompted to enter your PyPI token/credentials.
Option B: Hosting Wheel (.whl) files on Cloud/HTTP Servers (No Git required)
If you don't want to publish to PyPI and want to keep it private or host it yourself:
- Build the wheel file:
python -m build
- Upload the wheel file (located in
dist/pipprograms-1.0.0-py3-none-any.whl) to any online storage that supports direct downloads (e.g. your personal web server, AWS S3, Google Cloud Storage, or a direct link from Dropbox/OneDrive). - Install it on any machine using the direct URL:
pip install https://your-server.com/pipprograms-1.0.0-py3-none-any.whl
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pipprograms_tanuj-1.2.0.tar.gz.
File metadata
- Download URL: pipprograms_tanuj-1.2.0.tar.gz
- Upload date:
- Size: 16.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
141f32f106ebbcca3d49aeb02ca2b553cc3ab41b843eb4f9245154206c564035
|
|
| MD5 |
88ed3706fd3bb6c2f1c0cc07c2667cc6
|
|
| BLAKE2b-256 |
94780f9e9a5b55ec9bcde4276abd0a42edac04712bb4c87334391622030f338b
|
File details
Details for the file pipprograms_tanuj-1.2.0-py3-none-any.whl.
File metadata
- Download URL: pipprograms_tanuj-1.2.0-py3-none-any.whl
- Upload date:
- Size: 27.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
832ce98fcdd4b6c19e8e3fe11a9867ad7138ccdda718dbcb8c0c02fb1d51360d
|
|
| MD5 |
3087545de64bfe4fae3fee7a5b9872f0
|
|
| BLAKE2b-256 |
60912847b12833a43274d9778aa2ab645147c57ef238cc01f3da663a47445621
|