Metadata-Version: 2.4
Name: FlexbaseGFFT
Version: 1.0.2
Summary: Garena Free Fire JWT Token Generator Module
Home-page: https://github.com/Flexbasei/FlexbaseGFFT
Author: Flexbase
Author-email: your_email@example.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Requires-Dist: requests>=2.25.1
Requires-Dist: pycryptodome>=3.10.1
Requires-Dist: PyJWT>=2.1.0
Requires-Dist: protobuf>=5.26.1
Requires-Dist: urllib3
Requires-Dist: httpx
Requires-Dist: beautifulsoup4
Requires-Dist: google-play-scraper

# 🚀 FlexbaseGFFT

**FlexbaseGFFT** (**Flexbase Garena Free Fire Token**) is a fast and lightweight Python library for generating dynamic JWT tokens used in Garena Free Fire player sessions. It also includes a built-in updater that automatically retrieves the latest live game update information.

The library provides a simple synchronous API, making it easy to integrate into any Python project without using `async`/`await`.

---

## ✨ Features

- 🚀 **Fast & Lightweight**
  - Optimized for speed and efficient performance.

- 🧠 **Smart Caching**
  - During bulk processing, live game update information is fetched only once and cached in memory, reducing unnecessary network requests.

- 🛠️ **Simple API**
  - No `async`/`await` required.
  - Easy-to-use synchronous methods.

- 🔐 **Multiple Authentication Methods**
  - UID + Password
  - Access Token
  - Access Token + Open ID

- 📦 **Automatic Dependency Installation**
  - Required dependencies are installed automatically through `pip`.

- 🔄 **Live Game Updater**
  - Retrieves the latest game version information automatically.

---

## 📋 Requirements

- Python **3.10+**
- pip

---

## 📥 Installation

Clone the repository and install the package:

```bash
git clone https://github.com/Flexbasei/FlexbaseGFFT.git
cd FlexbaseGFFT
pip install .
```

Or install directly :

```bash
pip install FlexbaseGFFT
```

---

# 🛠️ Usage

```python
# -*- coding: utf-8 -*-

from FlexbaseGFFT import FFJTG, FFUpdater


def main():

    # Fetch live game update information
    print("[*] Fetching live game update information...")

    updater = FFUpdater()
    game_data = updater.info

    print("\n--- Game Update Information ---")
    print(f"VersionCode    : {game_data.get('VersionCode')}")
    print(f"ReleaseVersion : {game_data.get('ReleaseVersion')}")
    print(f"FromVersion    : {game_data.get('FromVersion')}")
    print(f"ToVersion      : {game_data.get('ToVersion')}")
    print(f"NextUpdateDate : {game_data.get('NextUpdateDate')}")
    print(f"Countdown      : {game_data.get('Countdown')}")
    print("-" * 35)

    bot = FFJTG()

    # ==========================================================
    # Method 1 : UID + Password
    # ==========================================================

    accounts = [
        {
            "uid": "4128642034",
            "pass": "71B464329BEB76CE5E4F6559F06513E2E0F170446D77E509CB847F315D7369C6"
        }
    ]

    for account in accounts:
        result = bot.uid_password(
            account["uid"],
            account["pass"]
        )

        print(result)

    # ==========================================================
    # Method 2 : Access Token
    # ==========================================================

    # result = bot.access_token(
    #     access_token="YOUR_ACCESS_TOKEN"
    # )
    #
    # print(result)

    # ==========================================================
    # Method 3 : Access Token + Open ID
    # ==========================================================

    # result = bot.access_token(
    #     access_token="YOUR_ACCESS_TOKEN",
    #     open_id="YOUR_OPEN_ID"
    # )
    #
    # print(result)


if __name__ == "__main__":
    main()
```

---

# 🔑 Authentication Methods

## 1️⃣ UID + Password

```python
from FlexbaseGFFT import FFJTG

bot = FFJTG()

result = bot.uid_password(
    uid="YOUR_UID",
    password="YOUR_PASSWORD"
)

print(result)
```

---

## 2️⃣ Access Token

Open ID will be extracted automatically.

```python
from FlexbaseGFFT import FFJTG

bot = FFJTG()

result = bot.access_token(
    access_token="YOUR_ACCESS_TOKEN"
)

print(result)
```

---

## 3️⃣ Access Token + Open ID

Fastest authentication method.

```python
from FlexbaseGFFT import FFJTG

bot = FFJTG()

result = bot.access_token(
    access_token="YOUR_ACCESS_TOKEN",
    open_id="YOUR_OPEN_ID"
)

print(result)
```

---

# 📊 Live Game Update

```python
from FlexbaseGFFT import FFUpdater

updater = FFUpdater()

print(updater.info)
```

Example Output:

```python
{
    "VersionCode": "2019119999",
    "ReleaseVersion": "OB50",
    "FromVersion": "OB49",
    "ToVersion": "OB50",
    "NextUpdateDate": "2026-08-20",
    "Countdown": "13 Days"
}
```

---

# ⚡ Performance

During bulk processing:

- First request fetches live update information.
- Remaining requests use cached data.
- No repeated scraping.
- Faster execution.
- Lower network usage.

---

# 📂 Project Structure

```
FlexbaseGFFT/
│
├── FlexbaseGFFT/
│   ├── __init__.py
│   ├── FFJTG.py
│   ├── FFUpdater.py
│   └── utils.py
│
├── setup.py
├── pyproject.toml
├── requirements.txt
├── LICENSE
└── README.md
```

---

## 🤝 Community & Support

Stay updated with our latest projects, report bugs, or get support through our official Telegram channels.

- 💝 **Flexbase:** @Flexbasei
- 🌺 **LORD MORPHEUS:** @spideerio_yt
- 💻 **GitHub:** @Flexbasei

---

## ⭐ Support

If you find this project useful, don't forget to give it a **⭐ Star** on GitHub!

Made with ❤️ by **Flexbase**
