Download • Documentation • License
An open source tool for managing networks and troubleshooting network problems!
Connect and manage remote systems with Remote Desktop, PowerShell, PuTTY, TigerVNC or AWS (Systems Manager) Session Manager. Analyze and troubleshoot your network and systems with features such as the WiFi Analyzer,IP Scanner, Port Scanner, Ping Monitor, Traceroute, DNS lookup or LLDP/CDP capture in a unfied interface. Hosts (or networks) can be saved in (encrypted) profiles and used across all features.
- Ninja supports 'AnyCPU' as well as x86/x64 specific builds
- Controls - controls associated main ui layer and related functionality.
- Converters - various converter classes.
- Documentation- app docs.
- Localization - internationalization
- Profiles - profile classes
- Models - models used in network analysis
- Settings - settings used in Ninja.
- Utility - static types used by Ninja.
- Utilities.Wpf - wpf utility classes.
- Validators - Views
- Ninja - models used by the ui
- User Guide - how to use Ninja.
- Compilation Guide - instructions on how to compile Ninja.
- Configuration Guide - information for the Ninja configuration file.
- Distribution Guide - distributing Ninja.
Pre-built and binaries (setup, portable and archive) are available on the with install instructions (e.g. silent install).
- VisualStudio 2022
- Based on .NET8 and WPF
$ git clone https://github.com/is-leeroy-jenkins/Ninja.git
$ cd Ninja
Run Ninja.sln
You can build the application like any other .NET / WPF application on Windows.
-
Make sure that the following requirements are installed:
- .NET 8.x - SDK
- Visual Studio 2022 with
.NET desktop development
andUniversal Windows Platform development
-
Clone the repository with all submodules:
# Clone the repository git clone https://github.com/is-leeroy-jenkins/Ninja # Navigate to the repository cd Ninja # Clone the submodules git submodule update --init
-
Open the project file
.\Source\Ninja.sln
with Visual Studio or JetBrains Rider to build (or debug) the solution.ALTERNATIVE
With the following commands you can directly build the binaries from the command line:
dotnet restore .\Source\Ninja.sln dotnet build .\Source\Ninja.sln --configuration Release --no-restore
Ninja uses the following projects and libraries. Please consider supporting them as well (e.g., by starring their repositories):
#SNMP Library | SNMP library for .NET |
AirspaceFixer | AirspacePanel fixes all Airspace issues with WPF-hosted Winforms. |
ControlzEx | Shared Controlz for WPF and more |
DnsClient.NET | Powerful, high-performance open-source library for DNS lookups |
Docusaurus | Easy to maintain open source documentation websites. |
Dragablz | Tearable TabControl for WPF |
GongSolutions.Wpf.DragDrop | An easy to use drag'n'drop framework for WPF |
IPNetwork | .NET library for complex network, IP, and subnet calculations |
LoadingIndicators.WPF | A collection of loading indicators for WPF |
MahApps.Metro.IconPacks | Awesome icon packs for WPF and UWP in one library |
MahApps.Metro | UI toolkit for WPF applications |
NetBeauty2 | Move .NET app runtime components and dependencies into a sub-directory |
PSDiscoveryProtocol | PowerShell module for LLDP/CDP discovery |
Ninja uses free code signing provided by SignPath.io and a free code signing certificate from SignPath Foundation.
The binaries and installer are built on AppVeyor directly from the GitHub repository. Build artifacts are automatically sent to SignPath.io via webhook, where they are signed after manual approval by the maintainer. The signed binaries are then uploaded to the GitHub releases page.
This program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it.
Ninja has integrated the following services for additional functions, which can be enabled or disabled at the first start (in the welcome dialog) or at any time in the settings:
- api.github.com (Check for program updates)
- ipify.org (Retrieve the public IP address used by the client)
- ip-api.com (Retrieve network information such as geo location, ISP, DNS resolver used, etc. used by the client)
Ninja is published under the MIT Public License.
The licenses of the libraries used can be found here.