Inspiration
The challenge asked who gets to tell a person's story and how future generations will know they were here. StoryHOU treats authorship as the product: a person starts in their own words and chooses which movement context, audience, and publishing action to share.
What it does
StoryHOU is a text-first writing space with local drafts, prompts or free writing, optional coarse origin and arrival context, and an explicit publish action. The implemented server model supports editing, unpublishing, deletion, public discovery, reporting, and moderation while the current public story collection remains empty.
How I built it
The prototype uses Vite and vanilla browser modules with an Express and TypeScript API, PostgreSQL and Drizzle ORM, Google Identity Services for server-backed copies, local draft storage, and author-consent fields. The initial scope intentionally excludes audio and video uploads, transcription, translation, maps, and AI-generated stories.
Challenges
A story platform must give authors control without implying that a published story is independently verified. Local drafting is the default, movement data stays coarse and optional, publishing is separate from writing, and privacy, harm, misrepresentation, and moderation paths are represented in the backend model.
Accomplishments
The prototype delivers an author-first writer, consent-aware publishing boundary, editable author library model, public discovery rules, reporting reasons, and moderation data structures. Its empty public response is part of the honest current state, not something to fill with invented community stories.
What I learned
The safest default for identity-rich material is to let the author write privately before asking them to publish. Provenance and removal controls should be designed at the same time as the story editor.
What's next
The next step is to test writing prompts, language and access needs with storytellers, validate identity and owner flows, finish moderation tools, and explore additional formats only with clear consent, storage, and community stewardship.
Explore
Built With
- browser-local-storage
- drizzle-orm
- express.js
- google-identity-services
- node.js-22
- postgresql
- typescript
- vanilla-javascript-and-es-modules
- vite

Log in or sign up for Devpost to join the conversation.