linebender / linebender/druid

API for persisting simple settings

Open
#1,065 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

discussion enhancement
Dominant language
Rust
Stars
9.7k
Forks
565
PR merge metrics
No merged PRs in 30d

Description

We should have some API that exposes a simple key/value store that persists between application launches. This would probably be backed by things like NSUserDefaults on macOS, with a custom implementation on platforms that don't provide a good mechanism.

It's also possible it would make sense for us to just write a custom implementation that is backed by a file on disk, if that would let us avoid having to deal with a bunch of platform-specific bugs down the road.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are named. First review the existing public API and platform persistence approach, then resolve whether settings should use NSUserDefaults, platform-specific mechanisms, or a file-backed implementation; done means a defined key/value API that persists across application launches.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, rust
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.