loading...
Cover image for Deploy your Publish website for free on GitHub Pages

Deploy your Publish website for free on GitHub Pages

sowenjub profile image Arnaud Joubay Originally published at paraside.in on ใƒป2 min read

๐Ÿ™ Create a new GitHub repository

First things first, let's create a repository to host your website content.

We'll call it mywebsite , which means it will be accessible at https://yourusername.github.io/mywebsite.

Instead of mywebsite, if you use [yourusername.github.io](http://yourusername.github.io) it will be accessible at https://yourusername.github.io. See https://pages.github.com for more infos about that.

/images/4/Screenshot<em>2020-08-11</em>at_15.21.16.png

๐ŸŽž Setup the Publish pipeline

Open your main.swift file and add deployedUsing: .gitHub("yourusername/mywebsite") to your publish pipeline, which should look something like this:


try MyWebsite().publish(
     withTheme: .casperish,
     deployedUsing: .gitHub("sowenjub/mywebsite"),
     additionalSteps: [
         .installPlugin(.readingTime()),
         .installPlugin(.pygments()),
     ],
     plugins: [.pygments()]
 )

Now run your site in Xcode (Product > Run command or โŒ˜+R), then open your terminal and run


publish deploy

Head over to your repository, refresh and make sure your files are there.

๐Ÿฅ Setup GitHub Pages

Open your repository settings, scroll down to the GitHub Pages section and select the master branch. Don't forget to click the Save button.

/images/4/Screenshot<em>2020-08-11</em>at_15.28.14.png

Once you're done, it should give your the address to your website.

/images/4/Screenshot<em>2020-08-11</em>at_15.29.07.png

And you're done! Unless you want to use a custom domain name, which can be set in the same settings panel.

๐Ÿ’ Bonus: Deploying from Xcode

Instead of deploy using the command line with publish deploy, you can deploy straight from Xcode.

First, create a New Scheme, we'll call it Deploy MyWebsite. Click on it to reopen the same menu and select "Edit Schemeโ€ฆ".

/images/4/Screenshot<em>2020-08-11</em>at_22.21.08.png

Select Run and in the Arguments Passed On Lauch, add --deploy without space.

/images/4/Screenshot<em>2020-08-11</em>at_22.24.05.png

Now anytime your Run your website with the scheme (Product > Run command or โŒ˜+R), it will deploy your site to GitHub.

Discussion

pic
Editor guide
Collapse
ameysunu profile image
Amey Sunu

If you have a PRO account from your organization or as a Github educational account, you can get a free domain from name.com for a year and host your Github Page site on your new name.com domain.