Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -349,3 +349,9 @@ ASALocalRun/

# MFractors (Xamarin productivity tool) working folder
.mfractor/

# Deployment artifacts
deploy*.zip
app-logs/
app-logs.zip
publish-*/
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@

The Azure Naming Tool was created to help administrators define and manage their naming conventions, while providing a simple interface for users to generate a compliant name. The tool was developed using a naming pattern based on [Microsoft's best practices](https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/naming-and-tagging). Once an administrator has defined the organizational components, users can use the tool to generate a name for the desired Azure resource.

## [Documentation](https://github.com/mspnp/AzureNamingTool/wiki)
## [CLICK HERE FOR DOCUMENTATION!](https://github.com/mspnp/AzureNamingTool/wiki)
91 changes: 91 additions & 0 deletions docs/v5.0.0/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
## Overview

The Azure Naming Tool documentation is hosted in the GitHub Wiki. Please use the link below to view documentation.

[GitHub Wiki - Documentation](https://github.com/mspnp/AzureNamingTool/wiki)

---

## Technical Documentation

### Release Documentation

| Document | Description | Audience |
|----------|-------------|----------|
| [Release Notes v5.0.0](./RELEASE_NOTES_v5.0.0.md) | Major features and breaking changes | All Users |
| [Migration Guide](./V5.0.0_MIGRATION_GUIDE.md) | Complete v5.0.0 upgrade guide with backup/restart procedures | Administrators, DevOps |

### Azure Tenant Name Validation (v5.0.0+)

Comprehensive documentation for the Azure tenant name validation feature:

#### Development Documentation (`development/`)

| Document | Description | Audience |
|----------|-------------|----------|
| [Implementation Plan](./development/AZURE_NAME_VALIDATION_PLAN.md) | 8-phase roadmap and technical architecture | Developers, Architects |
| [Administrator Guide](./development/AZURE_VALIDATION_ADMIN_GUIDE.md) | Setup, configuration, and maintenance procedures | Administrators, Operations |
| [API Guide](./development/AZURE_VALIDATION_API_GUIDE.md) | V2 API documentation with code examples | Developers, API Consumers |
| [Feature Complete Summary](./development/AZURE_VALIDATION_FEATURE_COMPLETE.md) | Complete feature implementation details | Developers |
| [Phase 5 UI Integration](./development/PHASE5_UI_INTEGRATION_SUMMARY.md) | UI integration implementation details | Developers |

#### Testing Documentation (`testing/`)

| Document | Description | Audience |
|----------|-------------|----------|
| [Testing Guide](./testing/AZURE_VALIDATION_TESTING_GUIDE.md) | Test suites and automated testing scripts | QA Teams, Developers |
| [Security Guide](./testing/AZURE_VALIDATION_SECURITY_GUIDE.md) | Authentication, RBAC, and security best practices | Security Teams, DevOps |
| [Migration Fix](./testing/AZURE_VALIDATION_MIGRATION_FIX.md) | Migration-related fixes and solutions | Developers, Support |
| [Backup & Restore](./testing/BACKUP_RESTORE.md) | Data backup and recovery procedures | Administrators, Operations |

### API Documentation (`wiki/`)

| Document | Description | Audience |
|----------|-------------|----------|
| [API V1 Wiki](./wiki/API_V1_WIKI.md) | Version 1 API documentation | Developers, API Consumers |
| [API V2 Wiki](./wiki/API_V2_WIKI.md) | Version 2 API documentation (recommended) | Developers, API Consumers |
| [Azure Validation Wiki](./wiki/AZURE_VALIDATION_WIKI.md) | Complete Azure validation feature documentation | All Users |
| [🐳 Azure Validation Docker Wiki](./AZURE_VALIDATION_DOCKER_WIKI.md) | **Docker deployment guide for Azure Validation** | Docker Users, DevOps |

### Other Development Documentation (`development/`)

| Document | Description | Audience |
|----------|-------------|----------|
| [Bulk API Operations](./development/API_BULK_OPERATION_IMPLEMENTATION_PLAN.md) | Bulk name generation implementation | Developers |
| [API Migration Plan](./development/API_MIGRATION_PLAN.md) | V1 to V2 API migration guide | Developers, Architects |
| [Dashboard Implementation](./development/DASHBOARD_IMPLEMENTATION_PLAN.md) | Dashboard features and implementation | Developers |
| [Modernization Plan](./development/MODERNIZATION_PLAN.md) | .NET 8 and Blazor modernization | Developers, Architects |
| [Design Implementation](./development/DESIGN_IMPLEMENTATION_PLAN.md) | UI/UX design patterns | Developers, Designers |
| [Migration Guidance](./development/MIGRATIONGUIDANCE_PLAN.md) | Tool migration procedures | Developers, Administrators |

---

## Document Organization

```
docs/v5.0.0/
├── README.md # This file
├── RELEASE_NOTES_v5.0.0.md # Release notes
├── V5.0.0_MIGRATION_GUIDE.md # Migration guide
├── development/ # Development & implementation docs
│ ├── API_BULK_OPERATION_IMPLEMENTATION_PLAN.md
│ ├── API_MIGRATION_PLAN.md
│ ├── AZURE_NAME_VALIDATION_PLAN.md
│ ├── AZURE_VALIDATION_ADMIN_GUIDE.md
│ ├── AZURE_VALIDATION_API_GUIDE.md
│ ├── AZURE_VALIDATION_FEATURE_COMPLETE.md
│ ├── DASHBOARD_IMPLEMENTATION_PLAN.md
│ ├── DESIGN_IMPLEMENTATION_PLAN.md
│ ├── MIGRATIONGUIDANCE_PLAN.md
│ ├── MODERNIZATION_PLAN.md
│ └── PHASE5_UI_INTEGRATION_SUMMARY.md
├── testing/ # Testing & operational docs
│ ├── AZURE_VALIDATION_MIGRATION_FIX.md
│ ├── AZURE_VALIDATION_SECURITY_GUIDE.md
│ ├── AZURE_VALIDATION_TESTING_GUIDE.md
│ └── BACKUP_RESTORE.md
└── wiki/ # Wiki-style documentation
├── API_V1_WIKI.md
├── API_V2_WIKI.md
└── AZURE_VALIDATION_WIKI.md
```
175 changes: 175 additions & 0 deletions docs/v5.0.0/RELEASE_NOTES_v5.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
# Azure Naming Tool - Release Notes v5.0.0

## Overview
Version 5.0.0 is a major release featuring .NET 10.0 framework upgrade, modern dashboard redesign, SQLite database support, Azure Tenant Name Validation, enhanced UI/UX, improved configuration management, and API versioning support.

## 🎯 Major Features

### .NET 10.0 Framework Upgrade
- **Latest .NET version** - Upgraded from .NET 8.0 to .NET 10.0
- **Performance improvements** with enhanced runtime efficiency
- **Security updates** including latest patches and improvements
- **Modern features** providing access to newest .NET capabilities
- **Long-term support** for better maintainability
- **Breaking change:** Requires .NET 10.0 runtime for deployment
- See [Migration Guide](V5.0.0_MIGRATION_GUIDE.md) for upgrade instructions

### Modern Dashboard Redesign
- **Two-column hero layout** with logo on left, custom content on right
- **Configuration Overview stats grid** showing counts for all enabled components
- **Featured "Names Generated" stat card** with gradient styling
- **Responsive design** optimized for mobile and desktop
- **Custom Home Content support** - Markdown editor for personalized welcome messages
- Fixed component name matching issues (ResourceOrg, ResourceProjAppSvc, ResourceFunction)
- Improved visual hierarchy and card-based design

### SQLite Database Support
- **Enhanced performance** with faster data access and queries
- **Better scalability** for larger configurations
- **Improved reliability** with transactional support and data integrity
- **Built-in migration tool** from file-based storage to SQLite
- **One-click migration** with automatic backup creation
- **Rollback support** if migration issues occur
- Admin UI for easy storage provider management
- Maintains backward compatibility with file-based JSON storage

### Azure Tenant Name Validation
- **Validate generated names against your Azure tenant** before deployment
- Prevent naming conflicts by checking if resource names already exist
- Support for both **Managed Identity** (recommended) and **Service Principal** authentication
- Flexible conflict resolution strategies:
- **NotifyOnly** - Warn about conflicts but allow generation (default)
- **AutoIncrement** - Automatically append incremented suffix (e.g., -001, -002)
- **Fail** - Block generation if name exists
- **SuffixRandom** - Add random suffix to resolve conflicts
- **Performance caching** to minimize Azure API calls
- **Scoped validation** - configure specific subscription(s) to check
- **Multi-subscription support** for enterprise deployments
- Integrated into Site Settings for easy configuration
- **⚠️ IMPORTANT**: This feature **requires SQLite storage**. You must migrate to SQLite before enabling Azure Tenant Name Validation.

### Modern UI/UX Improvements
- **Consistent card-based design** across all Admin tabs
- **Redesigned Admin page** with modern tabbed interface
- Boxed styling with hover effects for all settings
- Improved visual hierarchy and spacing
- Optimized grouped settings (e.g., Site Navigation toggles)
- **Enhanced toast notifications** with modern styling
- **Better mobile support** with responsive breakpoints
- Modern, clean interface throughout the application

### Drag-and-Drop Configuration
- **Intuitive drag-and-drop sorting** for all configuration lists
- Replaces up/down arrow controls with drag handles
- Visual feedback during drag operations
- Immediate persistence to storage (JSON or SQLite)
- Supports: Components, Environments, Functions, Locations, Orgs, Projects/Apps/Services, Units/Depts, Custom Components

### API Versioning & Enhancements
- Support for API versioning (v1 and v2)
- Separate Swagger documentation for each version
- v1 endpoints remain stable; v2 enables future enhancements
- **Bulk operations support** for processing multiple naming requests
- **Improved error handling** with better error messages and validation
- **Extended filtering options** for querying configurations
- No breaking changes to existing v1 APIs

## 🔧 Improvements

### Dashboard & Home Page
- **New stats grid** showing counts for all enabled resource components
- **Featured Names Generated card** with gradient background
- **Custom Home Content editor** now properly initializes with saved content
- Better organization of quick start guide and feature descriptions

### Data Integrity
- Fixed ID reassignment issues during list reorders
- Corrected sort-order behavior when Enabled flag changes
- Added dedicated UpdateSortOrder APIs for reliable persistence
- Transactional SQLite saves with proper cache invalidation
- **Fixed component name matching** for ResourceOrg, ResourceProjAppSvc, and ResourceFunction

### Configuration Management
- **Backup and Restore** functionality for both JSON and SQLite
- **Individual component import/export** for granular configuration control
- **Pre-migration backup creation** before SQLite conversion
- Enhanced error handling and validation during imports

### Rendering Stability
- Improved Blazor component rendering with render-key strategy
- Better JavaScript handler initialization after DOM updates
- More reliable UI updates across all configuration sections
- **MarkdownEditor initialization** with proper async loading

### Performance
- **SQLite database option** for faster queries and better scalability
- **Improved caching** for Azure validation results
- Optimized component loading on dashboard
- Faster configuration page rendering

## 📋 Upgrade Notes

### Migration to v5.0.0
- **Review the [v5.0.0 Migration Guide](V5.0.0_MIGRATION_GUIDE.md)** for detailed upgrade instructions
- **Backup your configuration** before upgrading (use Admin → Configuration → Export)
- **Site restart required** after deployment and configuration restore
- Test in a development environment before upgrading production

### Storage Options
- **FileSystem/JSON** (default): Ensure write permissions to `repository/` and `settings/` folders
- **SQLite** (recommended for production): Use built-in migration tool in Admin → Configuration
- **Migration is optional** - file-based storage remains fully supported
- Backups recommended before migrating to SQLite

### Azure Validation (Optional)
- Enable in Admin → Site Settings → "Azure Tenant Name Validation"
- Configure authentication (Managed Identity recommended for Azure deployments)
- Set conflict resolution strategy based on your naming convention
- Test connection before saving configuration
- Requires appropriate Azure RBAC permissions (Reader role minimum)

### Dashboard Customization
- **Custom Home Content** can be configured in Admin → Customization tab
- Supports Markdown formatting for rich content
- **Custom logo** can be uploaded to personalize branding
- Changes take effect after application restart

### API Compatibility
- No breaking changes to v1 endpoints
- v2 endpoints are opt-in and experimental
- Swagger documentation available at `/swagger/index.html`

## 🐛 Bug Fixes
- Fixed configuration list ordering persistence issues
- Resolved Enabled flag affecting sort order
- Improved client/server data synchronization
- Fixed spacing inconsistencies in grouped UI elements
- **Fixed component name mismatches** preventing stats from displaying (ResourceOrg, ResourceProjAppSvc, ResourceFunction)
- **Fixed Custom Home Content** not loading in MarkdownEditor on Admin page
- **Fixed isCustomComponent detection** logic to properly identify custom vs. built-in components
- Resolved focus outline issues on modal dialogs
- Improved error handling in configuration import/export
- Fixed cache invalidation after configuration updates

## 📚 Documentation
For detailed feature guides, see:
- **[v5.0.0 Migration Guide](V5.0.0_MIGRATION_GUIDE.md)** - Complete upgrade instructions
- [Azure Validation Admin Guide](AZURE_VALIDATION_ADMIN_GUIDE.md) - Setup and configuration
- [Azure Validation API Guide](AZURE_VALIDATION_API_GUIDE.md) - API integration
- [Azure Validation Security Guide](AZURE_VALIDATION_SECURITY_GUIDE.md) - Security best practices
- [Backup and Restore Guide](BACKUP_RESTORE.md) - Configuration backup procedures

## 🎨 UI/UX Highlights
- **Modern design system** with consistent spacing, colors, and typography
- **Card-based layouts** for better content organization
- **Improved accessibility** with proper focus management
- **Enhanced mobile experience** with responsive breakpoints
- **Better visual feedback** with hover states and transitions
- **Cleaner navigation** with modern tab interface
- **Professional styling** throughout the application

## 🙏 Acknowledgements
Thanks to all contributors and testers who helped validate features, identify bugs, and improve the user experience.

---
**For issues or questions**, please open a GitHub issue in the repository.
Loading
Loading