Metadata-Version: 2.4
Name: clickforge
Version: 0.1.0
Summary: A simple Python web automation library
Author: Azaan Atif
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: selenium
Requires-Dist: webdriver-manager

# ⚒️ ClickForge

**ClickForge** is a simple and powerful Python web automation library.

It makes browser automation easier by providing short, beginner-friendly commands instead of writing long automation scripts.

Built to make website automation faster, cleaner, and easier to understand.

---

# 📦 Installation

Install ClickForge using pip:

```bash
pip install clickforge
```

---

# 🚀 Getting Started

Import ClickForge:

```python
import clickforge
```

Open a website:

```python
clickforge.work("https://google.com")
```

That's it! ClickForge is now controlling the browser.

---

# 🌟 Your First Automation Script

```python
import clickforge

# Open website
clickforge.work("https://google.com")

# Wait for loading
clickforge.wait(3)

# Click search box
clickforge.click("#APjFqb")

# Type text
clickforge.type("#APjFqb", "Hello ClickForge")

# Press Enter
clickforge.enter("#APjFqb")

# Close browser
clickforge.close()
```

This script:

1. Opens Google 🌐
2. Finds the search box 🔍
3. Clicks it 🖱️
4. Types text ⌨️
5. Presses Enter ⏎
6. Closes the browser 🛑

---

# 🧩 Understanding Elements

A website is made of many elements:

* Buttons
* Search boxes
* Text fields
* Images
* Links
* Videos
* Menus

ClickForge controls these elements using selectors.

Example website code:

```html
<button id="login">
Login
</button>
```

The element has an ID:

```
login
```

The selector becomes:

```css
#login
```

Then ClickForge can use:

```python
clickforge.click("#login")
```

---

# 🔎 How To Find An Element

To find an element:

1. Open the website
2. Press **F12**
3. Open **Inspect**
4. Click the element you want
5. Find its ID, class, or selector
6. Use it in ClickForge

Example:

HTML:

```html
<input id="username">
```

Selector:

```css
#username
```

ClickForge:

```python
clickforge.type("#username", "Azaan")
```

---

# 🌐 Website Commands

## work()

Opens a website.

Example:

```python
clickforge.work("https://google.com")
```

---

## back()

Returns to the previous page.

Example:

```python
clickforge.back()
```

---

## refresh()

Refreshes the current page.

Example:

```python
clickforge.refresh()
```

---

## close()

Closes the browser.

Example:

```python
clickforge.close()
```

---

# 🖱️ Element Commands

## click()

Clicks an element.

Example:

```python
clickforge.click("#button")
```

---

## type()

Types text into an input field.

Example:

```python
clickforge.type("#search", "Hello World")
```

---

## enter()

Presses the Enter key.

Example:

```python
clickforge.enter("#search")
```

---

## hover()

Moves the mouse over an element.

Example:

```python
clickforge.hover("#menu")
```

---

# ⏳ Timing Commands

## wait()

Pauses the automation for a number of seconds.

Example:

```python
clickforge.wait(5)
```

This waits 5 seconds before continuing.

---

# 📜 Scroll Commands

## scroll()

Scrolls the page.

Example:

```python
clickforge.scroll(500)
```

This scrolls down 500 pixels.

---

# 🎥 Example: Play A Video

Example:

```python
import clickforge

clickforge.work("https://example.com/video")

clickforge.wait(5)

clickforge.click("#play-button")

clickforge.wait(10)

clickforge.close()
```

---

# 📝 Complete Example

```python
import clickforge

clickforge.work("https://example.com")

clickforge.wait(3)

clickforge.click("#username")

clickforge.type("#username", "User123")

clickforge.click("#password")

clickforge.type("#password", "Password123")

clickforge.click("#login")

clickforge.wait(5)

clickforge.close()
```

---

# ✨ Features

✅ Open websites
✅ Click elements
✅ Type text
✅ Press Enter
✅ Hover elements
✅ Scroll pages
✅ Refresh pages
✅ Go back pages
✅ Close browser

---

# ⚠️ Website Protection Notice

Some websites use security systems that may show verification pages or block automated browsers.

ClickForge controls the browser, but websites can decide how they handle automated activity.

For development and testing, use websites where automation is allowed.

---

# 📁 Project Structure

Example:

```
ClickForge/
│
├── clickforge/
│   ├── __init__.py
│   └── core.py
│
├── examples/
│
├── README.md
│
└── tests/
```

---

# 🛠️ Version

Current Version:

```
0.1.0
```

---

# 💎 About ClickForge

ClickForge started as a small automation project and evolved into a simple browser automation library.

The goal:

**Make automation easier for everyone.**

Built with Python ⚒️🐍
by Azaan Atif
