diff --git a/content/internal.html b/content/internal.html index eefe730..cf5ea0c 100644 --- a/content/internal.html +++ b/content/internal.html @@ -54,9 +54,9 @@
Use the right voice for the right
  • -

    expand_more - Translation Memories

    +

    expand_more + Localization & Internationalization

  • diff --git a/content/internal.js b/content/internal.js index 11c64ef..b9f82d1 100644 --- a/content/internal.js +++ b/content/internal.js @@ -49,10 +49,10 @@ function handleInternal() { //Determines which content should be displayed in th document.getElementById("main-frame").src = "./loc_admin_review_logs/Admin String Standardization - PT/VTEXAdminstringstandardizationinPortuguese.html"; expandItem("reviewLogs"); } - else if (currentUrl.includes("translationMemories")) { - displayTranslationMemoriesHeader(); //Changes the header to match the selected section/card. - document.getElementById("main-frame").src = "./translation_memory/translation_memory.html"; - expandItem("translationMemories"); + else if (currentUrl.includes("namingGuidelines")) { + displayL10nAndI18nHeader(); //Changes the header to match the selected section/card. + document.getElementById("main-frame").src = "./localization_and_internationalization/naming_guidelines.html"; + expandItem("namingGuidelines"); } } @@ -73,11 +73,11 @@ function displayReviewLogsHeader() { //Changes the header and subheader to match headerSubtext.innerText = "Check out the linguistic evolution of UI strings towards a native and consistent experience."; } -function displayTranslationMemoriesHeader() { //Changes the header and subheader to match the selected card/section. +function displayL10nAndI18nHeader() { //Changes the header and subheader to match the selected card/section. let headerText = document.getElementById("header-text"); - headerText.innerText = "Translation Memories"; + headerText.innerText = "Localization & Internationalization"; let headerSubtext = document.getElementById("header-subtext"); - headerSubtext.innerText = "Seen that phrase before? Dig through our translation memory to recover it, or to simply get inspiration if you’re writing in another language."; + headerSubtext.innerText = "Create a product that is ready for a global audience by following localization and internationalization best practices."; } function expandItem(id) { //Determines which menu subsection should be open on load depending on the selected card. @@ -90,8 +90,8 @@ function expandItem(id) { //Determines which menu subsection should be open on l else if (id == "glossaries") { expandGlossaries(); } - else if (id == "translationMemories") { - expandTranslationMemories() + else if (id == "namingGuidelines") { + expandL10nAndI18nMemories() } } @@ -104,7 +104,7 @@ function expandStyleGuides() { collapseStyleGuides(); } else { collapseGlossaries(); - collapseTranslationMemories(); + collapseL10nAndI18n(); collapseReviewLogs(); icon.textContent = "expand_less"; @@ -190,7 +190,7 @@ function expandGlossaries() { collapseGlossaries(); } else { collapseStyleGuides(); - collapseTranslationMemories(); + collapseL10nAndI18n(); collapseReviewLogs(); button.textContent = "expand_less"; list = document.createElement("ul"); @@ -246,13 +246,13 @@ function collapseGlossaries() { } } -function expandTranslationMemories() { - let item = document.getElementById("translationMemories"); +function expandL10nAndI18nMemories() { + let item = document.getElementById("namingGuidelines"); let list = item.querySelector("ul"); - let button = document.querySelector("#collapseTranslationMemories"); + let button = document.querySelector("#collapseL10nAndI18n"); if (list) { - collapseTranslationMemories(); // Call the new collapseTranslationMemories function + collapseL10nAndI18n(); // Call the new collapseTranslationMemories function } else { collapseStyleGuides(); collapseGlossaries(); @@ -261,7 +261,7 @@ function expandTranslationMemories() { list = document.createElement("ul"); let items = [ - { id: "translationMemories", text: "Localization", link: "./internal.html?id=translationMemories" } + { id: "namingGuidelines", text: "Naming Guidelines", link: "./internal.html?id=namingGuidelines" } ]; const currentPageHref = window.location.href; @@ -300,10 +300,10 @@ function expandTranslationMemories() { } } -function collapseTranslationMemories() { - let item = document.getElementById("translationMemories"); +function collapseL10nAndI18n() { + let item = document.getElementById("namingGuidelines"); let list = item.querySelector("ul"); - let button = document.querySelector("#collapseTranslationMemories"); + let button = document.querySelector("#collapseL10nAndI18n"); if (list) { item.removeChild(list); @@ -321,7 +321,7 @@ function expandReviewLogs() { } else { collapseStyleGuides(); collapseGlossaries(); - collapseTranslationMemories(); + collapseL10nAndI18n(); button.textContent = "expand_less"; list = document.createElement("ul"); diff --git a/content/loc_admin_review_logs/Admin String Standardization - EN/VTEXAdminstringstandardizationinEnglish.html b/content/loc_admin_review_logs/Admin String Standardization - EN/VTEXAdminstringstandardizationinEnglish.html index 988267b..46ceaf4 100644 --- a/content/loc_admin_review_logs/Admin String Standardization - EN/VTEXAdminstringstandardizationinEnglish.html +++ b/content/loc_admin_review_logs/Admin String Standardization - EN/VTEXAdminstringstandardizationinEnglish.html @@ -207,25 +207,25 @@

    Lexical preferences

  • “Complement” as an address field, which is a false cognate from PT, was changed to additional information.
  • - + \ No newline at end of file diff --git a/content/localization_and_internationalization/naming_guidelines.html b/content/localization_and_internationalization/naming_guidelines.html new file mode 100644 index 0000000..bd283b2 --- /dev/null +++ b/content/localization_and_internationalization/naming_guidelines.html @@ -0,0 +1,248 @@ + + + + + + + VTEX Naming Guidelines + + +
    +

    VTEX Naming Guidelines

    +

    Objective

    +

    Establish a clear, consistent, and meaningful naming strategy for VTEX products, features, and projects to enhance brand identity, customer understanding, and market positioning. This strategy aims to ensure that names are descriptive, practical, and aligned with industry standards, making them easy to spell, pronounce, and remember.

    +

    By implementing these guidelines, VTEX will create a cohesive naming convention that facilitates communication, supports marketing efforts, and strengthens the overall VTEX brand in the global marketplace.

    +

    Why have a naming process?

    +

    Consistency: Ensures all names align with the brand's identity and values, creating a unified image.

    +

    Clarity: Helps customers easily understand what each product, feature, or module does, reducing confusion.

    +

    Professionalism: Demonstrates a well-organized and thoughtful approach, enhancing the company's reputation.

    +

    Market Positioning: Differentiates VTEX products from competitors and clearly communicates their unique value.

    +

    Global Relevance: Ensures names are appropriate and understandable across different languages and cultures.

    +

    Efficiency: Streamlines the naming process, saving time and resources by providing clear guidelines and reducing the need for ad-hoc decisions.

    +

    Marketing and SEO: Improves searchability and marketing effectiveness by using names that are easy to find and understand online.

    + +

    When does this process apply?

    + + +

    When to run the naming process?

    +

    The sooner, the better. Ideally, run this process at least 2 months before rolling out to closed beta.

    + +

    General guidelines

    +

    Names must be:

    +

    Meaningful: Conveys relevant meaning and fits within the industry; use terms that are commonly used and easily recognizable by merchants.

    +

    Unique: Differentiates from competitors and is not too generic.

    +

    Memorable: Easy to remember and recognize.

    +

    Easy to Spell: Should be spelled as it is pronounced.

    +

    Easy to Pronounce: Should be pronounced as it is spelled.

    +

    Brief: Limited to one or two words, max of three, or a compound word.

    +

    Weighty: Conveys strength and importance.

    +

    Global Relevance: Ensure names are easy to understand in different languages and cultures.

    +

    SEO Friendly: Names should be searchable and rankable.

    +

    Word Choice: Opt for words with positive connotations and impact to ensure memorable and engaging names.

    + +

    Specific guidelines

    +

    Versioning and Updates: Use semantic versioning for updates to existing features rather than renaming them. Add “(Beta)” for test pages and “(Legacy)” for outdated systems.

    +

    Translations: We use different translation strategies for products, modules, and features to ensure brand consistency and recognition across all markets.

    +

    Products: Keep in English.

    + +

    VTEX Admin Modules: Translated.

    + +

    Permission Roles: Not translated.

    + +

    Features: Translated.

    + +

    Apps: Some are translated, some are not.

    + +

    Capitalization: Capitalization rules differ by language. Use title case for titles in English, and sentence case in Portuguese and Spanish. For more details, see our style guides or contact the Localization team.

    +

    Character Limit:

    + + +

    What to avoid

    + + +

    Naming examples

    +

    VTEX Product Names (examples):

    + +

    VTEX Module Names (examples):

    + +

    VTEX Feature Names (examples):

    + + +

    Process to follow when defining a name

    +
      +
    1. Fill a Workflow
    2. +
        +
      • Fill out the product-naming workflow in the #terminology Slack group to ensure all relevant teams are informed, aligned, and participating in the naming process.
      • +
          +
        • Key drivers/contributors: PMs
        • +
        +
      +
    3. Necessity Check:
    4. +
        +
      • Determine if a new name is truly necessary. Evaluate if an existing name can be adapted or if the new feature/module/product can fit under an existing naming convention.
      • +
          +
        • Key drivers/contributors: PMs and PMMs working collaboratively to determine the necessity of a new name and evaluate existing naming conventions.
        • +
        +
      +
    5. Research and Validation:
    6. +
        +
      • Begin documenting the step-by-step process for defining the name;
      • +
      • Analyze how competitors name similar products and features;
      • +
      • Check if customer interviews have been conducted for insights on how they refer to the feature or product. If not, consider conducting one.
      • +
          +
        • Key drivers/contributors: PMMs, PMs and Product Designers
        • +
            +
          1. PMM: Begin documenting, lead competitor analysis and provide market insights relevant to naming;
          2. +
          3. PM and PD: Ensure customer interviews are conducted and identify gaps for additional insights
          4. +
          +
        +
      +
    7. Generate Name Ideas:
    8. +
        +
      • Create an exhaustive list of potential names;
      • +
      • Evaluate each name against the guidelines (meaningful, unique, memorable, etc.);
      • +
      • Conduct a comprehensive trademark search to ensure the proposed name isn’t already in use or registered by another entity;
      • +
      • Ensure the names align with VTEX’s overall company strategy, product portfolio, and brand architecture.
      • +
          +
        • Key drivers/contributors: PMs, PMMs, Education and Localization
        • +
            +
          1. PM & PMM: Generate an exhaustive list of potential names.
          2. +
          3. PMM: Conduct a comprehensive trademark search.
          4. +
          5. Education and Localization: Provide feedback on name clarity and cultural appropriateness.
          6. +
          +
        +
      +
    9. Team Discussion:
    10. +
        +
      • Validate names with localization and product marketing teams to ensure they are suitable across different languages and markets;
      • +
      • Collect feedback and refine the list based on input.
      • +
          +
        • Key drivers/contributors: Localization, PMMs and PM
        • +
            +
          1. Localization: Validate names for suitability across different languages and markets.
          2. +
          3. PMM & PM: Refine the name list based on feedback.
          4. +
          +
        +
      +
    11. Testing:
    12. +
        +
      • Consider testing a shortlist of names with sponsor clients, friendly customers, related internal teams, and business partners;
      • +
      • Document responses, likes, and dislikes to gather insights.
      • +
          +
        • Key drivers/contributors: PMMs and Product Designers
        • +
            +
          1. PMMs & PD: Test a shortlist of names with sponsor clients, friendly customers, related internal teams, and business partners and gather insights.
          2. +
          +
        +
      +
    13. Final Decision:
    14. +
        +
      • Review the feedback and finalize the name that best fits the criteria;
      • +
      • Validate the chosen name with Alexandre Gusmão and Natalia Costa.
      • +
          +
        • Key drivers/contributors: PMs and PMMs collaborate in finalizing the name that best fits the criteria, and validate it with Leadership.
        • +
        +
      +
    15. Implementation:
    16. +
        +
      • Complete the step-by-step process document and communicate the chosen name;
      • +
      • Socialize it with stakeholders in product, marketing, sales, solution engineering, and customer success;
      • +
      • Ensure all marketing materials, product documentation, and internal communications use the new name consistently.
      • +
          +
        • Key drivers/contributors: PMMs, PMs, Education, and Localization
        • +
            +
          1. PMMs: Complete the step-by-step process document, communicate the chosen name;
          2. +
          3. PMMs, PMs, Education, and Localization: Collaborate on socializing the name as well as ensure the consistency usage of it.
          4. +
          +
        +
      +
    + +

    Seek assistance if needed

    +

    If doubts persist after following the process, consult with the Product Marketing team for additional guidance and final decision-making support.

    + + +
    + + \ No newline at end of file diff --git a/content/style_guides.html b/content/style_guides.html index 1fc6aba..e25340d 100644 --- a/content/style_guides.html +++ b/content/style_guides.html @@ -48,10 +48,10 @@
  • -

    expand_more - Translation Memories

    + id="collapseL10nAndI18n">expand_more + Localization & Internationalization

  • diff --git a/content/translation_memory/translation_memory.html b/content/translation_memory/translation_memory.html deleted file mode 100644 index 0d9dfe7..0000000 --- a/content/translation_memory/translation_memory.html +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - Product Localization Translation Memory - - -
    -

    Product Localization Translation Memory

    -
    -

    A translation memory (TM) is a repository or database that contains translated source and target language pairs. It reduces translation time and cost by reusing translated content from the repository in computer-aided translation (CAT) tools where human translators can see full or partial matches for sentences in the translation editor.

    -

    Check our Translation memory spreadsheet here

    -
    -
    - - \ No newline at end of file diff --git a/index.html b/index.html index 139c59d..4c18535 100644 --- a/index.html +++ b/index.html @@ -48,17 +48,17 @@
    Glossaries
    -
    - -
    - translate -
    -
    -
    Translation Memories
    -

    Seen that phrase before? Dig through our translation memory to recover it, or to simply get - inspiration if you’re writing in another language.

    +
    + +
    + language +
    +
    +
    Localization & Internationalization
    +

    Create a product that is ready for a global audience by following + localization and internationalization best practices.

    +
    -
    @@ -99,17 +99,19 @@
    FastStore
    -
    - -
    - ungroup +
    + +
    + ungroup +
    +
    +
    Translation Memories
    +

    Seen that phrase before? Dig through our translation memory to recover it, or to simply get + inspiration if you’re writing in another language.

    +
    -
    -
    Localization & Internationalization
    -

    Create a product that is ready for a global audience by following - localization and internationalization best practices.

    -
    -
    + +
    diff --git a/styles/content.css b/styles/content.css index ef3e8a8..c101db0 100644 --- a/styles/content.css +++ b/styles/content.css @@ -97,6 +97,10 @@ h5 { font-size: var(--fs-3); } +.half-spacing { + padding-top: 1.5rem; +} + .spacing { padding-top: 3rem; }