Mohammad Ashour

Mohammad is a generalist software developer with over 15 years of experience writing code for startups, enterprises, and everything in between. These days, Mohammad writes and edits i18n tutorials for Phrase. He loves electronic music, design, gaming, and traveling.

  • Headless CMS Localization with Phrase Strings and Contentful

    Headless CMS Localization with Phrase Strings and Contentful

    Looking into ways to integrate translations with your Contentful data? Learn how to localize content at scale with Phrase and Contentful.

    Read more

  • How to Format the hh:mm:ss Separators of a TimeSpan in a Culture-Aware Manner

    How to Format the hh:mm:ss Separators of a TimeSpan in a Culture-Aware Manner

    .NET only has limited options with its TimeSpan.toString() method. Here’s how to work around it and convert a timespan to a locale-aware string.

    Read more

  • A Guide to React Localization with i18next

    A Guide to React Localization with i18next

    React-i18next is a powerful set of components, hooks, and plugins that sit on top of i18next. Phrase software developer Mohammad Ashour, teaches you how to use it to internationalize your…

    Read more

  • Upgraded Resource Strings in ASP.NET MVC i18n

    Upgraded Resource Strings in ASP.NET MVC i18n

    .NET resource strings gives the bare minimum for i18n. This tutorial builds on that with interpolation, HTML in messages, and plurals.

    Read more

  • A Step-by-Step Guide to Svelte Localization

    A Step-by-Step Guide to Svelte Localization

    Still quite new but powerful, the Svelte framework has found a solid niche for itself. Here’s how to implement Svelte localization!

    Read more

  • How Do I Convert a Decimal to a String with Thousands Separators?

    How Do I Convert a Decimal to a String with Thousands Separators?

    When converting codebase numbers into locale-aware strings, we often need to take care of thousands separators. Here’s how to get it done easily.

    Read more

  • Net internationalization: Getting Started With ASP.NET MVC i18n

    Net internationalization: Getting Started With ASP.NET MVC i18n

    Let’s walk you through the foundational steps of ASP.NET MVC i18n to get your app ready for localization and serve it in different languages.

    Read more

  • How Do I Set Culture in an ASP.NET MVC App?

    How Do I Set Culture in an ASP.NET MVC App?

    There are quite a few ways of setting active culture in an ASP.NET MVC app. We discuss the most viable ones in our beginner guide.

    Read more

  • CSS Localization

    CSS Localization

    CSS is surprisingly important when it comes to site localization. Let’s take a look at some ways of providing a delightful localized UX.

    Read more