Build Free Website with Jekyll on IBM Cloud
How to stand out with an amazing portfolio in the job market?
Interested in how to build and deploy your own website to help you stand out from the competition? Click here to build this web step-by-step with CognitiveClass.ai Guided Project
In today’s highly competitive world, no matter whether you are a new graduate developer or a new startup company must take bold steps to stand out from the crowd. One such step is creating a website that effectively showcases your skills and experience or your business products. A well-designed website serves as a powerful platform to attract potential employers or clients. And with Jekyll on IBM Cloud Object Storage, it’s never been easier to create a stunning website that will help you stand out from the crowd.
With easy-to-follow instructions, you’ll be able to build a professional-looking website in no time and setup on IBM Cloud Object Storage for FREE. Plus, with IBM Cloud Object Storage, you can easily have the benefit of these amazing features:
- Free for commercial companies to publish their static web
- Highly scalable for handling large volumes of data and media files
- Supports multiple APIs and protocols for easy integration with various web development tools and platforms
- Enables lightning-fast big file uploads
The project is perfect for developers at any level who isn’t well-versed in HTML. So what are you waiting for? Let’s start building your website today! But before diving in, let’s get a better idea of what kind of website we will build by clicking the following button.
As demonstrated above, this guided project will instruct you on transforming a basic template into a sleek personal portfolio. However, the techniques and principles employed in this project are equally applicable when constructing a business website.
What is Jekyll?
Jekyll is a static site generator that enables you to create and publish websites quickly and easily. It takes content, usually written in Markdown or HTML, and generates a complete website that can be hosted on any web server. Unlike traditional content management systems like WordPress, Jekyll does not require a database or server-side processing. It generates a series of static HTML pages that can be served by any web server. Jekyll is also secure, easily cached by CDNs, and generates sites quickly, allowing users to focus on creating content rather than worrying about maintenance.
It’s important to note that Jekyll is written in Ruby programming language, so it’s essential to ensure that you have a complete Ruby development environment set up correctly. Fortunately, CognitiveClass.ai already has the configuration set up for you to start building Jekyll right away called Cloud IDE. However, it would be beneficial for you to have some basic knowledge of Ruby before we begin the project. If you’re new to Ruby, this page can help you learn some of the terminologies.
There are three essential parts of Ruby: Gems, Gemfile, and Bundler.
- Gems are packages that contain Ruby code and can be easily shared and reused across different projects. They can include code, documentation, and dependencies and can be installed and managed using the RubyGems package manager. For example, Jekyll and many Jekyll plugins are also gems.
- Gemfile is a configuration file used in Ruby projects to specify the gems that the project depends on, along with any version constraints. Typically, the Gemfile is located in the root directory of the project and is used by tools such as Bundler to manage the project’s dependencies.
- Bundler is a tool used in Ruby projects to manage gem dependencies and ensure that the correct versions of gems are installed. Bundler reads the Gemfile and installs the required gems, along with their dependencies, into a “bundle” that is stored in the project directory.
Update Personal Information
First things first, let’s update the basic information on your site. The _config.yml
file is a configuration file in Jekyll templates, which is a static site generator that is widely used for building websites and blogs. It provides a centralized location for configuring and customizing the site’s various settings. It also allows for easy maintaining the site and adds extra functionality through plugins and collections.
Here is where you usually can find this file in the GitHub repository:
Inside the _config.yml
file, you’ll find several sections that can be easily edited. Simply follow the instructions and update your personal information as needed.
Basic Information and Header Setting
In the first part of the files, you will find these codes at the beginning of the file. Update the informaiton by instruciton:
# Site settings
title: Cognitive Class
email: your-email@domain.com
url: https://github.com/Sheng-Kai-IBM/Skills-Network-Jekyll-Freelancer-Theme
description: "Welcome to IBM CognitiveClass.ai"
keywords: "Artificial Intelligence, AI Application, Machine Learning, Web Development, Data Science"
skills: "Artificial Intelligence - AI Application - Machine Learning - Web Development - Data Science"
meta_author: Cognitive Class
title
is a critical part that will appear in the most prominent place, so it’s essential to put your full name there.- You need to change the
email
with your personal email address. url
is the base hostname and protocol for your site. You can simply paste your GitHub repository URL here.description
&keywords
are the information that you want to appear in the Google search results and your feed.xml site description.skills
is another crucial parameter that displays the words under the title. It’s best to include 1-3 positions you are looking for or have previously worked in.meta_author
contains the editor’s name.
Color Setting
Here’s the section where you can modify the site’s color by customize the HEX code to your preferred color.
# Color settings (hex-codes without the leading hash-tag)
color:
primary: 546093 #80B3FF
primary-rgb: "24,288,156" #"128,179,255"
secondary: 0E4B66 #FD6E8A
secondary-dark: 233140 #A2122F
Social Media Link Setting
You can add your social media links to your portfolio by editing lines 41–51. The title
parameter will automatically find the icon related to the string you provide, while the url
parameter is where you should add the link you want people to visit.
# Social networks usernames (many more available: google-plus, flickr, dribbble, pinterest, instagram, tumblr, linkedin, etc.)
social:
- title: twitter
url: https://twitter.com/cognitiveclass
- title: facebook
url: https://www.facebook.com/cognitiveclass
- title: linkedin
url: https://www.linkedin.com/school/cognitiveclass/
- title: youtube
url: https://www.youtube.com/user/TheBigDataUniversity
- title: github
url: http://github.com/
Address Setting
In lines 54–56, you can include the name of the city where you currently reside. This way, HR or your potential employers can get a general idea of your location.
Note: For security reasons, we advise against including your full mailing address in a public portfolio. Therefore, we recommend only providing city or town information in this section.
# Postal address (add as many lines as necessary)
address:
- line: Unionville
- line: Ontario L6G 1C7, Canada
Upload Site To IBM Cloud Object Storage
Having completed all the necessary customization on your website, it is now time to unveil it to the world. However, before deployment, there are two important considerations that require your attention.
- You need to have a registered IBM Cloud account
- IBM Cloud Object Storage is only free for the deployment of static websites.
Join IBM Cloud Without Credit Card Information
If you’re tired of the inconvenience of having to provide credit card information during registration, we have some great news for you. We understand how frustrating it can be to constantly have to input sensitive information, which is why we’re excited to announce that enrolling in the CognitiveClass.ai Guided Project is the solution you’ve been searching for. By following the project’s instructions, you will receive a unique code that will enable you to register your IBM Cloud account without the need for credit card information. Don’t miss out on this hassle-free opportunity to take your IBM Cloud experience to the next level!
Use Cloud IDE To Save Setup Time
Now that you have obtained an IBM Cloud account, it’s time to take the next step and deploy your site to the public. However, it’s important to keep in mind that IBM Cloud Object Storage is only free for the deployment of static websites. This means that you will need to execute your Jekyll using the following code to ensure optimal functionality.
bundle exec jekyll serve
For those who are unfamiliar with installing Ruby in their environment or simply do not have the time to set up a new programming language on their computer, CognitiveClass.ai has the perfect solution for you. Our Cloud IDE provides an exceptional pre-built environment that comes equipped with Ruby and a variety of other command-based programming languages such as Python, Java, and C++. Enroll in the Cloud IDE today and easily execute the previous command to get a _site
folder like the figure shows.
Once downloaded in Cloud IDE, you’ll find a file labeled _site.tar
in your local download directory. Remember to unzip the file for our upcoming step.
Create IBM Cloud Object Storage Instances
Upon logging into your account, our next task is to establish a new Cloud Object Storage Instance. Click the following link and follow the steps outlined in the following figure:
- Choose IBM Cloud
- Select the Lite Plan
- Assign a name to your server (for instance, we used “Cloud Object Storage-y0” as an example)
- Create an Instance
Once completed, you will see a page displaying the Cloud Object Storage Instances you have just generated. Click on the Instance to proceed to the following step.
Create Bucket
Now click on the Create bucket
.
Then you will see the page with different options to create different types of buckets, but here you should choose Customize your bucket.
Please adhere to the steps outlined in the following figure to set up your bucket, leaving all other settings as default:
- Assign a name to your bucket (ensure that you employ the same name utilized in Step 1)
- Choose the Single Site option
- Select Smart Tier
Upon successfully creating the bucket, you’ll find the subsequent information displayed in the top right corner. Next, click on the upload
button.
Refer to the instructions in the accompanying figure to upload the _site
folder that you recently downloaded from the Cloud IDE.
Edit Bucket Policy
Last but not least, it is imperative that you make this bucket public so that individuals can access your portfolio site. To begin, navigate to the Permission
section located at the top of the page. Select Public access
and modify the “Role for this bucket” section to Object Reader
. Then, create an access policy according to the figure depicted below.
Upon successfully creating the policy, you will receive the subsequent message:
You will also observe that the Public Access to your bucket has switched from No
to Yes
.
Now, wait approximately 2–3 minutes to allow for the cloud to update the policy. Afterward, RELOAD the bucket page that encompasses all the files you recently uploaded. Enter “_site/index” in the Prefix filter
to locate our target file.
When you select the index.html
file, you will see the Object Public URL
. This link represents the public portfolio that you may freely share with others.
Congratulations!
You are now fully equipped to edit the majority of Jekyll templates and publish them free of charge on IBM Cloud.
However, don’t close this page just yet! While this article has only provided you with the basic methods to link your HTML with IBM Cloud, there is so much more to explore on how to showcase your project and add more customization to your web portfolio. Dive deeper to discover more secrets of editing HTML themes like a pro in this comprehensive and free CognitiveClass.ai Guided Project. Don’t wait any longer; upgrade your knowledge today and unleash your full potential!
Here is the link to the author who created these fantastic Jekyll templates. You can visit his site and maybe give a star to his GitHub repository.
Web: https://jekyllthemes.io/theme/freelancer-theme
GitHub: https://github.com/jeromelachaud/freelancer-theme
Feel free to connect with me on LinkedIn as well!