Skip to content

.NET library, implementing an advanced custom data models-containers and custom jenga wrapper for array of data

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.md
Notifications You must be signed in to change notification settings

Falcion/Zustandfundamentalen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
contributors stargazers forks issues commit-activity downloads

icon

Zustandfundamentalen

Hold the data.
Contribute to us / View tags / Report a bug

About the project

Via programming different software, scripts and apps, there is a requirement for non-static predefined instances of different values which contain pair, triad, quadra or singleton instances of given parameters with given type.

Project of this implements such simple, yet effecient containers for your data samples with advanced infrastructures and tuples support, but not only this, it also provides custom wrapper for dictionary which acts like jengas data structure.

Built-with

Project is created and “written” with help of:

NUGET
DOTNET
CSHARP
PYTHON

Getting started

Before asking questions, read this block because here is all the primary information on the project, which can answer your future not-yet asked questions.

Prerequisites

If you want to make a contribution to this project, these are following tech-requirements:

  • Installed Node.js on your desktop on which you will edit/setup this project;
  • Installed Python if you want to contribute to the scripts of this project (in terms of .PY scripts);

For usage of this project, you must have on your machine already installed:

[^]

Installation

Permission is granted for free use in any of your products.

If you want to use this project, there are multiple ways to download-and-use this project: two “official” and direct, so, let's start from simplest official path:

Process of installation within NUGET package manager in VS:

  1. Open project in IDE with .NET native-support;
  2. Use the specified package manager in your IDE (in VS - find this in upper hotbar):
    if we talking about VS, load project via solution explorer and then proceed with "Project → Manage Nuget Packages" and then navigate through UI with help of:
    https://learn.microsoft.com/en-us/nuget/consume-packages/install-use-packages-visual-studio/
  3. Write the name of this package into packages browser;
  4. download the required for you version through the menu and package is ready-to-use.

If you are interested in importing DLL of this package into your project, read this article:
https://learn.microsoft.com/en-us/dotnet/standard/native-interop/native-library-loading/

Guidelines for direct-installation way:

  1. Download last tag on project's repository, for the last ZIP-tarball link provided below:
    download latest release
    • or just download the source-code through "Code → Download ZIP (or any option that you want)", and proceed to the next step;
  2. Within downloaded ZIP (or project), clone everything and paste to the directory of your project via "copy+paste" procedure;
  3. Add namespace as dependency for your own namespaces (in case if you cloned the source into your project) and the project is ready-to-use.

Guidelines for installation of source code of this project:

  1. Clone the repository with any form of app which supports git (or CLI of this site), guide is attached:
    https://www.howtogeek.com/451360/how-to-clone-a-github-repository/
  2. Open it with any suitable for you editor and feel free to customize, update and/or contribute to this project1.

[^]

Usage

Project is very simple and compact and always in ready-to-use in hard-code situations project: it provides to you simplestics containers for data.

  • Data container:
    • P1: which contains [1] non-static data-value(s);
    • P2: which contains [2] non-static data-value(s);
    • P3: which contains [3] non-static data-values(s);
    • P4: which contains [4] non-static data-values(s);
  • Jenga array:
    • which contains same data as named bricks structure;

Usage of this project is very easy and comfortable for common user, its not provided with any advanced code or anything, it just the "data" which user must interpretate as it wants.

  1. Go to your project's directory and paste the contents of this template, which were installed with help of installation guides2;
  2. Now, you can continue to work on your project with this template's data in it.

[^]

Roadmap

  • Create basic repository infrastructure for this project, including:
    • basic .MD documentations and dealings stuff (like README, LICENSE and etc.);
    • scripts and actions within CI/CD for supporting high-quality of this project;
  • Write and publish the demo (pre-release) version of project, including the most basic logic of this one:
    • P1: which contains [1] non-static data-value(s);
    • P2: which contains [2] non-static data-value(s);
    • P3: which contains [3] non-static data-values(s);
    • P4: which contains [4] non-static data-values(s);
    • ARR-JENGA:
      • T1K1;
      • T1K2;
      • Thread-safe versions of them;
  • Write the documentation for this demo-project and:
    • make it one as archive for technical docs purposes (hyperlinking directive);
  • Refactor and prepare for “advancing” the project's logic and write an entire functionality of it.
  • Refactor and prepare for “advancing” the project's documentation and publish it via the archive.

[^]

Contributing

Contributions are what make open source community such an interest place to be in, so any form of contribution are greatly appreciated.

If you think that you can help this project become better but think its not so important/realizable in the current situtation or for a full contribution, use issues page, otherwise there is a guideline and policy for contributing.

If you want to contribute to this project, please, read contributioning policy and commit convention, this repository works with CLA, commits convention and on automated deployment system3.

For one-single file contributioning, use a more quicker way without forking the repository through website.

More about it in this article:

[^]

License

Project thanks the Electron.js and Angular.js for their amazing repository scripts and entire infrastructure, which partially were imported to this repository.

For individual licensing and credits information, seek correspondive files and/or sources.

Project itself is being distributed under the MIT License — see the file for more specified information.

[^]

Contact

For any legal purposes, you can contact developer/maintainer through its e-mail:

If the developer/maintainer didn't answered, or you have other questions in nature, you can use issues page on this repository via specified templates or indirect self-written issue.

[^]

Acknowledgments

[^]

Footnotes

  1. for contributing policy, see — CONTRIBUTING.md

  2. .../#installation

  3. read the files of commiting convention policy and contributioning policy