Overview
I developed WebHub as a central administration platform for CCL Design's website, giving content editors a dedicated interface for maintaining translations, language-specific page routes and structured website content.
The application is built with ASP.NET Core MVC, C# and Razor, with Entity Framework Core handling access to a SQL Server database. It supports the existing ASP.NET Web Forms website while providing a foundation for the site's migration to ASP.NET Core.
Translation management forms the core of the platform. The wider development scope also includes bringing vacancy administration into WebHub, followed by SQL-backed news articles and people profiles managed through the same application.
The challenge
Website content was spread across separate language-specific pages and resource files, making updates repetitive and difficult to track. Editors needed a clearer way to find content, compare translations and maintain consistency across English, German, Spanish and Chinese.
The system also needed to connect readable content labels with the technical resource keys, page references and URL slugs used by the website. Changes had to work with the existing application while supporting a more maintainable architecture for future development.
A further challenge was designing the platform so that additional languages and content types could be introduced without rebuilding the translation system or creating separate administration tools for each area of the website.
Process
I designed a relational database structure covering languages, resource groups, translation keys, translated values, page routes and resource-generation history. Resource groups organise content by page or shared component, while translation keys identify individual headings, labels, messages and other editable values.
I implemented the data layer using Entity Framework Core, defining relationships and unique constraints to prevent duplicate resource names, duplicate keys within a group and conflicting language identifiers. Language records distinguish URL codes such as en and de from culture codes such as en-GB and de-DE.
I built Razor-based administration screens for creating, viewing and updating translation content, with search and filtering to help users locate the relevant page, resource group or key. This brings content editing into a browser-based workflow instead of requiring routine changes directly in source files.
I developed resource export functionality to generate RESX files for the existing Web Forms website, with generation history recorded in the database. The same centrally managed content also supports the Core website's database-driven translation approach.
I added page-route management to associate resource groups with language-specific URL slugs and the underlying website page references. This supplies the route information used by the website for translated navigation and language switching, alongside its canonical, hreflang and redirect handling.
I worked through configuration and integration issues across the application, including database-schema alignment, connection strings, Entity Framework queries, form submissions and resource-file handling. The aim was to make the administration workflow reliable within the existing SQL Server and IIS environment.
For vacancy management, the work includes adapting the existing recruitment administration functionality for WebHub, covering vacancy content, recruitment sites and publication status. This needs to remain compatible with the website's listing, detail and application workflows.
I also scoped the next stage of content management: multilingual news articles stored in SQL Server and edited within WebHub. The proposed editor supports categories, main images and vertically reorderable content blocks, including image-and-text sections and linked content cards.
The planned news and people modules will reuse the existing language records while storing translations against each individual article or profile. Content will be able to exist in a single language, with additional translations added independently and further languages supported through the shared language model.
Outcome
WebHub provides a central place to manage website translations and translated page routes, reducing the need to edit individual resource files manually and helping maintain consistency across the site's supported languages.
The resource export workflow connects the new administration platform with the existing Web Forms website, allowing content management to improve while the public site's technical migration progresses separately.
The application establishes a reusable foundation for broader website administration. Vacancy management is part of the platform's ongoing expansion, with news articles and people profiles planned as further SQL-backed modules.
The longer-term goal is to give editors a consistent interface for managing multilingual website content, recruitment information, news and people profiles, supported by a shared database structure and maintainable .NET application.
