Giter Club home page Giter Club logo

spacehop-api's Introduction

Space Hop Backend API

audio test characters test events test images test scenes test

Overview

WIP Backend for an upcoming web adaptation of the visual novel project Space Hop. Once complete, this API will allow a front-end management tool to perform CRUD operations and support future changes or expansions to the scope of the visual novel. The actual presentation of the visual novel will be handled by an HTML5 & JS web application.

Ultimately, this should be easily adaptable for use with similar web-based storytelling projects.

Structure

The narrative is split up into Chapters and Scenes. Chapters are linked to an arbitrary number of Scenes, which themselves are linked to a sequence of Events. The following are considered to be Events:

  • Displaying a textbox
  • Printing longer-form text across the screen
  • Updating the background image
  • Swapping or removing characters from the scene
  • Starting a background audio track
  • Stopping a background audio track
  • Playing a sound effect
  • Pausing for a specified period of time

The actual implementation and timing of these events is outside of the scope of the API, so they are purposefully left vague. Events are sequenced out discretely with the intention of making the story easily adapted to a text-only script for the purposes of accessibility, search capabilities, or conversion into other formats.

Roadmap

  • Database schema
  • Read-only access via REST API
  • Read-write access via REST API with authentication
  • Support for uploading and managing image files
  • Support for uploading and managing audio files
  • Additional features if requested

Build instructions

If you would like to test the API locally, perform the following:

  • Make sure you have Python 3.10 or later
  • Run git clone https://github.com/jadevogt/spacehop.git
  • cd into spacehop
  • If you have Poetry installed, run poetry install to install dependencies
    • Otherwise, run python3 -m pip install . to install them
  • Run python3 manage.py makemigrations
  • Run python3 manage.py migrate
  • Start the local test server with python3 manage.py runserver

Deployment is outside of the scope of this file, please see the official Django documentation for deployment instructions.

spacehop-api's People

Contributors

jadevogt avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.