Metadata-Version: 2.4
Name: browser-service
Version: 1.0.0
Summary: Browser automation service with AI-powered element identification and locator generation
Home-page: https://github.com/monkscode/browser-service
Author: monkscode
Author-email: monkscode <1dhruvilvyas@gmail.com>
Maintainer-email: monkscode <1dhruvilvyas@gmail.com>, Devasy23 <patel.devasy.23@gmail.com>
License: Apache 2.0
Project-URL: Homepage, https://github.com/monkscode/browser-service
Project-URL: Documentation, https://github.com/monkscode/browser-service#readme
Project-URL: Repository, https://github.com/monkscode/browser-service
Project-URL: Bug Tracker, https://github.com/monkscode/browser-service/issues
Keywords: browser,automation,testing,locators,selenium,playwright,robot-framework,ai
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: Internet :: WWW/HTTP :: Browsers
Classifier: License :: OSI Approved :: MIT License
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: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: browser-use>=0.7.10
Requires-Dist: playwright>=1.40.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: pydantic-settings>=2.0.0
Requires-Dist: aiohttp>=3.9.0
Requires-Dist: beautifulsoup4>=4.12.0
Requires-Dist: langchain-google-genai>=0.0.5
Requires-Dist: flask>=3.0.0
Requires-Dist: requests>=2.31.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: black>=23.0; extra == "dev"
Requires-Dist: flake8>=6.0; extra == "dev"
Requires-Dist: mypy>=1.0; extra == "dev"
Requires-Dist: isort>=5.12; extra == "dev"
Provides-Extra: test
Requires-Dist: pytest>=7.0; extra == "test"
Requires-Dist: pytest-asyncio>=0.21; extra == "test"
Requires-Dist: pytest-cov>=4.0; extra == "test"
Dynamic: author
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-python

# Packaging Folder - Browser Service PyPI Package

This folder contains everything needed to package and publish `tools/browser_service` as a standalone PyPI package.

## 🎯 Goal

Transform `tools/browser_service` into `browser-service` package that can be installed via:
```bash
pip install browser-service
```

## 📋 Quick Start

1. **Read the overview**: Open `SUMMARY.md`
2. **Follow the checklist**: Work through `CHECKLIST.md`
3. **Get detailed help**: Reference `PUBLISHING_GUIDE.md` as needed
4. **After publishing**: Use `MIGRATION_GUIDE.md` to update this project

## 📁 Files in This Folder

### Essential Documents (Read These!)
- **`SUMMARY.md`** - Start here! Complete overview
- **`CHECKLIST.md`** - Your main guide with step-by-step instructions
- **`PUBLISHING_GUIDE.md`** - Detailed publishing instructions
- **`MIGRATION_GUIDE.md`** - How to use the published package in this project

### Package Configuration (Copy to New Repo)
- `setup.py` - Package setup configuration
- `pyproject.toml` - Modern packaging configuration
- `requirements.txt` - Package dependencies
- `MANIFEST.in` - Non-Python files to include
- `.gitignore` - Git ignore rules
- `README_PACKAGE.md` - Package documentation (rename to README.md)
- `CHANGELOG.md` - Version history

### Helper Tools
- `copy_to_new_repo.ps1` - Script to copy files automatically
- `test_package_installation.py` - Test package after installation

## 🚀 Three-Step Process

### Step 1: Prepare
```powershell
# Clone your new GitHub repository
git clone https://github.com/YOUR_USERNAME/browser-service.git

# Copy files using the script
.\packaging\copy_to_new_repo.ps1

# Or copy manually
# (see SUMMARY.md for details)
```

### Step 2: Publish
```powershell
# In your new repository
cd path\to\browser-service

# Update metadata in setup.py, pyproject.toml, README.md

# Build
python -m build

# Test on TestPyPI
twine upload --repository testpypi dist/*

# Publish to PyPI
twine upload dist/*
```

### Step 3: Migrate
```powershell
# Back in this project
cd C:\Users\Devasy\OneDrive\Documents\GitHub\Natural-Language-to-Robot-Framework

# Install the published package
pip install browser-service

# Update requirements.txt
# Add: browser-service>=1.0.0

# Test it works
python packaging\test_package_installation.py
```

## 📚 Document Usage Guide

| Want to... | Read this... |
|------------|--------------|
| Understand what this is all about | `SUMMARY.md` |
| Get started with publishing | `CHECKLIST.md` |
| Get detailed publishing steps | `PUBLISHING_GUIDE.md` |
| Learn how to update this project | `MIGRATION_GUIDE.md` |
| Understand package contents | `README_PACKAGE.md` |
| Copy files to new repository | Use `copy_to_new_repo.ps1` |
| Test after installation | Run `test_package_installation.py` |

## 🎓 New to Python Packaging?

No worries! The documents are written for beginners:

1. **Start with `SUMMARY.md`** - gives you the big picture
2. **Use `CHECKLIST.md`** - check off items as you go
3. **Reference `PUBLISHING_GUIDE.md`** - when you need more detail
4. **Follow `MIGRATION_GUIDE.md`** - after you publish

## ⚡ Already Familiar with PyPI?

Skip to:
- `copy_to_new_repo.ps1` - Copy files
- Update metadata in setup.py and pyproject.toml
- `python -m build && twine upload dist/*`
- Done!

## 🔧 Prerequisites

You'll need:
- Python 3.8+ installed
- PyPI account (create at https://pypi.org)
- TestPyPI account (create at https://test.pypi.org)
- GitHub repository for the package
- Basic familiarity with command line

## 📦 What Gets Packaged

The package will include:
```
browser_service/
├── __init__.py          # Package entry point
├── config.py            # Configuration management
├── agent/               # Custom actions
├── api/                 # HTTP API endpoints
├── browser/             # Browser lifecycle
├── locators/            # Locator generation
├── prompts/             # Prompt templates
├── tasks/               # Task processing
└── utils/               # Utilities
```

Plus documentation, dependencies, and metadata.

## ✅ Success Looks Like

After completing the process:
- ✅ Package visible on PyPI
- ✅ Can install: `pip install browser-service`
- ✅ Can import: `from browser_service import config`
- ✅ This project uses pip package instead of local folder
- ✅ Tests pass

## 🆘 Need Help?

1. Check the troubleshooting section in `PUBLISHING_GUIDE.md`
2. Review `CHECKLIST.md` to ensure you didn't skip a step
3. Check [Python Packaging Guide](https://packaging.python.org/)
4. Check [PyPI Help](https://pypi.org/help/)

## 📞 Questions?

See the "Support" section in `SUMMARY.md` or open an issue in your package repository.

---

**Ready to get started? Open `SUMMARY.md` first!**
