Metadata-Version: 2.4
Name: labexp
Version: 1.0.0
Summary: Lab Experiments: ML experiment management for college labs and restricted servers
Home-page: https://github.com/yourusername/labexp
Author: Lab Team
Author-email: Lab Team <lab@example.com>
Project-URL: Homepage, https://github.com/yourusername/labexp
Project-URL: Documentation, https://github.com/yourusername/labexp/wiki
Project-URL: Repository, https://github.com/yourusername/labexp
Keywords: machine-learning,experiments,tracking,ml,lab,education
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Operating System :: OS Independent
Classifier: License :: OSI Approved :: MIT License
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Education
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pandas>=1.0.0
Provides-Extra: dev
Requires-Dist: pytest>=6.0; extra == "dev"
Requires-Dist: black>=21.0; extra == "dev"
Provides-Extra: ml
Requires-Dist: scikit-learn>=0.24.0; extra == "ml"
Requires-Dist: numpy>=1.19.0; extra == "ml"
Dynamic: author
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-python

# labexp: Lab Experiments

**Fast, lightweight ML experiment management for college labs and restricted servers.**

Perfect for educational institutions, lab environments, and networks with restricted internet access.

## ✨ Features

- 🧪 **11 Pre-built ML Experiments** - Ready-to-run templates (Linear Regression, SVM, Neural Networks, K-Means, etc.)
- 📊 **Experiment Tracking** - Store and compare ML experiments
- 🔧 **Lightweight** - Minimal dependencies, works offline
- 🏫 **Lab-Ready** - Works on restricted servers and college networks
- 📦 **Zero-Config Installation** - Single command setup
- 🎓 **Educational** - Perfect for ML courses and workshops

## 🚀 Quick Start

### Installation

#### Standard (with internet):
```bash
pip install labexp
```

#### Offline/Restricted Server (no internet):
```bash
# 1. Download wheel on any machine
pip download labexp --no-deps --python-version 38 --only-binary=:all:

# 2. Transfer .whl file to lab machine

# 3. Install offline
pip install labexp-1.0.0-py3-none-any.whl
```

#### From Source (most flexible):
```bash
git clone https://github.com/yourusername/labexp.git
cd labexp
pip install -e .
```

### Usage

```python
import labexp as exp

# Show experiment code
exp.exp(1)              # Linear Regression
exp.exp(5)              # SVM
exp.exp(8)              # Neural Network

# List all 11 experiments
exp.list_experiments()

# Get experiment code as string
code = exp.get_experiment_code(3)

# Get experiment info
info = exp.get_experiment_info(2)
```

## 📚 Available Experiments

1. **Linear Regression** - Basic regression with scikit-learn
2. **Logistic Regression** - Binary classification
3. **Decision Trees** - Tree-based classification
4. **Random Forest** - Ensemble learning
5. **Support Vector Machine** - SVM classification
6. **K-Means Clustering** - Unsupervised learning
7. **Gradient Boosting** - XGBoost implementation
8. **Neural Networks** - Multi-layer perceptron
9. **Naive Bayes** - Probabilistic classifier
10. **PCA** - Dimensionality reduction
11. **Cross-Validation** - Model evaluation

## 💾 Offline Features

### 1. No Internet Required After Installation
- All 11 experiments are bundled
- All dependencies downloaded at install time
- Run experiments completely offline

### 2. Portable Installation
- Works on USB drives
- Can copy installed package to other machines
- Minimal size (~50 MB total)

### 3. Network Restrictions
- Works behind proxies
- Works on corporate/university firewalls
- No external API calls required
- Pure Python, no binary compilation needed

### 4. College Lab Support
- Works on Linux, Windows, macOS
- Compatible with standard Python 3.8+
- No admin privileges required
- Shared lab environment friendly

## 🔧 Installation Guide for Restricted Servers

### For Lab Administrators

1. **Download the package** on any machine with internet:
   ```bash
   pip download labexp --no-deps
   pip download pandas
   ```

2. **Create offline environment**:
   ```bash
   mkdir /opt/labexp-repo
   cp *.whl /opt/labexp-repo/
   ```

3. **Install for all users**:
   ```bash
   pip install --no-index --find-links=/opt/labexp-repo labexp
   ```

4. **Test installation**:
   ```bash
   python -c "import labexp; labexp.exp(1)"
   ```

### For Individual Users

1. **Download offline installer**:
   - Visit: https://pypi.org/project/labexp/
   - Download the `.whl` file

2. **Transfer to lab machine** (via USB/external drive)

3. **Install**:
   ```bash
   pip install labexp-1.0.0-py3-none-any.whl
   ```

4. **Verify**:
   ```python
   python
   >>> import labexp
   >>> labexp.exp(1)
   ```

## 📖 API Reference

### `exp(i)`
Display the code for experiment `i` (1-11)
```python
labexp.exp(5)  # Shows SVM experiment code
```

### `list_experiments()`
List all available experiments
```python
labexp.list_experiments()
```

### `get_experiment_code(i)`
Get experiment code as a string
```python
code = labexp.get_experiment_code(3)
```

### `get_experiment_info(i)`
Get complete experiment information
```python
info = labexp.get_experiment_info(2)
```

## 🎓 Educational Use Cases

- **ML Courses** - Use as teaching resource for 11 core algorithms
- **Workshops** - Run experiments without internet dependency
- **Lab Sessions** - Pre-load on lab machines for students
- **Offline Learning** - Perfect for limited-connectivity environments

## ⚙️ System Requirements

- **Python**: 3.8 or higher
- **OS**: Linux, macOS, Windows
- **Dependencies**: pandas (minimal overhead)
- **Optional**: scikit-learn, numpy for full ML features
- **Storage**: ~50 MB

## 🛠️ Development

### Install development version:
```bash
pip install -e ".[dev]"
```

### Run tests:
```bash
pytest tests/
```

### Build distribution:
```bash
python -m build
```

## 📋 Comparison

| Feature | labexp | Standard ML Libraries |
|---------|--------|----------------------|
| Offline Installation | ✅ | ❌ |
| Pre-built Experiments | ✅ | ❌ |
| Zero Config | ✅ | ❌ |
| Lab-ready | ✅ | ⚠️ |
| Minimal Dependencies | ✅ | ❌ |

## 📝 License

MIT License - See LICENSE file for details

## 🤝 Contributing

Contributions welcome! Please submit pull requests or issues on GitHub.

## 📞 Support

- **Documentation**: See `/docs` folder
- **Issues**: GitHub Issues
- **Email**: lab@example.com

---

**Made for education. Works everywhere.**
