barebones-rpg


Namebarebones-rpg JSON
Version 0.1.0 PyPI version JSON
download
home_pageNone
SummaryA flexible, code-first RPG framework for building turn-based games with support for procedural generation and AI-driven content
upload_time2025-11-02 06:00:28
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseMIT
keywords framework game game-development procedural-generation pygame rpg turn-based
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Barebones RPG Framework

[![PyPI version](https://badge.fury.io/py/barebones-rpg.svg)](https://badge.fury.io/py/barebones-rpg)
[![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Documentation](https://img.shields.io/badge/docs-online-green.svg)](https://piercegov.github.io/barebones_rpg/)

A flexible, code-first RPG framework for building turn-based games with support for procedural generation and AI-driven content.

**[Documentation](https://piercegov.github.io/barebones_rpg/)**

## What is this?

Barebones RPG is a Python framework designed to be a foundation for creating RPG games. It provides all the essential systems needed for an RPG (combat, entities, items, quests, dialog, world management, etc.), but with **no content** - making it a perfect starting point for your own games.

The framework is code-first (Python classes and functions), fully extensible (hooks and events throughout), and supports both hand-crafted and procedurally generated content.

## Installation

### Requirements

- Python 3.11+

### For Users

```bash
# Install from PyPI
pip install barebones-rpg
```

### For Development

```bash
# Clone the repository
git clone https://github.com/PierceGov/barebones_rpg.git
cd barebones_rpg

# Install with uv (recommended)
uv sync --dev

# Or with pip
pip install -e ".[dev]"
```

## Running the Examples

```bash
# Run the main example
uv run python main.py

# Or run specific examples
uv run python -m barebones_rpg.examples.simple_combat_example
uv run python -m barebones_rpg.examples.mini_rpg
uv run python -m barebones_rpg.examples.tile_based_example
```

## Running Tests

```bash
# Run all tests
uv run pytest

# Run with coverage
uv run pytest --cov=barebones_rpg
```

## Documentation

**[View the full documentation online](https://piercegov.github.io/barebones_rpg/)**

The documentation is also available locally in the `sphinx_docs/` directory. To build and view:

```bash
./build_docs.sh
# Then open sphinx_docs/_build/html/index.html
```

The documentation includes:
- Getting Started Guide
- Core Concepts and Architecture
- Complete API Reference
- Step-by-Step Tutorials
- In-Depth Guides
- Example Breakdowns

## Quick Example

```python
from barebones_rpg import Game, GameConfig, Character, Enemy, Stats, Combat

# Create game
game = Game(GameConfig(title="My RPG"))

# Create characters
hero = Character(name="Hero", stats=Stats(hp=100, atk=15, defense=5))
goblin = Enemy(name="Goblin", stats=Stats(hp=30, atk=8, defense=2))

# Start combat
combat = Combat(
    player_group=[hero],
    enemy_group=[goblin],
    events=game.events
)
combat.start()
```

See `barebones_rpg/examples/` for complete working examples.

## Project Structure

```
barebones_rpg/
├── core/           # Game engine, events, save/load
├── entities/       # Characters, NPCs, enemies, stats, AI
├── combat/         # Turn-based combat system
├── items/          # Items, inventory, equipment, loot
├── quests/         # Quest and objective tracking
├── dialog/         # Conversation trees
├── world/          # Maps, locations, tiles
├── rendering/      # Pygame renderer
├── loaders/        # Data loaders (JSON/YAML)
└── examples/       # Example games
```

## Contributing

Contributions are welcome!

## License

MIT License - See [LICENSE.md](LICENSE.md) for details

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "barebones-rpg",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "framework, game, game-development, procedural-generation, pygame, rpg, turn-based",
    "author": null,
    "author_email": "Pierce Governale <piercegovernale@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/cb/5f/2c26efbbb020d32e2e84992ab764f9300ed34fac2297c00440efd692afc5/barebones_rpg-0.1.0.tar.gz",
    "platform": null,
    "description": "# Barebones RPG Framework\n\n[![PyPI version](https://badge.fury.io/py/barebones-rpg.svg)](https://badge.fury.io/py/barebones-rpg)\n[![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Documentation](https://img.shields.io/badge/docs-online-green.svg)](https://piercegov.github.io/barebones_rpg/)\n\nA flexible, code-first RPG framework for building turn-based games with support for procedural generation and AI-driven content.\n\n**[Documentation](https://piercegov.github.io/barebones_rpg/)**\n\n## What is this?\n\nBarebones RPG is a Python framework designed to be a foundation for creating RPG games. It provides all the essential systems needed for an RPG (combat, entities, items, quests, dialog, world management, etc.), but with **no content** - making it a perfect starting point for your own games.\n\nThe framework is code-first (Python classes and functions), fully extensible (hooks and events throughout), and supports both hand-crafted and procedurally generated content.\n\n## Installation\n\n### Requirements\n\n- Python 3.11+\n\n### For Users\n\n```bash\n# Install from PyPI\npip install barebones-rpg\n```\n\n### For Development\n\n```bash\n# Clone the repository\ngit clone https://github.com/PierceGov/barebones_rpg.git\ncd barebones_rpg\n\n# Install with uv (recommended)\nuv sync --dev\n\n# Or with pip\npip install -e \".[dev]\"\n```\n\n## Running the Examples\n\n```bash\n# Run the main example\nuv run python main.py\n\n# Or run specific examples\nuv run python -m barebones_rpg.examples.simple_combat_example\nuv run python -m barebones_rpg.examples.mini_rpg\nuv run python -m barebones_rpg.examples.tile_based_example\n```\n\n## Running Tests\n\n```bash\n# Run all tests\nuv run pytest\n\n# Run with coverage\nuv run pytest --cov=barebones_rpg\n```\n\n## Documentation\n\n**[View the full documentation online](https://piercegov.github.io/barebones_rpg/)**\n\nThe documentation is also available locally in the `sphinx_docs/` directory. To build and view:\n\n```bash\n./build_docs.sh\n# Then open sphinx_docs/_build/html/index.html\n```\n\nThe documentation includes:\n- Getting Started Guide\n- Core Concepts and Architecture\n- Complete API Reference\n- Step-by-Step Tutorials\n- In-Depth Guides\n- Example Breakdowns\n\n## Quick Example\n\n```python\nfrom barebones_rpg import Game, GameConfig, Character, Enemy, Stats, Combat\n\n# Create game\ngame = Game(GameConfig(title=\"My RPG\"))\n\n# Create characters\nhero = Character(name=\"Hero\", stats=Stats(hp=100, atk=15, defense=5))\ngoblin = Enemy(name=\"Goblin\", stats=Stats(hp=30, atk=8, defense=2))\n\n# Start combat\ncombat = Combat(\n    player_group=[hero],\n    enemy_group=[goblin],\n    events=game.events\n)\ncombat.start()\n```\n\nSee `barebones_rpg/examples/` for complete working examples.\n\n## Project Structure\n\n```\nbarebones_rpg/\n\u251c\u2500\u2500 core/           # Game engine, events, save/load\n\u251c\u2500\u2500 entities/       # Characters, NPCs, enemies, stats, AI\n\u251c\u2500\u2500 combat/         # Turn-based combat system\n\u251c\u2500\u2500 items/          # Items, inventory, equipment, loot\n\u251c\u2500\u2500 quests/         # Quest and objective tracking\n\u251c\u2500\u2500 dialog/         # Conversation trees\n\u251c\u2500\u2500 world/          # Maps, locations, tiles\n\u251c\u2500\u2500 rendering/      # Pygame renderer\n\u251c\u2500\u2500 loaders/        # Data loaders (JSON/YAML)\n\u2514\u2500\u2500 examples/       # Example games\n```\n\n## Contributing\n\nContributions are welcome!\n\n## License\n\nMIT License - See [LICENSE.md](LICENSE.md) for details\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A flexible, code-first RPG framework for building turn-based games with support for procedural generation and AI-driven content",
    "version": "0.1.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/piercegov/barebones_rpg/issues",
        "Documentation": "https://piercegov.github.io/barebones_rpg/",
        "Homepage": "https://github.com/piercegov/barebones_rpg",
        "Repository": "https://github.com/piercegov/barebones_rpg"
    },
    "split_keywords": [
        "framework",
        " game",
        " game-development",
        " procedural-generation",
        " pygame",
        " rpg",
        " turn-based"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "660e24d4ccc9ef72fdb7c27ccd531557e435254b591ba3616d6575664b97364b",
                "md5": "18dbe9aa4950077b8ddb51097fea8bb4",
                "sha256": "59123cc062dfa23cf234a99df65f59260c43ccf115068601612c82982259c91f"
            },
            "downloads": -1,
            "filename": "barebones_rpg-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "18dbe9aa4950077b8ddb51097fea8bb4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 112373,
            "upload_time": "2025-11-02T06:00:26",
            "upload_time_iso_8601": "2025-11-02T06:00:26.928470Z",
            "url": "https://files.pythonhosted.org/packages/66/0e/24d4ccc9ef72fdb7c27ccd531557e435254b591ba3616d6575664b97364b/barebones_rpg-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cb5f2c26efbbb020d32e2e84992ab764f9300ed34fac2297c00440efd692afc5",
                "md5": "f2fbdbf4f8c7e46ba60e0ab2ba12ee2e",
                "sha256": "0d1c6b914376f7e7eb796891f54b882d59ec772241a2500f2d2c0a7bded22a6b"
            },
            "downloads": -1,
            "filename": "barebones_rpg-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "f2fbdbf4f8c7e46ba60e0ab2ba12ee2e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 194980,
            "upload_time": "2025-11-02T06:00:28",
            "upload_time_iso_8601": "2025-11-02T06:00:28.764145Z",
            "url": "https://files.pythonhosted.org/packages/cb/5f/2c26efbbb020d32e2e84992ab764f9300ed34fac2297c00440efd692afc5/barebones_rpg-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-11-02 06:00:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "piercegov",
    "github_project": "barebones_rpg",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "barebones-rpg"
}
        
Elapsed time: 1.89795s