PaiGram
Introduction
PaiGram based on [python-telegram-bot](https://github.com/python-telegram-bot/python-telegram-bot)
![Alt](https://repobeats.axiom.co/api/embed/f73c1121006cb86196f83da2170242b7a97f8be0.svg "Repobeats analytics image")
[中文文档](/docs/README_ZH.md)
## System Dependencies
- Python 3.11+
- MySQL or SQLite
- Redis
## Usage
Depending on your preferred environment, follow one of the setups below:
### WSL2 Ubuntu 22.04 Setup
For contributors using WSL2 on Ubuntu 22.04, follow the [detailed guide here](/docs/wsl/EN.md).
### Standard Setup (All Environments)
#### 1. Clone PaiGram from Git
```bash
git clone git@github.com:PaiGramTeam/PaiGram.git
cd PaiGram/
git submodule update --init --recursive
```
#### 2. Project Setup
It's recommended to use a virtual environment. You can set it up via `venv` or `virtualenv`.
**Create Virtual environment:**
```bash
python3 -m venv venv
```
**Activate the virtual environment:**
*For Linux:*
```bash
source venv/bin/activate
```
*For Windows Command Prompt:*
```bash
venv\Scripts\activate.bat
```
*For Windows PowerShell:*
```bash
.\venv\Scripts\Activate.ps1
```
**Install Dependencies:**
```bash
pip install uv
uv sync
playwright install chromium
```
Optional Dependencies
```bash
uv sync --all-extras
```
**Edit Config:**
Create a dotenv config (`.env`) based on the given example. Ensure to provide the necessary database connection
details and bot token parameters.
```bash
cp .env.example .env
```
For detailed configurations, refer to the [Wiki/Env Settings](https://github.com/PaiGramTeam/PaiGram/wiki/Env-Settings).
#### 3. Database Setup with Alembic
```bash
alembic upgrade head
```
#### 4. Run PaiGram
Ensure the `venv` is still active:
```bash
python ./run.py
```
### Alternative Deployments
- **Docker:** For deployments using Docker, see
the [Wiki/Deploy with Docker](https://github.com/PaiGramTeam/PaiGram/wiki/Deploy-with-Docker).
- **Podman:** For deployments using Podman, see
the [Wiki/Deploy with Podman](https://github.com/PaiGramTeam/PaiGram/wiki/Deploy-with-Podman).
## Additional Information
This project is currently being expanded,
adding more entertainment and information query features related to Genshin Impact.
Stay tuned!
## Acknowledgments
| Nickname | Introduce |
|:-----------------------------------------------------------------------:|------------------|
| [原神抽卡全机制总结](https://www.bilibili.com/read/cv10468091) | 本项目抽卡模拟器使用的逻辑 |
| [西风驿站 猫冬](https://bbs.mihoyo.com/ys/accountCenter/postList?id=74019947) | 本项目攻略图图源 |
| [Yunzai-Bot](https://github.com/Le-niao/Yunzai-Bot) | 本项使用的抽卡图片和前端资源来源 |
| [Crawler-ghhw](https://github.com/DGP-Studio/Crawler-ghhw) | 本项目参考的爬虫代码 |
| [Enka.Network](https://enka.network) | 角色卡片的数据来源 |
| [miao-plugin](https://github.com/yoimiya-kokomi/miao-plugin) | 角色卡片的参考项目 |
| [DGP HuTao API](https://hut.ao/en/) | 深渊数据来源 |