<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: ☆</title>
    <description>The latest articles on DEV Community by ☆ (@equalcoding).</description>
    <link>https://dev.to/equalcoding</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F387655%2F95dccf13-fc38-40ad-9760-ae63fce1006f.png</url>
      <title>DEV Community: ☆</title>
      <link>https://dev.to/equalcoding</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/equalcoding"/>
    <language>en</language>
    <item>
      <title>Creating a straight-forward 'starting-out' portfolio and blog with GitHub pages and Dev.to</title>
      <dc:creator>☆</dc:creator>
      <pubDate>Mon, 18 May 2020 20:44:24 +0000</pubDate>
      <link>https://dev.to/equalcoding/creating-a-straight-forward-starting-out-portfolio-and-blog-with-github-pages-and-dev-to-2b09</link>
      <guid>https://dev.to/equalcoding/creating-a-straight-forward-starting-out-portfolio-and-blog-with-github-pages-and-dev-to-2b09</guid>
      <description>&lt;p&gt;Having a portfolio is important, there is no better proof of one's ability than actual evidence of their work. A quick glance at that your portfolio can tell a lot about you. &lt;/p&gt;

&lt;p&gt;My web-page was viewed 90% of the time when added as part of my resume, so there is clear potential to make a good first impression.&lt;/p&gt;

&lt;h1&gt;
  
  
  Why GitHub Pages?
&lt;/h1&gt;

&lt;p&gt;A big plus is that the &lt;strong&gt;&lt;em&gt;cost of hosting is a whopping £0!!!&lt;/em&gt;&lt;/strong&gt; Also, the nicely readable domain &lt;code&gt;github.io&lt;/code&gt; helps recruiters input that address. (Provided you don't have an obscure &lt;em&gt;GitHub&lt;/em&gt; username that becomes the sub-domain).&lt;/p&gt;

&lt;p&gt;I also felt that having just &lt;em&gt;GitHub&lt;/em&gt; repositories as a portfolio, with its simple design, would not help me to stand out to potential employers or, at the very least, get the attention of recruitment agencies. &lt;/p&gt;

&lt;p&gt;Other solutions would offer me the design flexibility but at the same time a lot of functionality I did not need. &lt;/p&gt;

&lt;p&gt;Creating a full blown web-page felt like an overkill. Even though I created a CMS solely for this purpose, by the time I was half-done with it I grew demotivated in continuing.&lt;/p&gt;

&lt;p&gt;I thought of using &lt;em&gt;GitHub pages&lt;/em&gt; for this - it issues a sub-domain for each user, making it feel more professional, however, their templates felt too bleak and did not really fit my use case. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I needed a one-stop solution that would include all of my social media and dynamically link to a blog and projects.&lt;/strong&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  How can it be done?
&lt;/h1&gt;

&lt;p&gt;In the age of API it is quite easy to make use of things, really avoiding the need of a powerful backend of your own (provided we do not need authentication).&lt;/p&gt;

&lt;p&gt;There is no need to re-invent the wheel, &lt;em&gt;Dev.to&lt;/em&gt; offers a straight forward API for getting all the articles of a user. A call to &lt;code&gt;https://dev.to/api/articles?username=equalcoding&lt;/code&gt; gives all the information necessary to reference and link user's articles at &lt;em&gt;Dev.to&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;GitHub&lt;/em&gt; offers similar functionality for repositories on this endpoint &lt;code&gt;https://api.github.com/users/equalcoding/repos&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;Just with these two API calls above we have the potential to create a simple landing page for a portfolio that will include a blog and a reference to the resources at &lt;em&gt;GitHub&lt;/em&gt; and &lt;em&gt;Dev.to&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;GitHub Pages&lt;/em&gt; uses &lt;a href="https://jekyllrb.com/"&gt;Jekyll&lt;/a&gt; that allows to create static pages. By using some JavaScript to make http calls these pages can become somewhat dynamic.&lt;/p&gt;

&lt;h1&gt;
  
  
  How can you do it?
&lt;/h1&gt;

&lt;p&gt;Create a new git repository with your username prepended to &lt;code&gt;.github.io&lt;/code&gt;, e.g., &lt;code&gt;equalcoding.github.io&lt;/code&gt;. This will generate the page at that exact URL.&lt;/p&gt;

&lt;p&gt;After creating a new git repository, if you go to settings you will find a section about GitHub Pages, where you will be able to create your GitHub page.&lt;/p&gt;

&lt;p&gt;When creating GitHub Pages GitHub will ask you to choose a template and, once that is done, it will generate an &lt;code&gt;index.md&lt;/code&gt; file. This file can be replaced with a &lt;code&gt;index.html&lt;/code&gt; file if you wish to use html in your project (you will have to if you want to make the API calls).&lt;/p&gt;

&lt;p&gt;This can be used as the basis for the page, from here you can implement your own css or js, or even external .css and .js libraries.&lt;/p&gt;

&lt;p&gt;In my project @ &lt;a href="https://equalcoding.github.io/"&gt;equalcoding.github.io&lt;/a&gt; (&lt;a href="https://github.com/equalcoding/equalcoding.github.io"&gt;repo&lt;/a&gt;) API queries to &lt;em&gt;Dev.to&lt;/em&gt; and &lt;em&gt;GitHub&lt;/em&gt; are used to display blog posts and GitHub repositories. Every time I add anything to &lt;em&gt;Dev.to&lt;/em&gt;, it will automatically be displayed in the web-page and the same will happen when creating a new &lt;em&gt;GitHub&lt;/em&gt; repository.&lt;/p&gt;

&lt;p&gt;You are more than welcome to clone or fork my project - there is configuration in the &lt;code&gt;main.js&lt;/code&gt; file that allows you to point everything to your own accounts. The instructions with configuration description can be found at the bottom of &lt;a href="https://github.com/equalcoding/equalcoding.github.io"&gt;the repository page&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;My page is made to be very minimalist and simple, as that appeals to me and I believe that it works best for 'quick glance' situations. However, there are many other templates available for every taste at &lt;a href="https://jamstackthemes.dev/ssg/jekyll/"&gt;https://jamstackthemes.dev/ssg/jekyll/&lt;/a&gt;. Some also include links to their git repos. Or have a shot at making your own - here is a good &lt;a href="https://help.github.com/en/enterprise/2.14/user/articles/setting-up-your-github-pages-site-locally-with-jekyll"&gt;resource&lt;/a&gt; on how to get Jekyll running locally to get you started with the development.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>github</category>
      <category>career</category>
    </item>
    <item>
      <title>Example article</title>
      <dc:creator>☆</dc:creator>
      <pubDate>Sun, 17 May 2020 00:40:59 +0000</pubDate>
      <link>https://dev.to/equalcoding/example-article-24a9</link>
      <guid>https://dev.to/equalcoding/example-article-24a9</guid>
      <description>&lt;p&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque tincidunt consectetur nibh, vulputate aliquam nulla posuere et. Fusce dolor velit, vehicula sed lorem vel, accumsan efficitur nisi. Cras diam eros, finibus a ex et, egestas ultrices lectus. Nulla a metus imperdiet lacus egestas gravida vel in odio. Morbi auctor quis tellus et rutrum. Vivamus pretium leo libero, dignissim aliquet lectus egestas eget. Pellentesque eget consectetur ligula. Quisque vel lacinia lectus. Aliquam erat volutpat.&lt;/p&gt;

&lt;p&gt;Morbi interdum risus dolor, sed ultrices nunc faucibus sit amet. Vestibulum nec luctus nibh. Nullam iaculis, libero eget blandit tincidunt, orci turpis luctus lectus, id ultrices nibh enim sit amet elit. Aliquam ornare mauris augue, a congue massa tincidunt eget. Praesent augue nibh, auctor id faucibus faucibus, ultrices ut augue. Morbi sagittis mauris sed facilisis euismod. Sed scelerisque cursus diam eget interdum. Etiam facilisis elit mollis orci tristique, vel ultricies nulla molestie. Aenean nec dolor et leo venenatis consequat in sollicitudin sapien. Aliquam eget auctor erat. Nulla diam purus, blandit ac dolor quis, finibus scelerisque tellus. Donec nisl nibh, viverra sit amet venenatis et, bibendum et tellus. Phasellus eget placerat ipsum, vitae malesuada odio. Ut fringilla ultricies diam, a blandit mi. Nulla fermentum fermentum vehicula. Nulla facilisi.&lt;/p&gt;

&lt;p&gt;Etiam mattis est eget odio finibus finibus. Vivamus convallis sagittis placerat. Mauris dignissim magna nisl, non aliquam ex efficitur eu. Maecenas nec vestibulum diam. Etiam quis lorem eu metus fringilla rutrum ut non arcu. Sed tellus libero, vehicula sed dui non, feugiat mattis ligula. Integer eu tortor purus.&lt;/p&gt;

&lt;p&gt;Ut non gravida urna. Proin in ante vitae arcu venenatis cursus a ut erat. Maecenas lobortis lacinia diam, a sodales nisi gravida ut. Fusce finibus, ante sed sodales placerat, purus dui feugiat erat, eu luctus mauris nibh tristique orci. Vestibulum rhoncus porta hendrerit. Vestibulum nec tempus arcu, a tempus orci. Nulla placerat dolor eget ante faucibus efficitur. In pellentesque, enim id malesuada accumsan, ligula sapien rutrum nunc, eu lacinia magna odio sed ante. Vivamus posuere mattis vehicula. Fusce faucibus nisl vitae pharetra tincidunt. Fusce posuere posuere ipsum, nec viverra neque congue vitae. Nulla scelerisque, lectus aliquet blandit ultricies, erat leo finibus elit, id pulvinar enim dui congue ante. Pellentesque maximus, leo pharetra convallis fermentum, sem nibh auctor ante, et gravida quam nunc eu neque. Integer finibus rhoncus malesuada. Pellentesque fermentum aliquam massa, sit amet dapibus leo eleifend vel.&lt;/p&gt;

&lt;p&gt;Sed efficitur varius erat at semper. In hac habitasse platea dictumst. Donec vitae lectus nec mauris tristique luctus. Nulla nec sodales quam, in dictum ligula. Aenean ultrices sem maximus condimentum pharetra. In mattis accumsan justo pulvinar posuere. Maecenas dignissim ipsum vitae mattis aliquam. Duis a gravida lectus, eu rhoncus ex. Phasellus auctor tellus sed molestie porta. Etiam mattis lacus urna, sed aliquet tortor hendrerit at. Nunc ut ornare nunc, ac vestibulum lacus. Sed a accumsan ligula. Etiam aliquet ultricies ligula eget elementum. Suspendisse orci est, vestibulum vitae nisl at, commodo viverra nibh.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
