...
 
Commits (267)

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

*This repository has moved, PLEASE do not open a pull request here!*
You can, instead, open a pull request on the self-hosted GitLab instance at: https://repo.getmonero.org/monero-project/monero-site
- [ ] I have read the above message
- [ ] Despite reading the above I've ignored it
- [ ] I understand that if I open a PR it'll just be closed
- [ ] But I'm a total idiot
- [ ] Because of the above I'm opening a pull request anyway
Copyright (c) 2014-2019, The Monero Project
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Repository moved to https://repo.getmonero.org/monero-project/monero-site
This repository has recently been moved to https://repo.getmonero.org/monero-project/monero-site
Please submit your changes on the new repository.
To contribute on https://repo.getmonero.org/ please proceed this way:
* Create an account or login using OAuth2 with your GitHub account
* Create a password
* Fork the repository https://repo.getmonero.org/monero-project/monero-site
* Push your branches to your newly forked repo, or contribute just like you did on GitHub.
Thanks for your comprehension.
# Monero Website Instructions
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. If you need help/support, you can find it on `#monero-translations` and [Taiga](https://taiga.getmonero.org/project/erciccione-monero-localization/wiki/home)
## Table of Contents
1.0 Introduction
2.0 What you'll need
3.0 General change recommendations
4.0 How to make a blog post
5.0 How to make a User Guide
6.0 How to make a Moneropedia entry
7.0 How to make a FFS Proposal
8.0 How to update the Team page
9.0 How to make an Event
10.0 How to update the Roadmap
11.0 How to add a new Merchant
12.0 How to add a question to the FAQ
13.0 How to add a publication to the Library
14.0 How to translate a page
15.0 How to add a new language
16.0 License
## 1.0 Introduction
- [Introduction](#introduction)
- [What you'll need](#what-youll-need)
- [General change recommendations](#general-change-recommendations)
- [housekeeping](#housekeeping)
- [Updates on User Guides](#updates-on-user-guides)
- [How to make a blog post](#how-to-make-a-blog-post)
- [How to make a User Guide](#how-to-make-a-user-Guide)
- [How to make a Moneropedia entry](#how-to-make-a-moneropedia-entry)
- [How to update the Team page](#how-to-update-the-team-page)
- [How to make an Event](#how-to-make-an-event)
- [How to update the Roadmap](#how-to-update-the-roadmap)
- [How to add a new Merchant](#how-to-add-a-new-merchant)
- [How to add a question to the FAQ](#how-to-add-a-question-to-the-faq)
- [How to add a publication to the Library](#how-to-add-a-publication-to-the-library)
- [Localization](#localization)
- [How to translate a page](#how-to-translate-a-page)
- [How to add a new language](#how-to-add-a-new-language)
## 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.
Feel free to skip down to a relevant section if you already know what you need.
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'.
If you need support about something related to the website, plese join `#monero-site` on Freenode (also relayed on Matrix and mattermost). For general info about Monero join `#monero`. We'll do whatever we can to help you.
If for any reason you have questions or need to contact us, you can find us on the IRC channel #monero. We'll do whatever we can to help you.
## 2.0 What you'll need
## What you'll need
* Jekyll: [getmonero.org](https://getmonero.org/) is made using a simple, static website generator called [Jekyll](https://jekyllrb.com/). You will need it installed on your system to test any changes that you made. If you're using Windows, you will want to check out [this site](http://jekyll-windows.juthilo.com/) for instructions on how to get Jekyll working on your system. If you're using a Linux-based system you can just follow the instructions on the website to get up and going:
* Install Ruby
* Install Bundler: `gem install bundler`
* Install Jekyll with all dependencies (run from the project directory): `bundle`
* GitHub/GitLab: Pretty much everything in Monero is hosted on [GitHub](https://github.com), [getmonero GitLab](https://repo.getmonero.org/users/monero-project/projects) or [GitLab](https://gitlab.com/users/kovri-project/projects) and uses Git as the primary version control system. If you're not familiar with how to use Git, you can check out [this tutorial](https://guides.github.com/activities/hello-world/) for a good overview. It will take you through pretty much everything you'll need to know to edit the website. If you haven't already, register for GitHub and fork the [Monero Website repository](https://repo.getmonero.org/monero-project/monero-site).
* GitHub/GitLab: Pretty much everything in Monero is hosted on [GitHub](https://github.com) or [getmonero GitLab](https://repo.getmonero.org/users/monero-project/projects)and uses Git as the primary version control system. If you're not familiar with how to use Git, you can check out [this tutorial](https://guides.github.com/activities/hello-world/) for a good overview. It will take you through pretty much everything you'll need to know to edit the website. If you haven't already, register on GitLab and fork the [Monero Website repository](https://repo.getmonero.org/monero-project/monero-site).
* Markdown experience: To write pages, you're going to need to know how to use Markdown. It's basically an in-between language that enables people who don't know HTML to just write, and it will be compiled into HTML for you. You can find a great Markdown cheat sheet with examples [here](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet). IF you need more help, Google and YouTube are great resources.
......@@ -81,11 +44,11 @@ Once you have the above list of things, it's typically a good idea to build the
3. Open a browser and go to [http://127.0.0.1:4000](http://127.0.0.1:4000).
4. If all went well, you should see the Monero website and you're ready to make changes.
## 3.0 General change recommendations
The average Monero user that will want to contribute to the website should probably stick with making blog posts, user guides, Moneropedia entries, or a Forum Funding System proposal, all of which are covered in this document. If this is all you want to do, don't worry, it's actually not a daunting task at all. If you are not well versed in web development however, it is not recommended you try to do anything beyond that.
## General change recommendations
The average Monero user that will want to contribute to the website should probably start looking for issues labelled [⛑️ help needed](https://repo.getmonero.org/monero-project/monero-site/issues?label_name%5B%5D=%E2%9B%91%EF%B8%8F++help+needed) or making blog posts, user guides or Moneropedia entries; all of which are covered in this document. If this is all you want to do, don't worry, it's actually not a daunting task at all. If you are not well versed in web development however, it is not recommended you try to do anything beyond that.
If you are a web developer and would like to make large macro-level changes, it would be best to get in contact with rehrar. The HTML/CSS framework is custom, though quite easy to use for a seasoned developer. Still, there are some pages that are more complicated than others and would require fair amounts of styling changes should the structure change significantly.
If you are a web developer and would like to make large macro-level changes, it would be best to get in contact with rehrar and the developers on `#monero-site` or `#monero-dev` (IRC/Freenode, MatterMost, Matrix). The HTML/CSS framework is custom, though quite easy to use for a seasoned developer. Still, there are some pages that are more complicated than others and would require fair amounts of styling changes should the structure change significantly.
This website is completely open-source however and anything and everything is available for changing should the community deem it necessary.
......@@ -97,23 +60,22 @@ A few random points of note:
- 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 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
## Housekeeping
#### Editing the Site
### 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.
The Monero Localization 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.
#### GitLab 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 contributor and the issue is not closed we ask that you close it in a timely manner. A contributor (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.
### GitLab 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 contributor and the issue is not closed we ask that you close it in a timely manner. A contributor 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.
#### Pull Requests
### Pull Requests
Contributors should use [issue keywords](https://docs.gitlab.com/ee/user/project/issues/automatic_issue_closing.html) to make it easier for maintainers to close issues when they merge. Include close, closes, closed, fix, fixes, fixed, resolve, resolves, resolved, etc in the commit message or pull request description, so that the correct issue can be closed if your PR is merged. (Example: 'fixes #1234' could close Issue 1234 when merged.)
Pull requests allow others to make comments or review your changes to the site. We ask that you remain available to comment or make changes to your PR. Pull requests with pending changes for more than 30 days will be closed and need to be resubmitted in the future. Sometimes someone else's changes might make your changes conflict with the current site. If that happens you may need to rebase your PR. (If you're unsure about how to do so, you can reach out to other contributors on IRC (freenode #monero) and someone should be able to walk you through it.
### 3.2 Updates on User Guides
Pull requests allow others to make comments or review your changes to the site. We ask that you remain available to comment or make changes to your PR. Pull requests with pending changes for more than 30 days will be closed and need to be resubmitted in the future. Sometimes someone else's changes might make your changes conflict with the current site. If that happens you may need to rebase your PR.
## Updates on User Guides
User guides and developer guides may need regular updates, either to fix typos, to add explanations regarding new features, to update screenshots, and so on.
As those guides are translated in several languages, it could be hard to keep all languages version up to date with the English version.
To keep track of those changes, guides are versioned using a snippet at the top of each localized (\_i18n/en/resources/\*-guides) file:
......@@ -147,19 +109,19 @@ And you will increment the version number in the following way:
- Changes that add instructions or explanations (or screenshot updates with different field names and positions), without making the old version misleading for users: Increment the second number (Minor version number) and reset the third to 0. We want to let the user know the English version could be more accurate and helpful to read.
- Changes that makes the old version false, or misleading to users: Increment the first number (Major version number) and reset the second and third to 1.0. We want to discourage users from reading this too outdated version that could lead them to do wrong things (for instance, buy the wrong algo of mining power on nicehash, after a pow change).
## 4.0 How to make a blog post
## How to make a blog post
### 4.1 Quick Start
### 1. Quick Start
* Make new .md file in \_posts (named whatever, no spaces)
* Front Matter (below)
* Write Blog Post
* Test/Build
* Submit PR
### 4.2 Make a file
### 2. Make a file
Navigate to the \_posts folder of the website and make a new file. Be sure the file name has no spaces and the ending is .md
### 4.3 Front Matter
### 3. Front Matter
```
---
layout: post
......@@ -170,18 +132,18 @@ author: YOUR NAME OR HANDLE HERE
---
```
### 4.4 Write
### 4. Write
After the front matter is finished you are free to write the remainder of your blog post in markdown.
### 4.5 Build/Test
### 5. Build/Test
Build your website using `jekyll serve` if it's not rebuilding automatically and test that your page appears in the 'News' section of the website, as well as the sidebars.
### 4.6 Submit Pull Request
### 6. 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.
## 5.0 How to make a User Guide
## How to make a User Guide
### 5.1 Quick Start
### 1. Quick Start
* Create file in /resources/user-guides with an .md ending and no spaces in filename.
* File content as in 5.3
......@@ -194,10 +156,10 @@ You're all done. Submit a PR and wait for it to be reviewed and merged. Be sure
* Test/Build
* Submit PR
### 5.2 Make a file
### 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 Content of file
### 3. Content of file
```
---
layout: user-guide
......@@ -214,10 +176,10 @@ mainVersion:
Copy this exactly and merely change the files names where indicated.
### 5.4 Create file in localization folders
### 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
### 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.
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.
......@@ -229,13 +191,13 @@ Add the version snippet at the top of your guide (before your title):
```
Your version should start at `1.1.0` as it is the first Major, first Minor, and no cosmetic changes have occurred.
### 5.6 Copy User Guide file into all languages
### 6. 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 edit the snippet at the top of the file (before your title) to mark it untranslated:
`{% include disclaimer.html translated="false" version=page.version %}`. This does not need to be done in the original language that the User Guide was written in.
### 5.7 Add Guide to the 'User Guide' landing page of EACH LANGUAGE
### 7. 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.
......@@ -248,15 +210,15 @@ In the event that you think your User Guide should be in a new Category that doe
Repeat the above process for each language version of this index page INCLUDING THE template.
### 5.8 Build/Test
### 8. 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.9 Submit Pull Request
### 9. 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
## How to make a Moneropedia Entry
### 6.1 Make a Global file
### 1. Make a Global file
Navigate to the /resources/moneropedia folder and make a new file. Be sure the file name has no spaces and the ending is .md
Fil this file with this exact content:
```
......@@ -271,7 +233,7 @@ layout: moneropedia
```
### 6.2 Make the localized File
### 2. Make the localized File
Navigate to the /\_i18n/en/resources/moneropedia folder and make a new file. give it the same <name>.md than in previous step.
Start the file with the front Matter:
```
......@@ -286,10 +248,10 @@ There are two things to highlight:
The `terms:` section of the front matter can be filled with as many terms as you would like. This is how other Moneropedia entries will link to this page. You can link to other Moneropedia entries as well in your page by putting an ampersand before the term used, i.e. `@THE-TERM-USED`. This will make an automatic link in the Moneropedia entry to the referred term, replace the @term with the word used in that terms `entry:` area of the front matter, and on hover it will show the summary. How cool is that?
The lines must not contain trailing whitespace, and it must be no blank lines added, otherwise the site with not build correctly.
### 6.3 Write
### 3. Write
Write your Moneropedia entry. Remember that you can link to other Moneropedia entries using `@term-used-in-entry` as described above. Just go to the .md file of the Moneropedia entry you want to link to and use any of the terms in the `terms:` field of the front matter. Be sure to write whichever one you choose EXACTLY as shown and preceded by an ampersand.
### 6.4 Copy to other languages
### 4. Copy to other languages
Copy the file from the /\_i18n/en/resources/moneropedia folder to the other /\_i18n/<language>/resources/moneropedia folders and add the untranslated snippet at the same time just after the front matter, so it looks like:
```
---
......@@ -303,89 +265,17 @@ summary: "PUT SUMMARY OF YOUR ENTRY HERE IN QUOTES"
If you want to translate in your native language, go to the 14.3.2 section below to read about specificities.
### 6.5 Build/Test
### 5. Build/Test
Build your website using `jekyll serve` if it's not rebuilding automatically and test check the link to your entry is appearing on the alphabetical list of Moneropedia entries and that it leads to your entry when clicked. Test your Moneropedia entry in the browser and contact rehrar if there are any bugs.
### 6.6 Submit Pull Request
### 6. 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.
## 7.0 How to make a FFS Proposal
Before starting this section, it is recommended that you read the User Guide for [How the Forum Funding System works](#) as well as the [Forum Funding System Terms and Guidelines](#). If you do not read these expect your FFS proposal to be laughed at, not to mention not funded.
### 7.1 Quick Start
* Read [How the Forum Funding System works](#) and the [Forum Funding System Terms and Guidelines](#).
* Make the .md file in the /forum-funding-system/proposals folder. Remember the name.
* Choose your front matter layout based on whether your proposal is an Idea (`ffs-ideas`) or Open Task (`ffs-ot`) as specified in the above reading
* Fill out the rest of the Front Matter below, leaving the `address` and `paymentid` sections empty
* Edit the ffs.yml file. I strongly recommend you read this section.
* Write the proposal
* Test/Build
* Submit PR
### 7.2 Make the proposal
Navigate to the /forum-funding-system/proposals folder and make a new file. Be sure the file name has no spaces and the ending is .md. It is very important that you remember the EXACT name of this file.
### 7.3 Front Matter
```
---
layout: ffs-ideas OR ffs-ot
title: NAME OF YOUR PROPOSAL
summary: A BRIEF SUMMARY OF YOUR PROPOSAL
author: YOUR NAME OR HANDLE
address:
paymentid:
---
```
The layout will depend on if you are simply presenting an idea that you do not plan to do yourself or if you are presenting an idea that you are capable and willing to do, the chosen layout will be `ffs-ideas` or `ffs-ot` respectively. You can get more information in the [How the Forum Funding System works](#) User Guide. Fill out the next three sections as normal (title, summary, author), but leave the last two (address, paymentid) blank. Again, DO NOT PUT ANYTHING HERE.
### 7.4 Editing the .yml file
Navigate to the /\_data folder and open the file titled `ffs.yml`. In this file you will find a long list of FFS proposals.
**DO NOT MESS WITH THE FORMATTING OR INDENTATION OF ANYTHING OR JEKYLL WILL NOT BUILD PROPERLY!**
Identify the section you will be placing your proposal in. If you used `ffs-ideas` in the layout variable in the front matter then you will be putting your proposal in `stage: ideas`, and if you used `ffs-ot` in the layout, then you will be putting your proposal in the `stage: Open Tasks`. Copy the following code:
```