Search Guide

Fimfiction's story search is a powerful tool that has many functions in order to help you find stories you want to read.

Examples

#fluttershy #rainbow-dash #romance wilson:>80

Returns highly rated flutterdash fics.

#human #romance ( #fluttershy OR #rainbow-dash ) AND views:<1000

Returns stories with humans shipped with Fluttershy or Rainbow Dash that haven't been viewed much.

title:"my little dashie" -#twilight-sparkle status:complete

Returns completed stories with the phrase "my little dashie" in the title not tagged with Twilight Sparkle.

My Little Dashie OR Fallout Equestria

Returns My Little Dashie and Fallout Equestria stories.


While the tool is powerful, there are limits to what you can do with it in order to keep the site nice and fast. There is a maximum query "cost" and each element you add to the query contributes to it. The site will let you know if you go over this cost, but it shouldn't impede any normal usage.

Boolean expressions

AND

The AND operator can be used to make the search require both sides the expression. Note that the AND must be capitalised or it will just count as the word 'and'. You can also substitute AND for &&

Example:

Fallout Equestria AND Heroes

This search will return stories that match both "Fallout Equestria" and "Heroes"

OR

The OR operator can be used to make the search require either sides of the expression. Note that the OR must be capitalised or it will just count as the word 'or'. You can also substitute OR for ||

Example:

Fallout Equestria OR My Little Dashie

This search will return stories that match either "My Little Dashie" or "Heroes"

Technical note: Scoring for OR expressions is done using a disjunction query with a tie breaker of 0. This means that for scoring (ie. sorting by relevance) the expression that scores the most is what contributes to the overall score. This makes it easier to find stories with one or another tag without overly inflating the score from having both.

Precedence

The OR operator has a higher precedence than AND so any OR expressions will be evaluated first.

Example:

Fluttershy AND Rainbow Dash OR Twilight Sparkle

This search is equivalent to Fluttershy AND (Rainbow Dash OR Twilight Sparkle)

Negated expressions

Expressions can be negated by prefixing them with a -

Example:

-My Little Dashie

This search will return stories that do not match "My Little Dashie". Note that because this is a string, this prevents stories containing "my", "little" or "dashie" from returning which may not be what you intend. Make sure to use quoted strings when you want to negate an entire phrase.

Tags

Tags can be inserted into a search query in the form #tag

Example:

#fluttershy AND #rainbow-dash

This search will return stories that contain both the fluttershy and rainbow-dash tag. Note that this uses the tag id which is typically the tag with spaces replaced by hyphens. The editor makes this easy by showing a dropdown whenever you enter a # into the input box.


Bookshelves

Bookshelves can be searched in queries.

Example:

bookshelf:1

This will return all stories in the Featured bookshelf, which has an ID of 1. You can find the ID of a bookshelf by looking at the URL.


Groups

Groups can be searched in queries.

Example:

group:393

This will return all stories in the Flutterdash group, which has an ID of 393. You can find the ID of a group by looking at the URL.

Grouped expressions

Expressions can be grouped together using parenthesis.

Example:

(Fluttershy AND Rainbow Dash) OR (Twilight Sparkle AND Rarity)

This search will return stories that match both "Fluttershy" and "Rainbow Dash" or stories that match "Twilight Sparkle" and Rarity

Strings

Strings can be included anywhere in a search string to be matched.

Example:

My Little Dashie

This will return any stories that match "My Little Dashie"

Strings can be included in quotes to match phrases.

Example:

"My Little Dashie"

This will return any stories that match the phrase "My Little Dashie"

Searching In Fields

Text fields

By default, string searches will be performed on the title, short description, description and tags of a story. By specifying a field, you can search in a specific field instead. Supported fields are title, short_description, description and tags.

Example:

title:My Little Dashie

This will return any stories that match "My Little Dashie" in the title

Numeric fields

Some fields support searching with a numeric range. For example, you might want to find stories which have at least 100 likes or stories with less than 10,000 words. Supported fields are words, views, rating, wilson, likes and dislikes

Example:

likes:>100

This will return any stories with at least 100 likes

Example:

views:<10000

This will return any stories with less than 10,000 views

Example:

words:10000-20000

This will return any stories with between 10,000 and 20,000 words.

Example:

wilson:>90

This will return any stories with a wilson score (rating) above 90.

Date fields

Approved date and updated date can be queried as dates. The date string can take one of two formats: absolute dates and pre selected time periods.

Example:

published:>2017-12-1

This will return any stories published after the first of December, 2017. The date is formatted as yyyy-mm-dd.

Example:

updated:today

This will return any stories published in the last 24 hours. You can also use week, month and year.

Completion Status

Completion status can be searched with the status field.

Example:

status:complete

This returns all completed stories. The values that can be queried are complete, incomplete, hiatus and cancelled