Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 5 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ building upon `Microsoft.Extensions.FileProviders`.
* [Ramstack.FileProviders](#ramstackfileproviders-2)
* [PrefixedFileProvider](#prefixedfileprovider)
* [SubFileProvider](#subfileprovider)
* [ZipFileProvider](#zipfileprovider)
* [Ramstack.FileProviders.Globbing](#ramstackfileprovidersglobbing-1)
* [Ramstack.FileProviders.Extensions](#ramstackfileprovidersextensions-1)
* [Ramstack.FileProviders.Composition](#ramstackfileproviderscomposition-1)
Expand Down Expand Up @@ -45,7 +44,7 @@ dotnet add package Ramstack.FileProviders.Extensions
```

### Ramstack.FileProviders
Provides additional implementations of `IFileProvider` including `PrefixedFileProvider`, `SubFileProvider`, and `ZipFileProvider`.
Provides additional implementations of `IFileProvider` including `PrefixedFileProvider` and `SubFileProvider`.

To install the `Ramstack.FileProviders` [NuGet package](https://www.nuget.org/packages/Ramstack.FileProviders) in your project,
run the following command:
Expand Down Expand Up @@ -80,7 +79,6 @@ This library offers additional implementations of the [IFileProvider](https://le

- `SubFileProvider`
- `PrefixedFileProvider`
- `ZipFileProvider`

#### PrefixedFileProvider

Expand Down Expand Up @@ -150,17 +148,6 @@ IFileInfo file = provider.GetFileInfo("/README");
Console.WriteLine(file.Exists);
```

#### ZipFileProvider

`ZipFileProvider` enables access to files within ZIP archives as if they were part of the file system.

Example:
```csharp
IFileProvider provider = new ZipFileProvider("/path/to/archive.zip");
foreach (IFileInfo file in provider.GetDirectoryContents("/"))
Console.WriteLine(file.Name);
```

### Ramstack.FileProviders.Globbing

`GlobbingFileProvider` class filters files using include and/or exclude glob patterns. Include patterns make only matching files visible,
Expand Down Expand Up @@ -290,15 +277,15 @@ var changeToken = compositeFileProvider.Watch("**/*.json").Flatten();

## NuGet Packages
- [Ramstack.FileProviders.Extensions](https://www.nuget.org/packages/Ramstack.FileProviders.Extensions) — Useful and convenient extensions for `IFileProvider`, bringing its capabilities and experience closer to what's provided by the `DirectoryInfo` and `FileInfo` classes.
- [Ramstack.FileProviders](https://www.nuget.org/packages/Ramstack.FileProviders) — Additional file providers, including `ZipFileProvider`, `PrefixedFileProvider`, and `SubFileProvider`.
- [Ramstack.FileProviders](https://www.nuget.org/packages/Ramstack.FileProviders) — Additional file providers, including `PrefixedFileProvider` and `SubFileProvider`.
- [Ramstack.FileProviders.Globbing](https://www.nuget.org/packages/Ramstack.FileProviders.Globbing) — A file provider that filters files using include and/or exclude glob patterns. Include patterns make only matching files visible, while exclude patterns hide specific files. Both include and exclude patterns can be combined for flexible file visibility control.
- [Ramstack.FileProviders.Composition](https://www.nuget.org/packages/Ramstack.FileProviders.Composition) — Provides a helper class for flattening and composing `IFileProvider`.

## Supported versions

| | Version |
|------|------------|
| .NET | 6, 7, 8, 9 |
| | Version |
|------|----------------|
| .NET | 6, 7, 8, 9, 10 |

## Contributions

Expand Down
10 changes: 6 additions & 4 deletions src/Ramstack.FileProviders.Composition/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Ramstack.FileProviders.Composition
[![NuGet](https://img.shields.io/nuget/v/Ramstack.FileProviders.Composition.svg)](https://nuget.org/packages/Ramstack.FileProviders.Composition)
[![MIT](https://img.shields.io/github/license/rameel/ramstack.fileproviders)](https://github.com/rameel/ramstack.fileproviders/blob/main/LICENSE)

Represents a .NET library that provides a helper class for flattening and composing `IFileProvider` instances.

Expand Down Expand Up @@ -63,14 +65,14 @@ var changeToken = compositeFileProvider.Watch("**/*.json").Flatten();

## Related Packages
- [Ramstack.FileProviders.Extensions](https://www.nuget.org/packages/Ramstack.FileProviders.Extensions) — Useful and convenient extensions for `IFileProvider`, bringing its capabilities and experience closer to what's provided by the `DirectoryInfo` and `FileInfo` classes.
- [Ramstack.FileProviders](https://www.nuget.org/packages/Ramstack.FileProviders) — Additional file providers, including `ZipFileProvider`, `PrefixedFileProvider`, and `SubFileProvider`.
- [Ramstack.FileProviders](https://www.nuget.org/packages/Ramstack.FileProviders) — Additional file providers, including `PrefixedFileProvider` and `SubFileProvider`.
- [Ramstack.FileProviders.Globbing](https://www.nuget.org/packages/Ramstack.FileProviders.Globbing) — A file provider that filters files using include and/or exclude glob patterns. Include patterns make only matching files visible, while exclude patterns hide specific files. Both include and exclude patterns can be combined for flexible file visibility control.

## Supported versions

| | Version |
|------|------------|
| .NET | 6, 7, 8, 9 |
| | Version |
|------|----------------|
| .NET | 6, 7, 8, 9, 10 |

## Contributions

Expand Down
10 changes: 6 additions & 4 deletions src/Ramstack.FileProviders.Extensions/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Ramstack.FileProviders.Extensions
[![NuGet](https://img.shields.io/nuget/v/Ramstack.FileProviders.Extensions.svg)](https://nuget.org/packages/Ramstack.FileProviders.Extensions)
[![MIT](https://img.shields.io/github/license/rameel/ramstack.fileproviders)](https://github.com/rameel/ramstack.fileproviders/blob/main/LICENSE)

Represents a lightweight .NET library of useful and convenient extensions for `Microsoft.Extensions.FileProviders`
that enhances file handling capabilities in .NET applications.
Expand Down Expand Up @@ -66,16 +68,16 @@ foreach (FileNode file in provider.EnumerateFiles("/project", pattern: "**/*.md"
```

## Related Packages
- [Ramstack.FileProviders](https://www.nuget.org/packages/Ramstack.FileProviders) — Additional file providers, including `ZipFileProvider`, `PrefixedFileProvider`, and `SubFileProvider`.
- [Ramstack.FileProviders](https://www.nuget.org/packages/Ramstack.FileProviders) — Additional file providers, including `PrefixedFileProvider` and `SubFileProvider`.
- [Ramstack.FileProviders.Globbing](https://www.nuget.org/packages/Ramstack.FileProviders.Globbing) — A file provider that filters files using include and/or exclude glob patterns. Include patterns make only matching files visible, while exclude patterns hide specific files. Both include and exclude patterns can be combined for flexible file visibility control.
- [Ramstack.FileProviders.Composition](https://www.nuget.org/packages/Ramstack.FileProviders.Composition) — Provides a helper class for flattening and composing `IFileProvider`.


## Supported versions

| | Version |
|------|------------|
| .NET | 6, 7, 8, 9 |
| | Version |
|------|----------------|
| .NET | 6, 7, 8, 9, 10 |

## Contributions

Expand Down
10 changes: 6 additions & 4 deletions src/Ramstack.FileProviders.Globbing/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Ramstack.FileProviders.Globbing
[![NuGet](https://img.shields.io/nuget/v/Ramstack.FileProviders.Globbing.svg)](https://nuget.org/packages/Ramstack.FileProviders.Globbing)
[![MIT](https://img.shields.io/github/license/rameel/ramstack.fileproviders)](https://github.com/rameel/ramstack.fileproviders/blob/main/LICENSE)

Represents a .NET library implementing an `IFileProvider` that filters files using include and/or exclude glob patterns
for flexible file visibility control.
Expand Down Expand Up @@ -26,15 +28,15 @@ foreach (IFileInfo file in provider.GetDirectoryContents("/"))

## Related Packages
- [Ramstack.FileProviders.Extensions](https://www.nuget.org/packages/Ramstack.FileProviders.Extensions) — Useful and convenient extensions for `IFileProvider`, bringing its capabilities and experience closer to what's provided by the `DirectoryInfo` and `FileInfo` classes.
- [Ramstack.FileProviders](https://www.nuget.org/packages/Ramstack.FileProviders) — Additional file providers, including `ZipFileProvider`, `PrefixedFileProvider`, and `SubFileProvider`.
- [Ramstack.FileProviders](https://www.nuget.org/packages/Ramstack.FileProviders) — Additional file providers, including `PrefixedFileProvider` and `SubFileProvider`.
- [Ramstack.FileProviders.Composition](https://www.nuget.org/packages/Ramstack.FileProviders.Composition) — Provides a helper class for flattening and composing `IFileProvider`.


## Supported versions

| | Version |
|------|---------|
| .NET | 6, 7, 8 |
| | Version |
|------|----------------|
| .NET | 6, 7, 8, 9, 10 |

## Contributions

Expand Down
19 changes: 5 additions & 14 deletions src/Ramstack.FileProviders/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# Ramstack.FileProviders
[![NuGet](https://img.shields.io/nuget/v/Ramstack.FileProviders.svg)](https://nuget.org/packages/Ramstack.FileProviders)
[![MIT](https://img.shields.io/github/license/rameel/ramstack.fileproviders)](https://github.com/rameel/ramstack.fileproviders/blob/main/LICENSE)

Represents a .NET library that provides additional implementations for `Microsoft.Extensions.FileProviders` including:
- `PrefixedFileProvider`
- `SubFileProvider`
- `ZipFileProvider`

## Getting Started

Expand Down Expand Up @@ -81,26 +82,16 @@ IFileInfo file = provider.GetFileInfo("/README");
Console.WriteLine(file.Exists);
```

## ZipFileProvider
`ZipFileProvider` enables access to files within ZIP archives as if they were part of the file system.

Example:
```csharp
IFileProvider provider = new ZipFileProvider("/path/to/archive.zip");
foreach (IFileInfo file in provider.GetDirectoryContents("/"))
Console.WriteLine(file.Name);
```

## Related Packages
- [Ramstack.FileProviders.Extensions](https://www.nuget.org/packages/Ramstack.FileProviders.Extensions) — Useful and convenient extensions for `IFileProvider`, bringing its capabilities and experience closer to what's provided by the `DirectoryInfo` and `FileInfo` classes.
- [Ramstack.FileProviders.Globbing](https://www.nuget.org/packages/Ramstack.FileProviders.Globbing) — A file provider that filters files using include and/or exclude glob patterns. Include patterns make only matching files visible, while exclude patterns hide specific files. Both include and exclude patterns can be combined for flexible file visibility control.
- [Ramstack.FileProviders.Composition](https://www.nuget.org/packages/Ramstack.FileProviders.Composition) — Provides a helper class for flattening and composing `IFileProvider`.

## Supported versions

| | Version |
|------|------------|
| .NET | 6, 7, 8, 9 |
| | Version |
|------|----------------|
| .NET | 6, 7, 8, 9, 10 |

## Contributions

Expand Down
Loading
Loading