# YJViewer
| ![YJViewer's front page.](https://raw.githubusercontent.com/iconmaster5326/YGOJSON/main/yjv1.jpg) | ![YJViewer searching for cards.](https://raw.githubusercontent.com/iconmaster5326/YGOJSON/main/yjv2.jpg) | ![YJViewer at a card page.](https://raw.githubusercontent.com/iconmaster5326/YGOJSON/main/yjv3.jpg) |
| - | - | - |
A web application that lets you view [YGOJSON](https://github.com/iconmaster5326/YGOJSON) data.
# Running Locally
You'll need a modern version of [Python](https://www.python.org/), at least 3.8, to run this code. To install YJViewer from [PyPI](https://pypi.org):
```bash
python3 -m pip install yjviewer
```
Or to install it if you have the repository downloaded:
```bash
python3 -m pip install -e .
```
From there, you can run this application using `flask`:
```bash
flask --app yjviewer --debug run
```
It should then load the database and give you a URL to connect to (by default, http://localhost:5000/).
If you don't have the database downloaded, it will download it for you, but it will NOT automatically update an outdated database. You will have to either delete `data` or redownload it yourself, if you want an updated dataset!
# Running in Production
Short answer: Don't.
Long answer: This is a web application meant to be accessed by one person: you. I have not created this with scalability in mind. If you try to serve this to a network, expect problems if you get a lot of people accessing it. Furthermore, we do not cache the images we get from cross-site sources, such as Yugipedia or YGOPRODECK, and those sites have strict policies about hotlinking images from them. If you expose a YJViewer server to the outer world, expect those two sites to get mad at you if you're popular enough. I don't have the money to set up a YJViewer server myself, and even if I did solve the image-hotlinking problem, I don't know if I would have the time to maintain such a website. So don't use this in production, and don't ask me to use this in production. Saying that, if you do want to help me make YJViewer production-ready, see Contributing, below.
# Contributing
PRs are always welcome! To set up YJViewer for development, follow these steps after checking out the repository:
```bash
python3 -m pip install -e .[dev,test]
pre-commit install
```
# Changelog
## 0.2.3
* Support for YGOJSON 0.5.0.
## 0.2.2
* Fixed bug with the random sealed product button.
## 0.2.1
* Removed deprecated use of `boxImage` property.
## 0.2.0
* Added support for viewing sealed products.
* Added support for viewing set pack distributions.
## 0.1.1
* Fix image loading.
* Add filtering to card printing display.
## 0.1.0
Initial version.
Raw data
{
"_id": null,
"home_page": "https://github.com/iconmaster5326/YJViewer",
"name": "yjviewer",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.8",
"maintainer_email": null,
"keywords": "yugioh, ygo, ygojson",
"author": "iconmaster5326",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/bc/2a/ce04d77476ad3102843f37a522c03330ebf5b7058905a382992e4b768828/yjviewer-0.2.3.tar.gz",
"platform": null,
"description": "# YJViewer\n\n| ![YJViewer's front page.](https://raw.githubusercontent.com/iconmaster5326/YGOJSON/main/yjv1.jpg) | ![YJViewer searching for cards.](https://raw.githubusercontent.com/iconmaster5326/YGOJSON/main/yjv2.jpg) | ![YJViewer at a card page.](https://raw.githubusercontent.com/iconmaster5326/YGOJSON/main/yjv3.jpg) |\n| - | - | - |\n\nA web application that lets you view [YGOJSON](https://github.com/iconmaster5326/YGOJSON) data.\n\n# Running Locally\n\nYou'll need a modern version of [Python](https://www.python.org/), at least 3.8, to run this code. To install YJViewer from [PyPI](https://pypi.org):\n\n```bash\npython3 -m pip install yjviewer\n```\n\nOr to install it if you have the repository downloaded:\n\n```bash\npython3 -m pip install -e .\n```\n\nFrom there, you can run this application using `flask`:\n\n```bash\nflask --app yjviewer --debug run\n```\n\nIt should then load the database and give you a URL to connect to (by default, http://localhost:5000/).\n\nIf you don't have the database downloaded, it will download it for you, but it will NOT automatically update an outdated database. You will have to either delete `data` or redownload it yourself, if you want an updated dataset!\n\n# Running in Production\n\nShort answer: Don't.\n\nLong answer: This is a web application meant to be accessed by one person: you. I have not created this with scalability in mind. If you try to serve this to a network, expect problems if you get a lot of people accessing it. Furthermore, we do not cache the images we get from cross-site sources, such as Yugipedia or YGOPRODECK, and those sites have strict policies about hotlinking images from them. If you expose a YJViewer server to the outer world, expect those two sites to get mad at you if you're popular enough. I don't have the money to set up a YJViewer server myself, and even if I did solve the image-hotlinking problem, I don't know if I would have the time to maintain such a website. So don't use this in production, and don't ask me to use this in production. Saying that, if you do want to help me make YJViewer production-ready, see Contributing, below.\n\n# Contributing\n\nPRs are always welcome! To set up YJViewer for development, follow these steps after checking out the repository:\n\n```bash\npython3 -m pip install -e .[dev,test]\npre-commit install\n```\n\n# Changelog\n\n## 0.2.3\n\n* Support for YGOJSON 0.5.0.\n\n## 0.2.2\n\n* Fixed bug with the random sealed product button.\n\n## 0.2.1\n\n* Removed deprecated use of `boxImage` property.\n\n## 0.2.0\n\n* Added support for viewing sealed products.\n* Added support for viewing set pack distributions.\n\n## 0.1.1\n\n* Fix image loading.\n* Add filtering to card printing display.\n\n## 0.1.0\n\nInitial version.\n",
"bugtrack_url": null,
"license": null,
"summary": "A web application that lets you view YGOJSON data.",
"version": "0.2.3",
"project_urls": {
"Homepage": "https://github.com/iconmaster5326/YJViewer"
},
"split_keywords": [
"yugioh",
" ygo",
" ygojson"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "ce214c6f26eccf8d6e7b74f5910d66688fd19996e874eed56b4ec9106a3fd33a",
"md5": "d4ba16544f421630eecd02d8bf5adaa1",
"sha256": "49bb3a16b848fbb310d0a90daded4806a75bdb981c5435347616d557b4ce8bff"
},
"downloads": -1,
"filename": "yjviewer-0.2.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d4ba16544f421630eecd02d8bf5adaa1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.8",
"size": 14967,
"upload_time": "2024-08-26T22:54:01",
"upload_time_iso_8601": "2024-08-26T22:54:01.762673Z",
"url": "https://files.pythonhosted.org/packages/ce/21/4c6f26eccf8d6e7b74f5910d66688fd19996e874eed56b4ec9106a3fd33a/yjviewer-0.2.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "bc2ace04d77476ad3102843f37a522c03330ebf5b7058905a382992e4b768828",
"md5": "e49f36f442399b5b3f177a2344b55aed",
"sha256": "c91586de5a48db481bd17f6513e3c305e9960869fa06076a67657958b3cf15e6"
},
"downloads": -1,
"filename": "yjviewer-0.2.3.tar.gz",
"has_sig": false,
"md5_digest": "e49f36f442399b5b3f177a2344b55aed",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.8",
"size": 15940,
"upload_time": "2024-08-26T22:54:03",
"upload_time_iso_8601": "2024-08-26T22:54:03.290585Z",
"url": "https://files.pythonhosted.org/packages/bc/2a/ce04d77476ad3102843f37a522c03330ebf5b7058905a382992e4b768828/yjviewer-0.2.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-26 22:54:03",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "iconmaster5326",
"github_project": "YJViewer",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "yjviewer"
}