Project ideas from Hacker News discussions.

Using XDG-Compliant Config Files (2024)

📝 Discussion Summary (Click to expand)

1. Cross‑platform file‑location handling
Users are asking whether wxWidgets will expose a uniform API for OS‑specific directories (e.g., %APPDATA%, %LOCALAPPDATA%, $XDG_CACHE_HOME).

“is this aspect also cross platform? like supporting Windows %APPDATA% and %LOCALAPPDATA% ?” — frik

2. Legacy design & outdated conventions
The discussion critiques wxWidgets’ long‑standing habit of storing “dot files” in the home directory and its reliance on deprecated Windows INI locations, contrasting it with modern standards like the XDG spec. > “XDG Base Directory Specification has been a standard for organizing application data files under Linux for a long time. Unfortunately, wxWidgets… when support for configuration files was added… the usual convention was still to put these so‑called “dot files” directly in the user home directory.” — Chu4eeno

3. Migration‑related risk and user‑experience concerns
Commenters warn that the proposed migration logic can corrupt existing symlinks and break user‑maintained setups, emphasizing the need for careful handling of old vs. new locations.

“If you have the files in the XDG locations and symbolic links in the old locations, this migration mechanism will mess things up quite badly, because it does not check for either symbolic or normal links and renames over the XDG file if an old location file exists.” — JdeBP


🚀 Project Ideas

XDGPathSync

Summary

  • Unified API to resolve user config, data, cache, and runtime directories across Windows, macOS, and Linux.
  • Handles XDG Base Directory spec, legacy directories, and edge cases like %APPDATA%, %LOCALAPPDATA%, and ~/.cache.
  • Safely migrates existing dotfile symlinks to the correct standardized locations.

Details| Key | Value |

|-----|-------| | Target Audience | Developers building cross‑platform CLI/GUI tools that need reliable config locations | | Core Feature | Cross‑platform path resolution and migration engine | | Tech Stack | Rust core, bindings for Node.js, Python, and C++ | | Difficulty | Medium | | Monetization | Hobby |

Notes

  • HN users repeatedly asked about cross‑platform support for XDG paths and Windows special folders (e.g., Hacker News comment: “is this aspect also cross platform? like supporting Windows %APPDATA% and %LOCALAPPDATA%?”).
  • The reactive migration logic addresses rrvsh’s concern: “What is your point here?” and JdeBP’s warning about silent file moves and symlink mishandling.
  • Provides a clear utility for teams tired of reinventing per‑platform path code, turning a recurring pain point into a reusable library.

CrossPlatformConfigKit

Summary

  • A lightweight CLI tool that scans a user's home directory for dotfiles, symlinks, and legacy config files.
  • Generates a safe migration plan to move them into the appropriate XDG or platform‑specific directories.
  • Includes a dry‑run mode and detailed logging to prevent accidental data loss.

Details| Key | Value |

|-----|-------| | Target Audience | Power users and developers who manage many dotfiles across OSes | | Core Feature | Automated, risk‑aware migration of configuration files to standardized locations | | Tech Stack | Go binary, configurable YAML rules, JSON output for scripting | | Difficulty | Low | | Monetization | Revenue-ready: Subscription‑free, donation‑supported (Patreon) |

Notes

  • Directly responds to Chu4eeno’s frustration about “a ton of config/bookmarks/caches … you want everything to use” and the need for “standardization”.
  • Addresses bt1a’s curiosity about “what would the cross platform compatibility help with?” by delivering concrete utility.
  • Easy to integrate into dotfile managers or version‑control hooks, offering immediate practical value for the community.

DotMigrate Service#Summary

  • A hosted configuration migration service with a web UI where users upload a directory of dotfiles and receive a migration report.
  • Detects symlinks, plain files, and conflicting formats, then provides a step‑by‑step guide to relocate them to XDG‑compliant paths.
  • Optionally generates a ready‑to‑use config bundle for popular frameworks (e.g., Qt, wxWidgets).

Details

Key Value
Target Audience Non‑technical users and small dev teams lacking deep OS knowledge
Core Feature Web‑based migration planner with conflict detection and safe move suggestions
Tech Stack Full‑stack (React frontend, Flask backend, PostgreSQL for storing migration histories)
Difficulty Medium
Monetization Revenue-ready: Tiered SaaS pricing (Free tier for up to 5 users, $5/mo per additional user)

Notes- Taps into the community’s desire for “something like Dconf” to store configs centrally, as mentioned by rrvsh and dbalatero.

  • Offers a practical utility that could spark discussion on HN about “how to avoid silently moving files” while still providing a solution.
  • Provides a service that bridges the gap between the discussion of standards and real‑world adoption, answering the implicit call for “more tools to make this painless.”

Read Later