Prompt:
GitHub is an incredibly useful tool for project management and collaboration. It also has several useful features for professional promotion: you can host your own site on github using GitHub pages, describe yourself using a GitHub developer profile, and even use resume.github.io to generate a resume summary of your activity on GitHub (you must opt-in by starring the project page).
posit and the associated package infrastructure provide multiple ways to generate websites using Quarto (or Rmarkdown). You can complete this assignment using one of two options:
Simple RMarkdown websites
For more information about simple R Markdown websites, please read the documentation at https://bookdown.org/yihui/rmarkdown/rmarkdown-site.html. Simple R Markdown sites are not based on blogdown. They are probably good for websites with only a few Rmd documents.Quarto
For larger-scale and more sophisticated websites (such as blogs), you may want to use Quarto instead: https://quarto.org/docs/websites/.
Instructions:
Create a new GitHub repository named
<your-username>.github.io
(replacing “” with your GitHub username). Initialize this repo with a readme. Set up your website using either the Simple Markdown Site or the Quarto instructions below. If you would like to use this repository to host a blog, you may find Quarto to be a more convenient option, however, it is (just a bit) more complicated than the simple Rmarkdown site.
Write about you experience – and link to your new website!
To get full marks for this blog post, you should modify your site beyond the default template files, adding at least some content that is unique to you - packages you find interesting, sites you enjoy, projects you have worked on, a page with your CV, etc.
Simple RMarkdown Site
Use RStudio and set up a new project on your machine linked to the GitHub repository you just created.
Create two files in your project folder:
_site.yml
:name: "my-website" output_dir: "." navbar: title: "My Website" left: - text: "Home" href: index.html
index.Rmd
--- title: "My Website" --- Hello, Website!
Use the commmand
rmarkdown::render_site()
to build your website (Or click the “Build Website” button under the Build tab in RStudio). This command will compile any R markdown document in the main project directory to HTML (even if it is not mentioned in_site.yml
).Push your site to GitHub. In this instance, you want to include the HTML files that were rendered, the
site_libs
directory, the_site.yml
file used to configure the build process, and the Rmd files used to render the HTML files.Customize your site. Remember to use the command
rmarkdown::render_site()
before you push your changes so that the HTML is updated!- Modify
_site.yml
to update the header structure, add links to other files, etc. - Modify
index.Rmd
to add content to the landing page of your site. You might think about including a link to your CV on this page. - Add new Rmd files to add new pages to your site. Consider adding a page describing your favorite packages, or pages for different projects you’ve worked on.
- Modify
Quarto
Install/Update the
quarto
package (install.packages("quarto")
)Create a new folder where you will store your blog and the rendered site.
Use RStudio to create a new project inside the folder you created in step 2. Select either the Option “Quarto Website” or “Quarto Blog” as the project type.
Follow the Quick Start instructions on https://quarto.org/docs/websites/ or https://quarto.org/docs/websites/website-blog.html to create your website.
For publishing your website, follow the steps described under Github Pages. You can try to build the site automatically, but fair warning: I went back to build to docs and render the site myself.
VERY IMPORTANT. Open the “username.github.io” project. Add a text file named “.nojekyll” (the file should be empty). This tells GitHub not to build the pages with Jekyll (another rendering engine) and instead render pages built with Quarto.
Submission
Describe your experience the README.Rmd
of the blog-8 repo. Don’t forget to link to your website! Push the blog post to your blog-8 repo. Make sure that all of the checks are passing.