Skip to content

Commit

Permalink
update and seperate readme's
Browse files Browse the repository at this point in the history
  • Loading branch information
calebjenkins committed Dec 31, 2023
1 parent e14e5a0 commit dcfea2b
Show file tree
Hide file tree
Showing 4 changed files with 63 additions and 7 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ By default, this library ships with an in-memory implementation. `KeyValueInMemo

## Installing KeyValueRepo

You should install [Extensions with NuGet](https://www.nuget.org/packages/Calebs.KeyValueRepo):
You should install the KeyValueRepo [with NuGet](https://www.nuget.org/packages/Calebs.KeyValueRepo):

Install-Package Calebs.KeyValueRepo

Expand Down
4 changes: 2 additions & 2 deletions src/KeyValueRepo/KeyValueRepo.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<Copyright>Copyright Caleb Jenkins</Copyright>
<PackageProjectUrl>https://github.com/calebjenkins/</PackageProjectUrl>
<RepositoryUrl>https://github.com/calebjenkins/KeyValueRepo</RepositoryUrl>
<PackageReadmeFile>README.md</PackageReadmeFile>
<PackageReadmeFile>Nuget-Readme.md</PackageReadmeFile>
<RepositoryType>git</RepositoryType>
<PackageTags>KeyValue;Data</PackageTags>
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
Expand All @@ -38,7 +38,7 @@
<Pack>True</Pack>
<PackagePath></PackagePath>
</None>
<None Include="..\..\README.md">
<None Include=".\Nuget-Readme.md">
<Pack>True</Pack>
<PackagePath></PackagePath>
</None>
Expand Down
55 changes: 55 additions & 0 deletions src/KeyValueRepo/Nuget-Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# KeyValueRepo
![KeyValueRepo Logo](https://raw.githubusercontent.com/calebjenkins/KeyValueRepo/develop/assets/logo/KeyValueRepoLogo.png)

[![.github/workflows/dev-ci.yml](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/dev-ci.yml/badge.svg?branch=develop)](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/dev-ci.yml)
[![.github/workflows/main-publish.yml](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/main-publish.yml/badge.svg?branch=main)](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/main-publish.yml)
[![NuGet](https://img.shields.io/nuget/dt/calebs.keyvaluerepo.svg)](https://www.nuget.org/packages/Calebs.KeyValueRepo)
[![NuGet](https://img.shields.io/nuget/vpre/calebs.keyvaluerepo.svg)](https://www.nuget.org/packages/Calebs.KeyValueRepo)
[![.github/workflows/working-branches.yml](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/working-branches.yml/badge.svg)](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/working-branches.yml)

A generic interface for Key Value storage operations. Ideal for simple key-values that might migrate across in memory, SQL Server or NoSQL - a quick and easy way to create a KeyValue store.

By default, this library ships with an in-memory implementation. `KeyValueInMemory` which implements the `IKeyValueRepo` interface.

## Installing KeyValueRepo

You should install the KeyValueRepo [with NuGet](https://www.nuget.org/packages/Calebs.KeyValueRepo):

Install-Package Calebs.KeyValueRepo

Or via the .NET Core command line interface:

dotnet add package Calebs.KeyValueRepo

Either command, from Package Manager Console or .NET Core CLI, will download and install Calebs.KeyValueRepo and all required dependencies.

## Contributing
- PRs should be against the `Develop` branch.
- Merged PRs to `Develop` will trigger a `[version]-ci-[buildnumber]` deployment to nuget, assuming all unit tests pass.
- Merged PRs to `Main` will trigger a [version] deployment to nuget, assuming all of the tests pass.

## Versioning
The package `version` is defined in the `KeyValueRepo.csproj` file, using .NET SDK style structure. We follow `semantic versioning` for this package.


## Methods in IKeyValueRepo

- Get<T>(string Id)
- Get<T>(int Id) => Get<T>(string Id)
- Note: This method has a _default implementation_ that performs a `ToString()` on the Id and calls the `Get<T>(string Id)` method.
- GetAll<T>()
- Update<T>(string Id, T object)
- Update<T>(int Id, T object) => Update(string Id, T object)
- Note This method has a _default implementation_ that performs a `ToSTring()` on the int Id and calls the `Update<T>(string Id, T object)` method.


## Release History & Development Goals
- 0.1.0 - initial release (in Memory)
- 0.2.0 - added SqlLite Implementation
- ✔ SQLite [Nuget Package](https://www.nuget.org/packages/Calebs.KeyValueRepo.SQLite/)
### Future Goals
---
- New Feature: KV Meta Objects
- New Repo: Sql Server Implementation
- New Repo: Azure Tables Implementation
- New Repo: Azure CosmoDB Implementation
9 changes: 5 additions & 4 deletions src/KeyValueSqlLiteRepo/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# KeyValueRepo.SQLite
![KeyValueRepo Logo](/assets/logo/KeyValueRepoLogo.png)
![KeyValueRepo Logo](https://raw.githubusercontent.com/calebjenkins/KeyValueRepo/develop/assets/logo/KeyValueRepoLogo.png)

[![.github/workflows/dev-ci-sql-lite.yml](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/dev-ci-sql-lite.yml/badge.svg?branch=develop)](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/dev-ci.yml)
[![.github/workflows/main-publish-sql-lite.yml](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/main-publish.yml/badge.svg?branch=main)](https://github.com/calebjenkins/KeyValueRepo/actions/workflows/main-publish-sql-lite.yml)
Expand All @@ -13,7 +13,7 @@ By default, this library ships with an in-memory implementation. `KeyValueInMemo

## Installing KeyValueRepo

You should install [Extensions with NuGet](https://www.nuget.org/packages/Calebs.KeyValueRepo.SQLite):
You should install the KeyValueRepo [with NuGet](https://www.nuget.org/packages/Calebs.KeyValueRepo.SQLite):

Install-Package Calebs.KeyValueRepo.SQLite

Expand Down Expand Up @@ -49,7 +49,8 @@ The package `version` is defined in the `KeyValueSqlLiteRepo.csproj` file, using
- ✔ SQLite [Nuget Package](https://www.nuget.org/packages/Calebs.KeyValueRepo.SQLite/)
### Future Goals
---
- New Feature: KV Meta Objects
- New Repo: Sql Server Implementation
- New Feature: KVR Meta Objects
- New Feature: Base Unit Tests via Nuget
- New Repo: Azure Tables Implementation
- New Repo: Sql Server Implementation
- New Repo: Azure CosmoDB Implementation

0 comments on commit dcfea2b

Please sign in to comment.