Work ctq
web

ContinueThe.Quest

A collaborative storytelling platform where unfinished stories find their endings.

ContinueThe.Quest is a community + AI co-writing platform. Pick a media universe (book, film, game, show), open a branch — prequel, sequel, alternate reality — and write or generate the segments that fill it out. Tagging, voting, credit-gated AI generation, and a passkey-first auth flow keep the experience close to a real publishing workshop rather than a fanfic dump.

Last updateMar 21, 2026 PrimaryJavaScript
  • PHP
  • JavaScript
  • MariaDB
  • Tailwind CSS
  • OpenAI
  • WebAuthn
  • Apache
ContinueThe.Quest — A collaborative storytelling platform where unfinished stories find their endings.
ContinueThe.Quest media
ContinueThe.Quest media
ContinueThe.Quest media
ContinueThe.Quest media

ContinueThe.Quest is a collaborative writing platform built on the premise that almost every great story has a thread someone wishes had been pulled further. The site lets users publish a piece of source media — a book, a film, a series, a game — open branches off it (a prequel, a what-if, a continuation), and then write or generate the segments that fill those branches out chapter by chapter.

What it does

  • Three-tier content model — Media → Branches → Segments — so a single source universe can sprout many parallel continuations without entangling them.
  • AI-assisted generation via OpenAI, gated by a credit system. Users earn credits for contributions and spend them to draft segments, summarise long arcs, or extend a scene.
  • Tagging and voting for both branches and segments. The community signals which continuations feel canonical, which threads are worth following, and which tags actually describe the story rather than just genre.
  • Passkey-first authentication — WebAuthn is the primary login path, with a passphrase fallback for users who haven't moved off passwords yet. No traditional password column at all.
  • User-generated assets including cover images, avatars, bios, and uploaded segment art, all served from a sandboxed uploads tree.
  • Markdown segment editor with full formatting, inline images, and a live preview, so segment drafting feels like writing rather than filling out a form.

How it ships

The backend is procedural PHP — no framework, just a hand-rolled router on top of index.php with feature-grouped includes for auth, voting, credits, segments, and AI calls. The frontend is vanilla JavaScript with page-manager modules per route, styled with Tailwind CSS compiled through a small npm run build step. State lives in MariaDB; migrations are flat SQL with a deploy.php entrypoint. Bookie — the logo gremlin and project mascot — appears in three flavours (main, cartoon, original) so different surfaces can pick the right tone.

Why it exists

Fanfiction archives are full of orphan threads — half-finished continuations, alternate-reality drafts that lost momentum, prequels that one author started and ten readers wanted. ContinueThe.Quest treats those threads as first-class objects: branchable, taggable, co-authorable, and credit-funded so AI can fill the gaps an individual writer doesn't have time for. The goal isn't to replace the human writer; it's to keep the universe alive long enough that a real ending shows up.

Straight from the source

The project's own README.

Rendered in place — every link, image, and code block carried over from the repo. The page below is what a contributor would see opening the project for the first time.

ContinueThe.Quest

A collaborative storytelling platform where unfinished stories find their endings.

🚀 Quick Setup

  1. Environment Setup

    cp .env.example .env
    # Edit .env with your database credentials & OpenAI API Key
    
  2. Install Dependencies & Build CSS

    # Install PHP and Node.js dependencies
    composer install
    npm install
    
    # Build CSS (one-time)
    npm run build
    
    # Or watch for changes during development
    npm run watch
    
  3. Deploy & Setup Database

    php deploy.php
    

📖 Project Overview

ContinueThe.Quest is a collaborative storytelling platform that allows users and AI to expand and continue unfinished stories or universes from various media sources such as TV shows, movies, books, and games. Users can add original media, create story branches, write or generate content segments, and interact through comments, votes, and tags. The goal is to foster a dynamic community-driven environment that scales efficiently and is highly performant.

Core Concepts

  • Media: The source material or universe (e.g., a book, movie, or game).
  • Branches: Specific storylines within a Media (e.g., a prequel, sequel, or alternate reality).
  • Segments: The individual chapters or scenes that make up a Branch, which can be written by users or generated by AI.

✨ Features

  • Collaborative Storytelling: Create and expand stories with a global community.
  • AI-Assisted Content: Use credits to generate story segments with AI.
  • WebAuthn (Passkey) First: Secure, passwordless authentication with passphrase fallback.
  • Credit System: Earn credits for contributions and spend them on features like AI generation.
  • Tagging & Voting: Organize and rank content with a flexible tagging and voting system.
  • User-Generated Content: Upload cover images, write bios, and contribute to stories.
  • Markdown Support: Write and format story segments with Markdown.

🛠️ Tech Stack

  • Backend: PHP (Procedural)
  • Frontend: Vanilla JavaScript, Tailwind CSS
  • Database: MariaDB
  • Authentication: WebAuthn (Passkey-first), Passphrase
  • AI: OpenAI API

🗂️ Project Structure

/
├── api/              # RESTful API endpoints
├── assets/           # Frontend assets (JS, CSS)
├── db/               # Database schema and migrations
├── includes/         # Core PHP utilities (auth, utils, etc.)
├── pages/            # HTML pages and JS page managers
├── uploads/          # User-uploaded content (avatars, images, segments)
├── vendor/           # Composer dependencies
├── node_modules/     # NPM dependencies
├── .env              # Environment configuration
├── index.php         # Main application entry point
├── bootstrap.php     # Application initializer
└── ...

For more detailed documentation, please refer to the files in the docs/ directory.

Gallery

The full set.

Build something like this

Want a tool like this for your shop?

We've shipped this kind of thing before. Twenty-minute intro call, no slides.