Skip to content

arhor/spellbindr

Repository files navigation

Spellbindr

Spellbindr is a modern Android application for Dungeons & Dragons 5th Edition, designed to assist both players and Dungeon Masters. It provides a clean, intuitive interface to browse D&D 5e SRD content, create and manage characters, and quickly look up spell information.

✨ Features

  • 📖 Spellbook: A complete and searchable list of all spells from the D&D 5e System Reference Document (SRD). You can search, filter, and view detailed information for each spell.
  • 🧙 Character Creator: A step-by-step wizard that guides you through the process of creating a D&D 5e character. This includes:
    • Race and Subrace selection
    • Class and Subclass selection
    • Setting ability scores
    • Choosing skills and proficiencies
    • Selecting a background
    • Managing equipment
    • Adding spells
  • 👥 Character Management: Keep track of all your characters in one place. (Functionality for viewing and managing created characters).
  • 📱 Modern UI: Built entirely with Jetpack Compose for a modern, responsive, and slick user experience.

🛠️ Tech Stack

This project is built with a modern Android tech stack:

  • Language: 100% Kotlin
  • UI: Jetpack Compose for declarative UI development.
  • Architecture: Follows modern Android architecture guidelines, utilizing ViewModels and a Repository pattern.
  • Asynchronicity: Kotlin Coroutines for managing background threads.
  • Dependency Injection: Hilt for managing dependencies.
  • Navigation: Jetpack Navigation for handling in-app navigation.
  • Data Persistence: Jetpack DataStore for storing simple key-value data.
  • Serialization: Kotlinx Serialization for parsing JSON data from the SRD.

📦 Building from Source

To build and run the app from the source code, follow these steps:

  1. Clone the repository:
    git clone https://github.com/arhor/spellbindr.git
  2. Open the project in the latest stable version of Android Studio.
  3. Let Android Studio sync the project and download the required Gradle dependencies.
  4. Build and run the app on an emulator or a physical device.

📜 Data Source

Spellbindr uses game content from the Dungeons & Dragons 5th Edition System Reference Document 5.1 (SRD) provided by Wizards of the Coast. This content is available under the terms of the Open Gaming License v1.0a.

For more information, please see the Open Gaming License from Wizards of the Coast.

🤝 Contributing

Contributions are welcome! If you have ideas for new features, bug fixes, or improvements, feel free to open an issue or submit a pull request.

📄 License

This project is licensed under the Apache License, Version 2.0. See the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages