TABLE OF CONTENTS
- Introduction
- Setting Up the Admin Locally
- Installing and Restoring NuGet Packages
- Set Startup Project in Visual Studio
- Configuration (Local Environment)
- Enabling Caching in appsettings.json (Redis / SQL)
- Setting Up RabbitMQ for EventBus
Introduction
This article offers a step-by-step walkthrough to set up the Znode 10 Admin development environment, configure essential services, and run the platform locally. It is designed to support tasks such as theme customization, component development, and content management.
Prerequisites
Ensure the following tools and configurations are available before proceeding:
Install Visual Studio
- Visit: https://visualstudio.microsoft.com
- Download the latest version of Visual Studio (Community, Professional, or Enterprise)
Recommended Visual Studio Extensions (Optional)
To enhance code quality, readability, and consistency, install:
- CodeMaid – Cleans and organizes code automatically
- Visual Studio Spell Checker – Flags spelling errors in comments, strings, and text files
- Web Compiler 2022+ – Compiles LESS, Sass, JSX, and CSS files
Installation Steps:
- Open Visual Studio
- Go to “Extensions” > “Manage Extensions”
- Search for each extension and click “Download”
- Restart Visual Studio after installation
Setting Up the Admin Locally
Access the Repository
Name: znode10-admin-migration(Ensure access permissions are granted)
Clone the Repository
- Open Terminal or Git Bash
- Execute the following command:
git clone https://<your-repo-url>/znode10-admin-migration.git
Replace <your-repo-url> with the actual repository link.
- Navigate to the project directory:
cd znode10-admin-migration
Installing and Restoring NuGet Packages
Open the Solution File
- Launch Visual Studio
- Open the .sln file for the Admin module
Configure NuGet Package Source
- Go to: Tools > NuGet Package Manager > Package Manager Settings
- Select “Package Sources”
- Click the + button to add a new source:
Source Details:
- Name: Znode NuGet
- URL: https://nuget.znode.com/nuget
- Credentials (if prompted):
- Username: znode-mission@mrrsoft.com
- Password: (Contact Znode Support Team)
Set Startup Project in Visual Studio
To run the Admin module:
- Open the solution
- In Solution Explorer, locate Znode.Engine.Admin.csproj
- Right-click the project and select “Set as Startup Project”
- The project name should appear in bold
Configuration (Local Environment)
To ensure seamless integration between Admin and associated microservices:
Update appsettings.json
Locate the appsettings.json file in each microservice (e.g., Admin, API V1, API V2), and update the following keys:
"ZnodeApiRootUri": "https://localhost:44375", "ZnodeApiGateway": "https://localhost:44330", "ZnodeAdminUri": "https://localhost:44392"
- Save changes
- Rebuild the solution
Repeat this configuration in each microservice to ensure consistent connections.
Enabling Caching in appsettings.json (Redis / SQL)
To improve performance, caching is recommended in development and production environments.
Update the Caching Section
Add or update the following in the appsettings.json file:
"Caching": { "Type": "ZnodeRedisCache", "AbsoluteExpiration": "30", "SlidingExpiration": "20", "SqlCacheConnectionString": "Server=YOUR_SERVER;Database=YOUR_DB;User Id=USERNAME;Password=PASSWORD;TrustServerCertificate=True", "CacheSchemaName": "dbo", "CacheTableName": "SQLCache", "DeletionInterval": "30", "RedisCacheConnectionString": "localhost:6379", "RedisCacheInstanceName": "Dev", "InMemoryCacheKeys": "SiteConfig" }
Caching Options
- Use "ZnodeRedisCache" for Redis-based distributed caching
- Use "ZnodeSqlCache" for SQL Server-based caching
After editing:
- Save the file
- Restart the application
Setting Up RabbitMQ for EventBus
RabbitMQ can be used for event-based messaging in Znode environments.
Update the EventBus Section
In the appsettings.json file, add or update the following block:
"EventBus": { "MessageBrokerService": "RabbitMQ", "ServiceBusConnectionString": "YOUR_SERVICE_BUS_CONN_STRING", "RabbitMQConnectionString": "amqp://guest:guest@localhost:5672", "RabbitMQManagementUrl": "http://localhost:15672", "RabbitMQUserName": "guest", "RabbitMQPassword": "guest", "QueueName": "base-cache-queue", "RetryCount": "2", "RetryInterval": "200", "EventRetry": "true" }
Run RabbitMQ Locally
RabbitMQ can be run using:
- Docker Image: rabbitmq:management
- Direct Installation: https://www.rabbitmq.com/download.html
Access the management UI at:
http://localhost:15672
Default Credentials:
- Username: guest
- Password: guest