{"id":19569805,"url":"https://github.com/sqdnoises/infinite-craft","last_synced_at":"2025-04-27T03:31:09.665Z","repository":{"id":246721543,"uuid":"764703681","full_name":"sqdnoises/infinite-craft","owner":"sqdnoises","description":"An API Wrapper of Neal's Infinite Craft game in Python for people to implement in their programs.","archived":false,"fork":false,"pushed_at":"2024-10-15T17:22:59.000Z","size":581,"stargazers_count":8,"open_issues_count":1,"forks_count":6,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-10-17T16:04:00.414Z","etag":null,"topics":["automation","cli","game","game-api","infinite-craft","infinite-craft-hack","infinitecraft","library","neal-fun","python","python3","python3-library","rest-api"],"latest_commit_sha":null,"homepage":"https://neal.fun/infinite-craft/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sqdnoises.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-28T15:05:56.000Z","updated_at":"2024-10-15T17:23:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"a074305a-a699-4ab6-aff6-4228873e1562","html_url":"https://github.com/sqdnoises/infinite-craft","commit_stats":null,"previous_names":["sqdnoises/infinite-craft"],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sqdnoises%2Finfinite-craft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sqdnoises%2Finfinite-craft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sqdnoises%2Finfinite-craft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sqdnoises%2Finfinite-craft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sqdnoises","download_url":"https://codeload.github.com/sqdnoises/infinite-craft/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224056565,"owners_count":17248329,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","cli","game","game-api","infinite-craft","infinite-craft-hack","infinitecraft","library","neal-fun","python","python3","python3-library","rest-api"],"created_at":"2024-11-11T06:12:31.361Z","updated_at":"2024-11-11T06:12:32.456Z","avatar_url":"https://github.com/sqdnoises.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![](https://github.com/sqdnoises/infinite-craft/raw/main/docs/.gitbook/assets/cover.png)](https://github.com/sqdnoises/infinite-craft)\n\n# infinite-craft `1.1.4`\n[![](https://img.shields.io/badge/infinite--craft_version-1.1.4-red)](https://github.com/sqdnoises/infinite-craft)\n[![](https://img.shields.io/pypi/v/infinite-craft.svg)](https://pypi.org/project/infinite-craft/)\n[![](https://img.shields.io/pypi/dm/infinite-craft.svg)](https://pypi.org/project/infinite-craft/)\n[![](https://img.shields.io/badge/License-MIT-red?labelColor=black)](LICENSE)\n[![](https://img.shields.io/badge/Python_Version-3.10_|_3.11_|_3.12-blue)](https://python.org)\n\\\nAn API Wrapper for Neal's Infinite Craft game in Python.\n\n### `infinite-craft`'s GitHub Actions Status\n[![](https://github.com/sqdnoises/infinite-craft/actions/workflows/pytest.yml/badge.svg)](https://github.com/sqdnoises/infinite-craft/actions/workflows/pytest.yml)\n[![Publish Package to PyPI](https://github.com/sqdnoises/infinite-craft/actions/workflows/publish-package-to-pypi.yml/badge.svg)](https://github.com/sqdnoises/infinite-craft/actions/workflows/publish-package-to-pypi.yml)\n[![Create GitHub Release](https://github.com/sqdnoises/infinite-craft/actions/workflows/create-github-release.yml/badge.svg)](https://github.com/sqdnoises/infinite-craft/actions/workflows/create-github-release.yml)\n\n\u003e [!IMPORTANT]  \n\u003e The library is currently broken. If you pair two elements you get a [`403 Forbidden` error](https://github.com/sqdnoises/infinite-craft/issues/2). A fix for this is currently being made.\n\n# Key Features:\n- Stores elements in a neatly indented JSON file\n- Starts with the four main elements: Water, Fire, Wind, Earth\n- Uses [`neal.fun`](https://neal.fun/)'s [Infinite Craft](https://neal.fun/infinite-craft/) API to pair elements together\n- Built-in ratelimiting handler\n- Custom API support\n- Asynchronous library\n- Conveniently access discovered elements\n\n# Discord Server\n\u003e [!TIP]\n\u003e Need help? Join our Discord community!\\\n» https://discord.gg/FF2fSN2sJd \\\n[![Discord invite](https://invidget.switchblade.xyz/FF2fSN2sJd)](https://discord.gg/FF2fSN2sJd)\n\n# Table of Contents:\n- **[Key Features](#key-features)**\n- **[Discord Server](#discord-server)**\n- **[Installation](#installation)**\n- **[Examples](#examples)**\n- **[Documentation](#documentation-)**\n- **[How does it work?](#how-does-it-work)**\n- **[To-do](#to-do)**\n- **[License](#license)**\n\n# Installation\n\u003e [!IMPORTANT]\n\u003e **Python 3.10** or above is required. Any versions below will not work.\n\nTo install, run:\n```\npip install infinite-craft\n```\n\nTo update, run:\n```\npip install -U infinite-craft\n```\n\n\u003e [!NOTE]\n\u003e If `pip` is not on PATH, you can use:\n\u003e - `python3 -m pip` (for Linux/MacOS) or\n\u003e - `python -m pip` (for Windows) instead.\n\n[**View `infinite-craft` on PyPI.**](https://pypi.org/project/infinite-craft/)\n\n# Examples\n### Using `async with`\n```py\nimport asyncio\nfrom infinitecraft import InfiniteCraft\n\nasync def main():\n    async with InfiniteCraft() as game: # automatically start session and end session on async with end\n        print(f\"Pairing elements: {game.discoveries[0]} and {game.discoveries[1]}\")\n        result = await game.pair(game.discoveries[0], game.discoveries[1]) # Pair Water and Fire\n        print(f\"Result: {result}\")\n\nasyncio.run(main())\n```\n\n### Manually controlling\n```py\nimport asyncio\nfrom infinitecraft import InfiniteCraft\n\ngame = InfiniteCraft()\n\nasync def main():\n    await game.start() # Start InfiniteCraft Session\n    \n    print(f\"Pairing elements: {game.discoveries[0]} and {game.discoveries[1]}\")\n    result = await game.pair(game.discoveries[0], game.discoveries[1]) # Pair Water and Fire\n    print(f\"Result: {result}\")\n\n    await game.close() # Close InfiniteCraft Session\n\nasyncio.run(main())\n```\n\nYou can find more examples in the **[documentation](#documentation-)**.\n\n# Documentation 📚\nDocumentation is *coming soon*.\n\nWhile the documentation is not ready, everything is documented well in the code with docstrings which you can see in an IDE like Visual Studio Code.\n\n*You can also see the in-development documentation page [here](https://sqdnoises.gitbook.io/infinite-craft).*\n\n# How does it work?\nThis library contacts the URL:\n\u003e https://neal.fun/api/infinite-craft/pair?first=element+name\u0026second=element+name\n\nwhere `element+name` in `first=` parameter is the first element you want to pair and the `element+name` in `second=` parameter is the second element.\n\nEverything is handled in a user-friendly manner and asynchronously, so it should be really easy to use it in your programs.\n\n# To-do\n- [x] ~~Release version 1.0.0 on PyPI~~\n- [x] ~~Make a discord server for support~~ Join our community! https://discord.gg/FF2fSN2sJd\n- [x] ~~Add a runnable and configurable CLI mock API server~~\n- [x] ~~Make a documentation page~~\n- [ ] Fix [403 Forbidden Error](https://github.com/sqdnoises/infinite-craft/issues/2)\n- [ ] Add a synchronous class\n- [ ] Finish documentation page\n- [ ] Make a playable \u0026 interactive Infinite Craft CLI game\n\n\u003cdiv align=\"center\"\u003e\n\n# License\n[![](https://img.shields.io/badge/LICENSE-MIT-red?style=for-the-badge\u0026labelColor=black)](LICENSE)\\\nClick **[\u003ckbd\u003eMIT License\u003c/kbd\u003e](LICENSE)** to view the license that comes with this library.\n\n\u003c/div\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n### 🌟 Please [star the repo](https://github.com/sqdnoises/infinite-craft/stargazers) and show some love 💖\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsqdnoises%2Finfinite-craft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsqdnoises%2Finfinite-craft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsqdnoises%2Finfinite-craft/lists"}