https://github.com/xdg-net/xdg.directories
A .NET library for the XDG directory specifications
https://github.com/xdg-net/xdg.directories
cross-platform csharp dotnet dotnet-core dotnet-standard fsharp known-folders library linux macos windows xdg xdg-basedir xdg-compliance xdg-user-dirs
Last synced: 24 days ago
JSON representation
A .NET library for the XDG directory specifications
- Host: GitHub
- URL: https://github.com/xdg-net/xdg.directories
- Owner: xdg-net
- License: mit
- Created: 2023-11-08T14:40:39.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-18T08:09:15.000Z (about 2 months ago)
- Last Synced: 2025-03-18T09:24:04.432Z (about 2 months ago)
- Topics: cross-platform, csharp, dotnet, dotnet-core, dotnet-standard, fsharp, known-folders, library, linux, macos, windows, xdg, xdg-basedir, xdg-compliance, xdg-user-dirs
- Language: C#
- Homepage: https://xdg-net.github.io/Xdg.Directories/
- Size: 9.22 MB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Xdg.Directories
> A .NET Standard library for the XDG Base Directory Specification and XDG user directories.
[](https://github.com/xdg-net/Xdg.Directories/actions/workflows/build-test.yaml)
[](https://www.nuget.org/packages/Xdg.Directories/)
[](https://xdg-net.github.io/Xdg.Directories/)
[](https://choosealicense.com/licenses/mit/)Xdg.Directories is a ***small*** (the .dll is only 11 KB), [***fast***](https://xdg-net.github.io/Xdg.Directories/dev/bench/) and ***portable*** (Completely supports .NET Standard 2.0 and even NativeAOT!) .NET implementation of the [XDG Base Directory Specification](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html) and XDG user directories for Windows, MacOS and Linux/FreeBSD.
Full documentation can be found at .
## Installation
Use [NuGet](http://docs.nuget.org/docs/start-here/installing-nuget) to install [Xdg.Directories](thttps://www.nuget.org/packages/Xdg.Directories).
From the .NET CLI:
```bash
dotnet add package Xdg.Directories
```or from Visual Studio's package manager:
```pwsh
Install-Package Xdg.Directories
```### Pre-releases
Preview releases are uploaded to both [GitHub packages](https://github.com/xdg-net/Xdg.Directories/pkgs/nuget/Xdg.Directories) (need GitHub account to download) and [Forgejo packages](https://git.froth.zone/mirrors/-/packages/nuget/xdg.directories) (no login required).
## Usage
### Base Directories, C\#
```cs
using System;
using Xdg.Directories;// Prints /home/$USER/.local/share
Console.Writeline(BaseDirectory.DataHome);// Prints /home/$USER/.cache
Console.Writeline(BaseDirectory.CacheHome)
```### User Directories, F\#
```fsharp
open Xdg.Directories// Prints /home/$USER/Documents
printfn "%s" UserDirectory.DesktopDir
```## License
This project is licensed under the [MIT](https://choosealicense.com/licenses/mit/) license. \
Icon is made by Emoji One, [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0), via [Wikimedia Commons](https://commons.wikimedia.org/wiki/File:Eo_circle_purple_white_letter-x.svg) an image.