{
    "componentChunkName": "component---src-templates-page-js",
    "path": "/documentation/",
    "result": {"data":{"markdownRemark":{"html":"<p><em>This information is also publicly available on our <a href=\"https://github.com/Edinburgh-University-String-Orchestra/euso-website\">GitHub repository</a>.</em></p>\n<h1 id=\"euso-website\" style=\"position:relative;\"><a href=\"#euso-website\" aria-label=\"euso website permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>EUSO Website</h1>\n<p><a href=\"https://opensource.org/licenses/MIT\"><img src=\"https://img.shields.io/badge/License-MIT-blue.svg\" alt=\"License: MIT\"></a></p>\n<p>The official website of the Edinburgh University String Orchestra.</p>\n<h2 id=\"author\" style=\"position:relative;\"><a href=\"#author\" aria-label=\"author permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Author</h2>\n<ul>\n<li><a href=\"https://www.ericjanto.com\">Eric Janto</a></li>\n</ul>\n<h2 id=\"license\" style=\"position:relative;\"><a href=\"#license\" aria-label=\"license permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>License</h2>\n<p>This project is open source and available under the <a href=\"LICENSE\">MIT License</a>.</p>\n<hr>\n<p><em>This documentation is written for plain beginners.</em></p>\n<h2 id=\"development-setup\" style=\"position:relative;\"><a href=\"#development-setup\" aria-label=\"development setup permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Development Setup</h2>\n<h3 id=\"tools\" style=\"position:relative;\"><a href=\"#tools\" aria-label=\"tools permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Tools</h3>\n<p>The project uses a few tools you need to have installed.</p>\n<ol>\n<li>Follow along <a href=\"https://www.gatsbyjs.org/tutorial/part-zero/\">these instructions</a>. Stop where it says 'Create a Gatsby Site'.</li>\n<li>You need to have a GitHub account.</li>\n<li>Download <a href=\"https://code.visualstudio.com/download\">VS Code</a>.</li>\n</ol>\n<h4 id=\"troubleshooting-install-nvm-and-node\" style=\"position:relative;\"><a href=\"#troubleshooting-install-nvm-and-node\" aria-label=\"troubleshooting install nvm and node permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Troubleshooting: Install nvm and node</h4>\n<p>I had problems installing nvm and node on my mac, here is what I did to solve it:</p>\n<p>nvm is a <strong>N</strong>ode <strong>V</strong>ersion <strong>Manager</strong> and let's you install and manage node versions.\nnode is a server environment.</p>\n<ol>\n<li>Follow along <a href=\"/https://github.com/nvm-sh/nvm\">this tutorial</a> to install nvm.</li>\n<li>Run <code class=\"language-text\">nvm --version</code> in your terminal to ensure that it is installed.</li>\n<li>Run <code class=\"language-text\">nvm install 14.4.0</code>. This installs node v.14.4.0 on your machine.</li>\n<li>This shouldn't be necessary, but to be sure: Run <code class=\"language-text\">nvm use 14</code> and <code class=\"language-text\">node -v</code> to check everything.</li>\n</ol>\n<h3 id=\"local-project-setup\" style=\"position:relative;\"><a href=\"#local-project-setup\" aria-label=\"local project setup permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Local Project Setup</h3>\n<p>Clone Repository</p>\n<ol>\n<li>Open VS Code.</li>\n<li>Click on the version control icon in the sidebar (the one below the search icon).</li>\n<li>Click on 'clone repository'.</li>\n<li>Go to the repository of this website on GitHub, click on 'clone' and copy the link.</li>\n<li>Go back to VS Code and paste the link, choose a folder where to save it on your machine and press enter.</li>\n</ol>\n<p>Link to GitHub</p>\n<ol>\n<li>Open the Terminal in VS Code (type ctrl + shift + ` ).</li>\n<li>Run <code class=\"language-text\">git init</code> and <code class=\"language-text\">git remote add clone-url</code> (make sure to appropriately replace <code class=\"language-text\">clone-url</code>).</li>\n<li>Change this README.md file (add a space or whatever).</li>\n<li>Run <code class=\"language-text\">git add .</code> and <code class=\"language-text\">git commit -m \"test commit\"</code> and <code class=\"language-text\">git push</code>.</li>\n</ol>\n<p>Install Node Packages</p>\n<ol>\n<li>Delete any package-lock.json or yarn.lock file you can find.</li>\n<li>Open Terminal within VS Code.</li>\n<li>Run <code class=\"language-text\">yarn build</code>.</li>\n</ol>\n<h3 id=\"test-run\" style=\"position:relative;\"><a href=\"#test-run\" aria-label=\"test run permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Test Run</h3>\n<p>To check if everything worked:</p>\n<ol>\n<li>Open Terminal within VS Code.</li>\n<li>Run <code class=\"language-text\">gatsby develop</code>.</li>\n<li>Click on the localhost link.</li>\n</ol>\n<p>You can type <code class=\"language-text\">alt + c</code> to terminate the process in your terminal.</p>\n<h2 id=\"project-structure-content\" style=\"position:relative;\"><a href=\"#project-structure-content\" aria-label=\"project structure content permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Project Structure (Content)</h2>\n<p>Below are the files you need to edit if you want to change the content of our website.</p>\n<p>We distinguish between Markdown files and .js files.</p>\n<p>Good news: Markdowns files are very easy to edit. Markdown is a markup language which is easy to use. The file you're currently reading is made using Markdown. You can't really produce any errors which would stop this website from working (apart from providing the right fields at the beginning, but we'll come to that).</p>\n<p>Bad news: .js files are more ... delicate ... to edit. But also easy once you know what you're doing. You can produce errors which break the website so you have to be careful.</p>\n<p>You know if a page is not a markdown page if there is anything fancy on it which is not a normal text paragraph, picture or table.</p>\n<p>markdown pages: <code class=\"language-text\">content/pages</code></p>\n<p>.js pages: <code class=\"language-text\">src/pages</code></p>\n<p>If you look at these directories and the page names, you know which page relates to which page on the on-line website.</p>\n<h2 id=\"changing-content\" style=\"position:relative;\"><a href=\"#changing-content\" aria-label=\"changing content permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Changing Content</h2>\n<p>Run <code class=\"language-text\">gatsby develop</code> in your vs code terminal and go to the localhost page. You can see there the changes you make to your website.</p>\n<p>Main things you need to keep updated:</p>\n<p><strong>Composer Typing Animation</strong></p>\n<ul>\n<li>Go to <code class=\"language-text\">src/pages/index.js</code>.</li>\n<li>Press <code class=\"language-text\">cmd + f</code> and search for 'Typewriter'.</li>\n<li>Jump to the line (around l. 35) where it says:</li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"js\"><pre class=\"language-js\"><code class=\"language-js\"><span class=\"token operator\">&lt;</span>Typewriter\n<span class=\"token operator\">...</span>\n  texts<span class=\"token operator\">=</span><span class=\"token punctuation\">{</span><span class=\"token punctuation\">[</span><span class=\"token string\">'Shostakovich'</span><span class=\"token punctuation\">,</span> <span class=\"token string\">'Dvořák'</span><span class=\"token punctuation\">,</span> <span class=\"token string\">'Beethoven'</span><span class=\"token punctuation\">,</span> <span class=\"token string\">'Britten'</span><span class=\"token punctuation\">,</span> <span class=\"token string\">'Bridge'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">}</span>\n<span class=\"token operator\">...</span></code></pre></div>\n<ul>\n<li>Change the names within the quotes.</li>\n<li>You can also add new names, just make sure to separate them with commas.</li>\n</ul>\n<p><strong>Add a News Article</strong></p>\n<ul>\n<li>Go to <code class=\"language-text\">content/posts</code>.</li>\n<li>Click on 'Create a new file'.</li>\n<li>Give it a name <strong>following this convention</strong>: <code class=\"language-text\">[date]-title.md</code></li>\n<li>The date makes sure that we won't have a naming problem in the future, i.e. that we accidently create the same names and have to search for names which aren't already occupied.</li>\n<li>Have a look on how other news articles are named to get the idea.</li>\n<li>Go to another news article and copy the first few lines, e.g.</li>\n<li>make sure to also copy the three dashes <code class=\"language-text\">---</code></li>\n</ul>\n<div class=\"gatsby-highlight\" data-language=\"markdown\"><pre class=\"language-markdown\"><code class=\"language-markdown\"><span class=\"token front-matter-block\"><span class=\"token punctuation\">---</span>\n<span class=\"token font-matter yaml language-yaml\">date: 2020-07-06\ntitle: 'A Positive Note'\ntemplate: post\nslug: 2020-07-06-positive-notes\ncategories:\n  - News\ntags:\n  - 'covid'\n  - 'positive notes'\n  - 'euso'\n  - 'edinburgh university string orchestra'\n  - 'edinburgh'\n  - 'university of edinburgh'</span>\n<span class=\"token punctuation\">---</span></span></code></pre></div>\n<ul>\n<li>Paste everything right at the top of your new news article.</li>\n<li>Change date, title and tags according to your article content.</li>\n<li>Change the slug: the slug is going to be the new domain of our article, i.e. on which domain it will be accessible to the puclic. E.g. <a href=\"https://string.eusa.ed.ac.uk/**slug\">https://string.eusa.ed.ac.uk/**slug</a>**</li>\n<li>Make sure to use the <strong>same date / title</strong> convention as for the file naming, but don't put a <code class=\"language-text\">.md</code> there</li>\n<li>Fill your article with content (follow <a href=\"https://guides.github.com/features/mastering-markdown/\">this guide</a> if you don't know how to use markdown).</li>\n</ul>\n<p><strong>Update .js pages</strong></p>\n<ul>\n<li>Go to the respective page in <code class=\"language-text\">src/pages</code>.</li>\n<li>Only edit text within <code class=\"language-text\">&lt;p></code> or <code class=\"language-text\">&lt;h1></code> tags (or any other number behind the h).</li>\n<li>Good practice: look within the file for the text you want to change and only change exactly that text without touching anything different.</li>\n</ul>\n<p><strong>Update .md pages</strong></p>\n<ul>\n<li>Go to the respective page in <code class=\"language-text\">content/pages</code>.</li>\n<li>Change the content.</li>\n</ul>\n<p><strong>How do I know which page is a markdown page and which page is a .js page?</strong></p>\n<p>If you don't have any idea, just search for the text you want to change with the search icon on the left sidebar. It'll get you to the file you want to change. Just make sure not to edit files within the <code class=\"language-text\">public</code> folder.</p>\n<h2 id=\"publishing-the-changed-content\" style=\"position:relative;\"><a href=\"#publishing-the-changed-content\" aria-label=\"publishing the changed content permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Publishing the Changed Content</h2>\n<p>Once you've updated the content you want to publish them under our <a href=\"https://string.eusa.ed.ac.uk/\">https://string.eusa.ed.ac.uk/</a> domain.</p>\n<ul>\n<li>Run <code class=\"language-text\">gatsby build</code> to create the HTML and static assets that we're provide to our hosting platform</li>\n<li>Run <code class=\"language-text\">gatsby serve</code> to check if our build worked. Click on the localhost link and check if your changed stuff works.</li>\n<li>Update the GitHub repository: Click on the version control icon, add a message and press <code class=\"language-text\">shift + enter</code> and confirm the alert.</li>\n<li>Go to the bottom left and press the up arrow</li>\n<li>Login to cPanel (instructions on handover sheet)</li>\n<li>Go to Git Version Control</li>\n<li>Click on 'Manage' next to the repository name</li>\n<li>Click on 'Pull or Deploy'</li>\n<li>Click on 'Update from Remote'</li>\n<li>Click on 'Deploy from HEAD'</li>\n</ul>\n<p>Congratulations, you're updates should now (or within a few seconds) be online!</p>","timeToRead":6,"excerpt":"This information is also publicly available on our GitHub repository. EUSO Website License: MIT The official website of the Edinburgh…","frontmatter":{"title":"Documentation","template":"page"},"fields":{"slug":"/documentation/","date":null}}},"pageContext":{"slug":"/documentation/"}},
    "staticQueryHashes": []}