PaiGram/README.md

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

138 lines
4.1 KiB
Markdown
Raw Normal View History

2023-03-15 12:41:21 +00:00
<h1 align="center">PaiGram</h1>
2022-07-26 10:07:31 +00:00
2023-03-15 12:41:21 +00:00
<div align="center"><img src="https://img.shields.io/badge/python-3.11%2B-blue" alt="">
2023-02-15 07:00:30 +00:00
<img src="https://img.shields.io/badge/works%20on-my%20machine-brightgreen" alt="">
<img src="https://img.shields.io/badge/status-%E5%92%95%E5%92%95%E5%92%95-blue" alt="">
<a href="https://black.readthedocs.io/en/stable/index.html"><img src="https://img.shields.io/badge/code%20style-black-000000.svg" alt="code_style" /></a>
2023-03-15 02:59:53 +00:00
<a href="https://www.codacy.com/gh/PaiGramTeam/PaiGram/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=PaiGramTeam/PaiGram&amp;utm_campaign=Badge_Grade"><img src="https://app.codacy.com/project/badge/Grade/ac5844e2b0d14a3e8aa16b9b1b099ce0" alt=""/></a>
2022-07-26 10:07:31 +00:00
</div>
2022-09-15 16:02:26 +00:00
<p>
2023-03-15 12:41:21 +00:00
<img src="https://user-images.githubusercontent.com/70872201/190447002-119a8819-b111-4a96-a0b3-701c5e256137.png" align="right" width="100px" alt="">
2023-10-09 04:03:58 +00:00
<h2 align="left">Introduction</h2>
2022-07-26 10:07:31 +00:00
2023-10-09 04:03:58 +00:00
PaiGram based on [python-telegram-bot](https://github.com/python-telegram-bot/python-telegram-bot)
2022-07-26 10:07:31 +00:00
2023-02-15 07:00:30 +00:00
![Alt](https://repobeats.axiom.co/api/embed/f73c1121006cb86196f83da2170242b7a97f8be0.svg "Repobeats analytics image")
2023-10-09 04:03:58 +00:00
[中文文档](/docs/README_ZH.md)
## System Dependencies
2022-07-26 10:07:31 +00:00
- Python 3.11+
2023-03-25 03:17:38 +00:00
- MySQL or SQLite
2022-07-26 10:07:31 +00:00
- Redis
2023-10-09 04:03:58 +00:00
## Usage
Depending on your preferred environment, follow one of the setups below:
### WSL2 Ubuntu 22.04 Setup
2022-07-26 10:07:31 +00:00
2023-10-09 04:03:58 +00:00
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
2022-09-03 04:27:26 +00:00
```bash
2023-10-09 04:03:58 +00:00
git clone git@github.com:PaiGramTeam/PaiGram.git
cd PaiGram/
git submodule update --init --recursive
```
2022-07-26 10:07:31 +00:00
2023-10-09 04:03:58 +00:00
#### 2. Project Setup
It's recommended to use a virtual environment. You can set it up via `venv` or `virtualenv`.
**Create Virtual environment:**
2022-09-03 04:27:26 +00:00
```bash
2023-10-09 04:03:58 +00:00
python3 -m venv venv
```
2022-09-03 04:27:26 +00:00
2023-10-09 04:03:58 +00:00
**Activate the virtual environment:**
*For Linux:*
```bash
2023-10-09 04:03:58 +00:00
source venv/bin/activate
```
2023-10-09 04:03:58 +00:00
*For Windows Command Prompt:*
2023-10-09 04:03:58 +00:00
```bash
venv\Scripts\activate.bat
```
*For Windows PowerShell:*
```bash
2023-10-09 04:03:58 +00:00
.\venv\Scripts\Activate.ps1
```
2023-10-09 04:03:58 +00:00
**Install Dependencies:**
2023-10-09 04:03:58 +00:00
```bash
2024-11-08 15:54:06 +00:00
pip install uv
uv sync
2023-10-09 04:03:58 +00:00
playwright install chromium
```
Optional Dependencies
```bash
2024-11-08 15:54:06 +00:00
uv sync --all-extras
```
2023-10-09 04:03:58 +00:00
**Edit Config:**
Create a dotenv config (`.env`) based on the given example. Ensure to provide the necessary database connection
details and bot token parameters.
2022-09-03 04:27:26 +00:00
```bash
2023-10-09 04:03:58 +00:00
cp .env.example .env
```
2022-07-26 10:07:31 +00:00
2023-10-09 04:03:58 +00:00
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
```
2023-02-11 05:17:02 +00:00
2023-10-09 04:03:58 +00:00
### Alternative Deployments
2023-02-11 05:17:02 +00:00
2023-10-09 04:03:58 +00:00
- **Docker:** For deployments using Docker, see
the [Wiki/Deploy with Docker](https://github.com/PaiGramTeam/PaiGram/wiki/Deploy-with-Docker).
2023-02-11 05:17:02 +00:00
2023-10-09 04:03:58 +00:00
- **Podman:** For deployments using Podman, see
the [Wiki/Deploy with Podman](https://github.com/PaiGramTeam/PaiGram/wiki/Deploy-with-Podman).
2023-02-11 05:17:02 +00:00
2023-10-09 04:03:58 +00:00
## Additional Information
2022-07-26 10:07:31 +00:00
2023-10-09 04:03:58 +00:00
This project is currently being expanded,
adding more entertainment and information query features related to Genshin Impact.
Stay tuned!
2022-07-26 10:07:31 +00:00
2023-10-09 04:03:58 +00:00
## Acknowledgments
2022-07-26 10:07:31 +00:00
2023-10-09 04:03:58 +00:00
| 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/) | 深渊数据来源 |