Skip to content

Feature: Save/load favorites (persisted JSON) #5

Description

@wiertmir

Goal

Allow users to "star" favorite monkeys and persist favorites across runs (simple JSON file in user config).

Why

Keeps users engaged and showcases basic persistence.

Light implementation notes

  • Create Helpers/FavoritesHelper.cs with methods LoadFavorites(), SaveFavorites(IEnumerable<string> favoriteNames), ToggleFavorite(string name).
  • Use Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) on Windows or XDG fallback on Linux/macOS to create MyMonkeyApp folder and favorites.json file.
  • Persist a JSON array of monkey names using System.Text.Json.
  • Extend Program.cs menu with option to list favorites and toggle a favorite while viewing details.
  • Add tests for save/load roundtrip using a temp directory override.

Files to modify/create

  • MyMonkeyApp/Helpers/FavoritesHelper.cs
  • MyMonkeyApp/Program.cs (menu additions)

Labels:["enhancement","feature-request","good first issue","area-console"]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions