PCT Archive is a repository for short works of creative fiction (“snips”). It archives the contents of a “snip trade” channel on a Discord chat server and associates metadata with it, including characters, author and summary. The fiction is also searchable across multiple axes, including content and characters.
The snips are gathered from a Discord chat channel via the Discord API. Users can then authenticate with the archive through the Discord OAuth portal and edit or update their snips. Snips are stored in a PostgreSQL database as the primary source of truth, while documents are inserted into Elasticsearch for indexing purposes only. All searches are done via the Elasticsearch API, including filtering by author or character. The text query uses the
simple_string_query, allowing for robust queries with natural fuzzy/OR results that the user expects.