Commit 983cc334 authored by Diego Salazar's avatar Diego Salazar

Finished multi-lingual implementation

- Updated README to accomodate for changes
- Updated footer and roadmap for multi-lingual readiness
- Updated yml files for an 'untranslated' string
- Added an 'untranslated' snippet to all untranslated files
- Added a 'template' language for new languages to be made easily
- Added link to Monerujo site to Downloads page
- CSS updates
parent f833244f
......@@ -2,6 +2,9 @@
Copyright (c) 2014-2018, The Monero Project
## IMPORTANT MULTILANGUAGE UPDATE NOTICE
The multilingual update has recently been rolled out. The website now requires more steps to update so everyone can have a smooth experience. Please read all instructions carefully and follow them all! If they are not all followed, this leads to a ton of work for the website maintainers. A warning will be issued to repeat offenders.
## Table of Contents
1.0 Introduction
......@@ -28,11 +31,15 @@ Copyright (c) 2014-2018, The Monero Project
12.0 How to add a question to the FAQ
13.0 License
13.0 How to translate a page
14.0 How to add a new language
15.0 License
## 1.0 Introduction
This README here to walk you through everything you need to know to make changes, edits, or even completely new pages for the new [getmonero.org website](https://getmonero.org/). It'll definitely be a bit of a ride, so strap yourself in. Please note that translations are not available yet, but when they are added, this document will be updated with instructions on how to translate the content of [getmonero.org website](https://getmonero.org/). In the meantime, any help translating this document into another language is greatly appreciated.
This README here to walk you through everything you need to know to make changes, edits, or even completely new pages for the new [getmonero.org website](https://getmonero.org/). It'll definitely be a bit of a ride, so strap yourself in.
Feel free to skip down to a relevant section if you already know what you need. So to go to the 'How to make a User Guide' section use your find function and type '5.0'.
......@@ -71,10 +78,16 @@ Every section from here on out will talk about how to make a specific type of we
A few random points of note:
- All external links must have http:// or https:// in front of them or they will not redirect properly.
- If you want to add a new page to the navigation, you should note that there are two menus in `header.html`. One for mobile and one for desktop. Your page must be added in the appropriate place in BOTH navigations.
- If you want to add a new page to the navigation, you should go to ALL LANGUAGES in the `_data/lang` folder including `template` and add the page.
- It is strongly strongly STRONGLY encouraged that you if you make a change, you - at the minimum - test it on your local machine before submitting a PR. Sometimes unexpected things may happen due to a change. If you change a page, check the whole page on multiple screen sizes and browsers to make sure there wasn't any collateral damage.
### 3.1 Housekeeping
#### Editing the Site
When you make an edit to ANY page on the English language of this website, PLEASE copy your changes into the corresponding `/_i18n/template/` file as well.
The Monero Translation workgroup will do their best to keep tabs on all changes of the site, but it'd be nice to notify them that you've changed a page so they can make sure the equivalent pages are changed accordingly in the other languages.
#### GitHub Issues
We ask that if you open an issue on the site that you remain available for clarifying questions or corrections. We do our best to close issues that are resolved when we make changes to the site, but If your issue is resolved by a contributer and the issue is not closed we ask that you close it in a timely manner. A contributer (rehrar, SamsungGalaxyPlayer, or other community members, etc) may ask you to close an issue after it's confirmed fixed. Please review the changes to the site and close your issue if you can verify that it's fixed.
......@@ -119,42 +132,63 @@ You're all done. Submit a PR and wait for it to be reviewed and merged. Be sure
### 5.1 Quick Start
* Make file in /resources/user-guides with an .md ending and no spaces in filename.
* Front Matter as in 5.3
* Create file in /resources/user-guides with an .md ending and no spaces in filename.
* File content as in 5.3
* Create file in /_i18n/en/resources/user-guides with the exact same filename as above ending in .md
* Write User Guide
* Add guide using markdown in the correct category in /resources/user-guides/index.md being careful not to mess with any indentation
* Copy User Guide file to ALL LANGUAGES in /_i18n/[ALL LANGUAGES]/resources/user-guides
* Paste `{% include untranslated.html %}` into the top of each language version of your User Guide, except the original language
* Add guide using markdown in the correct category in ALL LANGUAGES to /_i18n/[ALL LANGUAGES]/resources/user-guides/index.md being careful not to mess with any indentation
* Test/Build
* Submit PR
### 5.2 Make a file
Navigate to the /resources/user-guides folder and make a new file. Be sure the file name has no spaces and the ending is .md
### 5.3 Front Matter
### 5.3 Content of file
```
---
layout: static_page
layout: user-guide
title: TITLE OF YOUR USER GUIDE
permalink: /resources/user-guides/NAME-OF-FILE-GOES-HERE.html
---
{% tf resources/user-guides/NAME-OF-FILE-GOES-HERE.md %}
```
### 5.4 Write
Copy this exactly and merely change the files names where indicated.
### 5.4 Create file in localization folders
Navigate to the /i18n/ folder and choose the correct folder for your language. Navigate further into the `resources/user-guides` folders and make a .md file with the EXACT SAME filename as the you made before.
### 5.5 Write
Write your user guide. Be succinct but thorough. Remember, people will be using your guides when they need help. Make sure all the information is there. Feel free to use images or screenshots if necessary to help get your point across.
### 5.5 Add Guide to the 'User Guide' landing page
In the /resources/user-guides folder, find the file labeled index.md and open it.
The title should be at the top of the User Guide using a single `#` for an H1 tag. Titles will not be automatically put on these pages as with other pages. There should be NO front matter on this file.
### 5.5 Copy User Guide file into all languages
Copy your file and navigate to each language file in the /i18n folder. In each language folder (INCLUDING template) go to the resources/user-guides folder and paste your user guide (don't worry, you don't have to translate it) there. This is very important, and the site will not build if the file with the same name is not in each language folder.
As you paste into each folder, open up the file and paste the following snippet at the top of the file (before your title):
`{% include untranslated.html %}`. This does not need to be done in the original language that the User Guide was written in.
### 5.6 Add Guide to the 'User Guide' landing page of EACH LANGUAGE
In the /_i18n/[ORIGINAL LANGUAGE OF USER GUIDE]/resources/user-guides folder, find the file labeled index.md and open it.
DO NOT CHANGE ANYTHING IN THIS DOCUMENT BESIDES WHAT YOU ARE INSTRUCTED TO.
This file will look quite different because it's HTML. Don't panic. Simply Ctrl + F (i.e. the find feature) and search for the category that you want to put your User Guide in. You will see there are some sections that are not indented like the others. They are flush with the left side of the screen. **Do not change the indentation.** You can put markdown in these areas.
Once you've identified the non-indented area under the category you would like your User Guide to be under, you can use markdown to insert your link underneath the others. `[TITLE OF USER GUIDE](LINK-TO-USER-GUIDE.html)`. Please note that the file name in between the parentheses must be EXACTLY the same name as the file name you made in step 5.2, but with a `.html` at the end instead of `.md`.
Once you've identified the non-indented area under the category you would like your User Guide to be under, you can use markdown to insert your link underneath the others. `[TITLE OF USER GUIDE]({{site.baseurl}}/LINK-TO-USER-GUIDE.html)`. Please note that the file name in between the parentheses must be EXACTLY the same name as the permalink you made in step 5.3, but with a `.html` at the end instead of `.md` and the snippet `{{site.baseurl}}/` before the link.
In the event that you think your User Guide should be in a new Category that doesn't exist yet, contact rehrar to make one for you.
### 5.6 Build/Test
Repeat the above process for each language version of this index page INCLUDING THE template.
### 5.7 Build/Test
Build your website using `jekyll serve` if it's not rebuilding automatically and test that your link appears in the correct category and that it leads to your User Guide when clicked. Test your User Guide in the browser and contact rehrar if there are any bugs.
### 5.7 Submit Pull Request
### 5.8 Submit Pull Request
You're all done. Submit a PR and wait for it to be reviewed and merged. Be sure to make any changes if requested.
## 6.0 How to make a Moneropedia Entry
......@@ -422,7 +456,66 @@ Build your website using `jekyll serve` if it's not rebuilding automatically. If
### 12.3 Submit a Pull Request
You're all done. Submit a PR and wait for it to be reviewed and merged. Be sure to make any changes if requested.
## 13.0 Website License
## 13.0 How to translate a page
### 13.1 Quickstart
* Navigate to the correct language in the /i18n folder and find the page you wish to translate
* Click the file and translate the page, not touching any HTML or markdown.
* Remove `{% include untranslated.html %}` from the page
* Test/Build
* Submit PR
### 13.2 Naviate to correct file
Go to the /i18n folder and find the two letter code for the language you wish to translate for. Enter that folder and find the file you wish to translate. The filenames are all in English and MUST NOT BE CHANGED.
### 13.3 Translate the file
Here you can do your translation. Depending on the page, you may have to maneuver around some HTML or markdown. In general, anything between two tags (such as `<p>TRANSLATE THIS</p>`) should be fine. Testing is VERY important, so do NOT skip step 13.4. If during testing, the page appears different from the original English page (besides the translated text of course), you did something wrong and may have to start again.
### 13.4 Remove the 'untranslated' snippet
Somewhere on the page (usually the top) should be a snippet that says `{% include untranslated.html %}`. Simply delete this completely from the file. This will remove the orange bar from the bottom saying the page is untranslated.
### 13.5 Build/Test
Build your website using `jekyll serve` if it's not rebuilding automatically.
If the build is successful, go to the correct page in the correct language and check to see that everything is translated, and that the page looks identical to the original English page (besides the translated text). Test the page and let rehrar know if there are any bugs.
### 13.6 Submit a Pull Request
You're all done. Submit a PR and wait for it to be reviewed and merged. Be sure to make any changes if requested.
## 14.0 How to add a new language
Whoo boy, this is the big one. Please follow all directions exactly.
### 14.1 _config.yml file
Navigate to the root folder of the whole website and find the file labeled `_config.yml`. Open it and find the line that says `languages:`. Add your two letter language code (Google it if you don't know it) in between the brackets after the others already present. You will need to put a comma after the previous last one.
Example:
```
languages: ["en", "es", "NEW LANG HERE"]
```
Save and exit the file.
### 14.2 _data folder
Navigate to the `_data/lang` folder and copy the `template` folder. Paste it into the same folder and the copy renamed to the two letter language code of the language you will be translated to.
**The template folder itself should still be there. It should not be renamed. There should be a new folder in addition to the ones that were already there.**
Translate the content of the files. Do not touch anything labeled `url`, and in the roadmap.yml ONLY translate the `name:` content.
### 14.3 _i18n folder
Navigate to the _i18n folder and duplicate the template.yml file. Rename the duplicate to the two letter language code of your language with a `.yml` at the end. Repeat this process with the `template` folder as well.
**The template folder and yml file themselves should still be there. They should not be renamed. There should be a new folder and yml file in addition to the ones that were already there.**
Enter the .yml file and translate everything there.
### 14.3 Translate
If you will be translating the content, please refer to section 13.0 in this README for instructions on translating pages.
### 14.4 Build/Test
Build your website using `jekyll serve`. If the build is successful, navigate to any page on the site and check to make sure that your language is appearing in the dropdown for languages on both mobile and desktop.
### 14.5 Submit a Pull Request
You're all done. Submit a PR and wait for it to be reviewed and merged. Be sure to make any changes if requested.
## 15.0 Website License
Copyright (c) 2014-2017, The Monero Project
......
......@@ -51,4 +51,4 @@
- page: Guías de desarrolladores
url: resources/developer-guides
- page: Especificaciones técnicas
url: resources/technical-specs
\ No newline at end of file
url: technical-specs
\ No newline at end of file
- year: 2014
accomplishments:
- name: Launched Boi!!!
- name: Launched on Bitcointalk
date: 2014-04-18
status: completed
- name: Renamed from Bitmonero to Monero
......
- title: Resources
subfolderitems:
- name: About Monero
url: resources/about/
- name: Moneropedia
url: resources/moneropedia/
- name: Developer Guides
url: resources/developer-guides/
- name: User Guides
url: resources/user-guides/
- name: RSS Feed
url: https://getmonero.org/feed.xml
- title: IRC Channels
subfolderitems:
- name: monero
url: irc://chat.freenode.net/#monero
- name: monero-dev
url: irc://chat.freenode.net/#monero-dev
- name: monero-markets
url: irc://chat.freenode.net/#monero-markets
- name: monero-pools
url: irc://chat.freenode.net/#monero-pools
- name: monero-community
url: irc://chat.freenode.net/#monero-community
- name: monero-translations
url: irc://chat.freenode.net/#monero-translations
- name: monero-hardware
url: irc://chat.freenode.net/#monero-hardware
- title: Community
subfolderitems:
- name: Reddit
url: https://reddit.com/r/monero
- name: Stack Exchange
url: https://monero.stackexchange.com/
- name: BitcoinTalk Thread
url: https://bitcointalk.org/index.php?topic=583449.0
- name: Mattermost Chat
url: https://mattermost.getmonero.org/
- name: Telegram Chat
url: https://telegram.me/bitmonero
- title: The Monero Project
subfolderitems:
- name: Open Alias
url: https://openalias.org/
- name: Kovri
url: https://getkovri.org/
- name: Monero Research Lab
url: resources/research-lab/
- name: Monero Press Kit
url: press-kit
\ No newline at end of file
- name: Legal
url: legal
- name: Source Code
url: https://github.com/monero-project
- name: Technical Specs
url: technical-specs/
\ No newline at end of file
- title: Get Started
subfolderitems:
- page: What is Monero?
url: get-started/what-is-monero
- page: Using
url: get-started/using
- page: Accepting
url: get-started/accepting
- page: Contributing
url: get-started/contributing
- page: Mining
url: get-started/mining
- page: FAQ
url: get-started/faq
- title: Downloads
url: downloads/
- title: Recent News
subfolderitems:
- page: All Posts
url: blog
- page: Missives
url: blog/tags/monero%20missives.html
- page: Meeting Logs
url: blog/tags/dev%20diaries.html
- page: Releases
url: blog/tags/releases.html
- title: Community
subfolderitems:
- page: Team
url: community/team
- page: Hangouts
url: community/hangouts
- page: Events
url: community/events
- page: Sponsorships
url: community/sponsorships
- page: Merchants
url: community/merchants
- title: Resources
subfolderitems:
- page: About
url: resources/about
- page: Roadmap
url: resources/roadmap
- page: Research Lab
url: resources/research-lab
- page: Moneropedia
url: resources/moneropedia
- page: User Guides
url: resources/user-guides
- page: Developer Guides
url: resources/developer-guides
- page: Technical Specs
url: technical-specs
\ No newline at end of file
- year: 2014
accomplishments:
- name: Launched on Bitcointalk
date: 2014-04-18
status: completed
- name: Renamed from Bitmonero to Monero
date: 2014-04-23
status: completed
- name: Recovered from a spam attack
date: 2014-09-04
status: completed
- name: Monero Research Lab Papers 1 and 2 published
date: 2014-09-12
status: completed
- name: Monero Research Lab Paper 3 published
date: 2014-09-25
status: completed
- name: 0.8.8.6 released
date: 2014-12-08
status: completed
- year: 2015
accomplishments:
- name: Monero Research Lab Paper 4 published
date: 2015-01-26
status: completed
- year: 2016
accomplishments:
- name: 0.9.0 Hydrogen Helix released
date: 2016-01-01
status: completed
- name: Monero Research Lab Paper 5 published
date: 2016-02-10
status: completed
- name: Hardfork to require minimum ringsize of 3 on all transactions
date: 2016-03-22
status: completed
- name: 0.10.0 Wolfram Warptangent released
date: 2016-09-18
status: completed
- name: Hardfork to split coinbase into denominations
date: 2016-09-21
status: completed
- name: 0.10.1 Wolfram Warptangent released
date: 2016-12-14
status: completed
- name: Official GUI Beta 1 released
date: 2016-12-22
status: completed
- year: 2017
accomplishments:
- name: Hardfork to enable RingCT transactions
date: 2017-01-05
status: completed
- name: 0.10.2 released; critical vulnerability patched
date: 2017-02-22
status: completed
- name: 0.10.3.1 Wolfram Warptangent released
date: 2017-03-27
status: completed
- name: Hardfork to adjust minimum blocksize and dynamic fee algorithm
date: 2017-04-15
status: completed
- name: Website redesigned
date: 2017-07-04
status: completed
- name: 0.11.0.0 Helium Hydra released
date: 2017-09-07
status: completed
- name: Fluffy blocks
date: 2017-09-07
status: completed
- name: GUI out of beta
date: 2017-09-10
status: completed
- name: Hardfork to increase minimum ringsize to 5 and require RingCT transactions
date: 2017-09-15
status: completed
- name: 0MQ/ZeroMQ
date: September, 2017
status: completed
- name: Fluffy blocks
date:
status: ongoing
- name: GUI port to android
date:
status: ongoing
- name: Forum Funding System redesign
date:
status: ongoing
- name: Subaddresses
date:
status: ongoing
- name: Multi-signatures (multisig)
date:
status: ongoing
- name: Kovri alpha release
date:
status: upcoming
- year: 2018
accomplishments:
- name: Additional MRL research papers
date:
status: upcoming
- name: Second-layer solutions for speed and scalability
date:
status: upcoming
- name: More efficient range proofs for RingCT to reduce transaction sizes
date:
status: upcoming
......@@ -18,6 +18,7 @@ global:
privacy: Privacy
copyright: Copyright
edit: Edit This Page
untranslated: This page is not yet translated. If you would like to help translate it, please see the
titles:
index: Home
whatismonero: What is Monero (XMR)?
......
......@@ -83,9 +83,12 @@ If you'd prefer to use a blockchain bootstrap, instead of syncing from scratch,
</div>
</div>
<div class="row center-xs">
<div class="col-xs-12">
<div class="col-xs-6">
<a href="https://mymonero.com"><img src="/img/mymonero.png" alt="MyMonero Logo"></a>
</div>
<div class="col-xs-6">
<a href="https://monerujo.io"><img style="height: 115px;" src="/img/Monerujo-wallet.png" alt="Monerujo Logo"></a>
</div>
</div>
......
......@@ -66,8 +66,14 @@
</div>
<div class="row center-xs">
<p><a href="https://github.com/fireice-uk/xmr-stak" target="_blank" rel="noreferrer noopener">XMR Stak</a></p>
</div>
<div class="row center-xs">
<p><a href="https://github.com/xmrig/xmrig" target="_blank" rel="noreferrer noopener">XMRig</a></p>
</div>
<div class="row center-xs">
<p><a href="https://github.com/xmrig/xmrig-amd" target="_blank" rel="noreferrer noopener">XMRig AMD</a></p>
</div>
<div class="row center-xs">
<p><a href="https://github.com/xmrig/xmrig-nvidia" target="_blank" rel="noreferrer noopener">XMRig NVIDIA</a></p>
</div>
</div>
......
......@@ -42,8 +42,7 @@
<input id="tab-2" type="radio" name="tabs" aria-hidden="true">
<h2>2015</h2>
<div class="tabPanel-content">
{% for toplevel in site.data.roadmap %}
{% for toplevel in site.data.lang[site.lang].roadmap %}
{% if toplevel.year == 2015 %}
{% for roadlist in toplevel.accomplishments %}
<div class="row start-xs middle-xs">
......@@ -54,18 +53,15 @@
<p>{{roadlist.date}}: {{roadlist.name}}</p>
</div>
</div>
{%endfor%}
{%endif%}
{%endfor%}
</div>
<label for="tab-3" tabindex="0"></label>
<input id="tab-3" type="radio" name="tabs" aria-hidden="true">
<h2>2016</h2>
<div class="tabPanel-content">
{% for toplevel in site.data.roadmap %}
{% for toplevel in site.data.lang[site.lang].roadmap %}
{% if toplevel.year == 2016 %}
{% for roadlist in toplevel.accomplishments %}
<div class="row start-xs middle-xs">
......@@ -76,18 +72,15 @@
<p>{{roadlist.date}}: {{roadlist.name}}</p>
</div>
</div>
{%endfor%}
{%endif%}
{%endfor%}
</div>
<label for="tab-4" tabindex="0"></label>
<input id="tab-4" type="radio" name="tabs" aria-hidden="true" checked>
<h2>2017</h2>
<div class="tabPanel-content">
{% for toplevel in site.data.roadmap %}
{% for toplevel in site.data.lang[site.lang].roadmap %}
{% if toplevel.year == 2017 %}
{% for roadlist in toplevel.accomplishments %}
<div class="row start-xs middle-xs">
......@@ -102,18 +95,15 @@
{%endif%}
</div>
</div>
{%endfor%}
{%endif%}
{%endfor%}
</div>
<label for="tab-5" tabindex="0"></label>
<input id="tab-5" type="radio" name="tabs" aria-hidden="true">
<h2>Future</h2>
<div class="tabPanel-content">
{% for toplevel in site.data.roadmap %}
{% for toplevel in site.data.lang[site.lang].roadmap %}
{% if toplevel.year == 2018 %}
{% for roadlist in toplevel.accomplishments %}
<div class="row start-xs">
......@@ -128,16 +118,12 @@
{%endif%}
</div>
</div>
{%endfor%}
{%endif%}
{%endfor%}
</div>
</div>
</div>
</div>
</section>
</div>
\ No newline at end of file
......@@ -18,6 +18,7 @@ global:
privacy: Privacy
copyright: Copyright
edit: Edit This Page
untranslated: Esta pagina is not yet translated. If you would like to help translate it, please see the
titles:
index: Inicio
whatismonero: ¿Qué es Monero (XMR)?
......
{% include untranslated.html %}
<div markdown="1" class="text-center container description">
Monero people are always down to get together and have a good time. Check below to see Monero-related events happening in your area.
</div>
......
<p>No</p>
\ No newline at end of file
{% include untranslated.html %}
<div markdown="1" class="text-center container description">
The Monero community is diverse and varied. We come from all over, but we definitely have some places we like to hang out together. You'll find most of them below. Join us!
</div>
<div class="hangouts">
<section class="container">
<ul class="row center-xs">
<li>
<a href="https://twitter.com/monerocurrency" target="_blank" rel="noreferrer noopener"><div class="social-icon twitter"></div></a>
</li>
<li>
<a href="https://reddit.com/r/monero" target="_blank" rel="noreferrer noopener"><div class="social-icon reddit"></div></a>
</li>
<li>
<a href="https://www.facebook.com/monerocurrency/" target="_blank" rel="noreferrer noopener"><div class="social-icon facebook"></div></a>
</li>
<li>
<a href="https://github.com/monero-project" target="_blank" rel="noreferrer noopener"><div class="social-icon github"></div></a>
</li>
</ul>
</section>
<section class="container">
<div class="row">
<!-- left two-thirds block-->
<div class="left two-thirds col-lg-8 col-md-8 col-sm-12 col-xs-12">
<div class="col-xs-12">
<div class="info-block">
<div class="row center-xs">
<div class="col">
<h2>Workgroup Resources</h2>
</div>
</div>
<div class="row center-xs">
<p>In an effort to support organic workgroups, Monero has several resources that the community can use to meet and plan projects. Mattermost even has relays into the most popular Monero-related IRC channels.</p>
</div>
<div class="row relays around-xs">
<div class="col-md-4 col-sm-4 col-xs-4">
<p><a href="https://monero.slack.com/" class="btn-link btn-fixed">Slack</a></p>
</div>
<div class="col-md-4 col-sm-4 col-xs-4">
<p><a href="https://mattermost.getmonero.org/" class="btn-link btn-fixed">Mattermost</a></p>
</div>
<div class="col-md-4 col-sm-4 col-xs-4">
<p><a href="https://taiga.getmonero.org/" class="btn-link btn-fixed">Taiga</a></p>
</div>
</div>
</div>
<div class="info-block">
<div class="row center-xs">
<div class="col">
<h2>IRC Channels</h2>
</div>
</div>