Console.Waterworks.Core is the .Net Core version of Console.Waterworks.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Craig Oates caf2fb1bd2 release found no NuGet. 5 years ago
CW_Core_Console update assembly info. for 1.0 release. 5 years ago
CW_Core_Tests update nuget packages for solution. 5 years ago
Console.Waterworks.Core release found no NuGet. 5 years ago
Documentation/GitHub_Assets Initial setup. 6 years ago
.gitattributes Initial setup. 6 years ago
.gitignore Initial setup. 6 years ago Initial setup. 6 years ago Initial setup. 6 years ago Initial setup. 6 years ago
Console.Waterworks.Core.sln Added testing and console demo. 6 years ago
LICENSE Initial commit 6 years ago Initial setup. 6 years ago [Doc Update] Removed not live warning in the readme file. 6 years ago


About Console.Waterworks.Core

Console.Waterworks.Core is the .Net Core version of Console.Waterworks. Both projects are Nuget packages. And, their main purpose is to help you write extendable command-based console programs. If you want to write a console program using the full .Net Framework, use Console.Waterworks.

Console.Waterworks Repository

About Documentation

In this repository, you will find instructions on how to use Console.Waterworks.Core. This is because the architecture and concepts between the two projects are the same. So, it felt unnecessary to repeat that part here. Instead, I will point you to the Console.Waterworks' wiki. Once there, you can explore how they are built.

Please note, the code examples used in the wiki are the same for both repositories. Also, the wiki's main focus is on explaining the architecture and concepts of the projects. So, you will not find a lot of code samples in it. If you want to explore the code, I recommend you start in the class called CW_Liaison. It is the entry point (for both projects).

Console.Waterworks Wiki - Artictecture Overview


To use Console.Waterworks.Core, I recommend you meet the following pre-requisites:

Quick Start - Wiring Console.Waterworks.Core in to your Console Program

Before continuing... I am skipping the part about creating a .Net console program. This is because I assume you know how to do that. I am, also, assuming you are using Visual Studio 2017 and C# (not VB or F#).

1 Add Console.Waterworks.Core to your project via Nuget. You can do this using Visual Studio's (2017) Package Manager GUI. Or, you can use the Package Manager Console. Here is the command for the PM Console,

# Enter the version of number of your choice.
Install-Package Console.Waterworks.Core -Version 0.1.0-alpha1

2 Create a class called ConsoleCommands. It can go anywhere as long as it is in the same project as the console program.

3 Make a note of the ConsoleCommands namespace.

4 Head to the Main method in Program.cs and add the following lines of code,

public static void Main(string[] args)
    CW_Liaison liaison = new CW_Liaison();
    liaison.Run("CW_Console", true);

5 Head back to ConsoleCommands and make it public and static.

6 Stay in ConsoleCommands and write the following method,

public string Test()
    return "Congratulations! It works.";

7 Run the program and type "Test" into the console.

8 If all has gone well, you should see the “Congratulations! It works." message.

9 Add more methods to you console program.

(Offline) Guides

I provided a link to Console.Waterworks' Wiki as a online guide for learning about Console.Waterworks(.Core)'s architecture. With that said, I have, also, mad a couple of guides for when you are offline. The are as follows,

  • The Quick Guide to Console.Waterworks.Core
  • The Architecture Guide Console.Waterworks.Core

These guides are printer friendly. And, they are best consumed on your favourite reading chair.

Code of Conduct

Please visit the Code of Conduct page for Console.Waterworks.Core at,

Contributing to the Console.Waterworks.Core Repository

Please visit the Contributing page for Console.Waterworks.Core at,

About the Creator

Hi, my name is Craig and I'm the creator of Console.Waterworks.Core. Thanks for checking it out.