blocknetdx / blockdx-website

Source code for the Block DX website: https://blockdx.com
MIT License
1 stars 6 forks source link

Block DX Website

This repository contains the source code for Blocknet's Block DX website.

Powered by Jekyll.

Block DX Github Join Our Discord

Getting Started

Using Linux or MacOS:

  1. Install dependencies: bundle install
  2. Update dependencies: bundle update
  3. Start local server: bundle exec jekyll serve

You can now see the docs at http://localhost:4400. This will reload automatically when changes are saved.

Editing

Translating

Follow these steps if you'd like to contribute to translating the website to another language. If you are not familiar with how to create a PR, put the translations in a Google Doc and reach out to @hanniabu on Discord with the link. Also feel free to reach out for clarifications on these instructions. Collaborations are encouraged to help cross check the translations! For any questions or clarifications with translating, reach out to @hanniabu.

  1. Create a YAML language file in the source/_i18n/ directory for the language you want to translate the site into. The files should be named after the language abbreviation. For example with French, it would be source/_i18n/fr.yml.
  2. Copy the contents of source/_i18n/en.yml into this new file and begin translating. For those unfamiliar with YAML, each line starts with a key, followed by a colon delimiter, and then the associated text for that key. For example in lang: English, lang is the key and English is the test you'd actually want to translate. For French the translated line would become lang: Français. The top level keys (non-indented keys), for example nav:, are used for context. So with nav:, all the keys/text underneath it (up to the next top level key) is pertaining to the navigation menu.
  3. Skip any line that specifies # Do not translate (a # signifies a comment).
  4. Special case examples:
    • For links, maintain the slashes.
      • Original: link_fees: 'fees/'
      • Translated: `link_fees: 'frais/'
    • For Markdown, maintain the special characters.
      • Original: Many exchanges *claim* to be __decentralized__
      • Translated: `Beaucoup d'échanges prétendent être décentralisés'
    • For Markdown links, ONLY translate what's between the [ ] brackets.
      • Original: [Fees]({{ lang.global.link_fees }})
      • Translated: `[Frais]({{ lang.global.link_fees }})'
    • For Liquid syntax, DO NOT translate anything.
      • Original: {{ site.exlink_docs }}
      • Translated: `{{ site.exlink_docs }}'
  5. If the translations for the entire site are complete:
    1. Edit _config.yml and enable your language by adding it to the languages array (line ~28): languages: ["en"]. For example if you completed translation for French, it would become languages: ["en", "fr"]. The language abbreviation must match that used for the translation file, in this case source/_i18n/fr.yml.
    2. Add the language option to the nav menu dropdown in source/_includes/nav.html (line ~50).

Publishing

  1. Run HTMLProofer to check links: bundle exec htmlproofer ./build
  2. Make sure url: in _config.yml is correct (not the staging URL).
  3. Build the docs with the bundle exec jekyll build command.
  4. Deploy build/ contents to staging site for testing.
  5. Deploy build/ contents to https://blockdx.com/.