# Favorite articles

## Overview

Favoriting marks an article so you can find it later in the author's profile under **Favorited
Posts**. Conduit provides this capability on the Article surface and the profile surface.

| If you need to… | Go to |
| --- | --- |
| Open an article and change whether it is favorited | [Favorite or unfavorite an article](#favorite-or-unfavorite-an-article) |
| Open the profile list of saved articles | [Find the article and its favorites list](#find-the-article-and-its-favorites-list) |
| Read the article after opening it | [Read an article](doc:read-an-article) |
| Review profile lists and tabs | [View My Posts and Favorited Posts](doc:view-my-posts-and-favorited-posts) |
| Add a comment after opening the article | [Comment on an article](doc:comment-on-an-article) |
| Sign in before favoriting | [Sign in](doc:sign-in) |

## Prerequisites

You need an article to open, a signed-in account for the favorite action, and a profile whose
favorite list you can open. If you are not signed in, selecting **Favorite Article** or
**Unfavorite Article** takes you to
the registration page. The profile's favorites list appears after its favorites configuration loads.

The favorites list has no fields for you to complete. It displays article results, while the
Article surface displays the article title, body, and tags.

## Find the article and its favorites list

An article is the content you open to read or mark for later; **Favorited Posts** is the profile
list of articles that the profile has favorited.

**Prerequisites**

- You know which article and profile to open.
- You know the profile username for the favorites list.

**Steps**

1. Open the article you want to favorite.
2. Open the profile whose favorites you want to view.
3. Select **Favorited Posts**.
4. Select an article title in the list to open that article.

The profile surface also provides **My Posts**. The favorites list uses the profile username to
request that profile's favorited articles. Article metadata links to the author's profile.

**Result:** You are on the Article surface or viewing the selected profile's **Favorited Posts**
list.

## Understand the favorites screen

The favorites screen is a list of article previews; each preview can show the article's title, tags,
and favorite count. Selecting a title opens the Article surface,
where the title, markdown-rendered body, and tags are displayed.

| What you see | What it tells you |
| --- | --- |
| Article title | Which article the preview represents |
| Favorite count | The number displayed with the preview's favorite control |
| Page number | Which results page you are viewing |
| `Loading articles...` | The article list is loading |
| `No articles are here... yet.` | The loaded favorites query returned no articles |

The favorites list requests up to 10 articles per page. Pagination is calculated from the number
of articles returned. The favorite surfaces provide no required fields, grid columns, or configurable
fields to complete.

## Favorite or unfavorite an article

**Favorite Article** marks the article for inclusion in the profile's **Favorited Posts** list;
**Unfavorite Article** removes that mark.

**Prerequisites**

- You are signed in.
- The Article surface is displaying the article.
- The article is not one you can modify, so **Favorite Article** or **Unfavorite Article** is displayed.

**Steps**

1. Select **Favorite Article** or **Unfavorite Article** according to the article's current state:

   | If the article is… | Select |
   | --- | --- |
   | Not currently favorited | **Favorite Article** |
   | Currently favorited | **Unfavorite Article** |

The control calls the favorite or unfavorite action that matches the article's current state. While
the request is being submitted, the control is disabled. After a successful change, the displayed
favorite state and count update.

**Result:** The Article surface shows the selected favorite state and its updated count.

## Handle the alternate results

The favorite action has different outcomes depending on whether you are signed in and whether the
profile has any favorited articles.

**Prerequisites**

- Choose the row that matches what you see before selecting a control.

**Steps**

1. Use the applicable path:

   | If you need to… | Do this |
   | --- | --- |
   | Favorite an article while signed out | Select **Favorite Article** or **Unfavorite Article**; Conduit opens the registration page. |
   | View a profile with no favorited articles | Open **Favorited Posts** and wait for `No articles are here... yet.`. |
   | Work with an article you own | Favorite controls are absent when you can modify the article. |
   | Recover from a failed favorite request | Wait for the submitting state to clear; no failure message appears. |

**Result:** You follow the path that matches the account state, list contents, and article ownership
shown on screen.

## When favoriting goes wrong

Use the message on screen to choose the next action.

| Message | Meaning |
| --- | --- |
| `Loading articles...` | Wait for the favorites list to finish loading. |
| `No articles are here... yet.` | Open **Favorited Posts** after the favorites query has loaded. |
| `Failed to load article` | The article did not load. |

## After favoriting

**Prerequisites**

- The Article surface shows the updated favorite state.

**Steps**

1. Open the profile whose favorited articles you want to verify.
2. Select **Favorited Posts**.
3. Select the article title in the list.

The list uses the profile username for its favorites query and displays up to 10 articles per page.
Use the page numbers to move through additional results.

**Result:** The article appears in **Favorited Posts**, or the list shows `No articles are here... yet.`
