Skip to content

DaniilGurski/crowdtale

Repository files navigation

Crowdtale ✒️

Find someone. Start a story. See where it goes.

Crowdtale is an app for collaborative storytelling. You open the feed, find a story opening you like, join it, and continue the story together with other writers, taking turns. Instead of staring at a blank page, writing becomes a shared process. One person starts a story, someone else continues it, and the narrative slowly grows piece by piece. The app keeps things fair with a turn-based system and deadlines, so stories don’t get abandoned halfway through.

Screenshots

Features

Genre-based feed

Browse story openings by genre and join the ones that match your interests.

Turn-based writing

Each participant writes one turn at a time, so everyone gets a chance to shape the story.

Automatic story completion

If someone misses their deadline, the system automatically wraps up the story so it doesn’t stay unfinished forever.

Tech stack:

  • React + TypeScript

  • TailwindCSS

  • shadcn/ui

  • TanStack Query + TanStack Virtual

  • Supabase

  • PostgreSQL

Backend Design

The database is designed with relational structure in mind rather than a simple document-style schema.

Key ideas:

  • relational data model for users, stories, and turns
  • PostgreSQL functions and triggers for enforcing turn order
  • automated story completion using scheduled jobs
  • server-side logic handled directly in the database where appropriate

Database Schema

About

An app for collaborative storytelling.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages