diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 000000000000..fcb4b72b4ce8 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,31 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the +// README at: https://github.com/devcontainers/templates/tree/main/src/jekyll +{ + "name": "Jekyll", + "image": "mcr.microsoft.com/devcontainers/jekyll", + + // Features to add to the dev container. More info: https://containers.dev/features. + "features": { + "ghcr.io/rocker-org/devcontainer-features/apt-packages:1": { + "packages": "build-essential,imagemagick,inotify-tools,jupyter-nbconvert,procps,ruby-full,zlib1g-dev" + }, + "ghcr.io/devcontainers-contrib/features/prettier:1": {} + }, + + // Optionally: run jekyll serve automatically on container entering using the Docker entrypoint + "postAttachCommand": "./bin/entry_point.sh", + + "customizations": { + "vscode": { + "extensions": ["esbenp.prettier-vscode", "sissel.shopify-liquid", "yzhang.markdown-all-in-one"], + "settings": { + // use prettier code formatter as default formatter + "editor.defaultFormatter": "esbenp.prettier-vscode", + "prettier.configPath": ".prettierrc", + "editor.formatOnSave": true + } + } + }, + + "remoteUser": "vscode" +} diff --git a/.github/workflows/axe.yml b/.github/workflows/axe.yml index a745c7dc9bed..46d117fdb39e 100644 --- a/.github/workflows/axe.yml +++ b/.github/workflows/axe.yml @@ -45,7 +45,7 @@ jobs: run: | pip3 install --upgrade jupyter export JEKYLL_ENV=production - bundle exec jekyll build --lsi + bundle exec jekyll build - name: Purge unused CSS 🧹 run: | npm install -g purgecss diff --git a/.github/workflows/broken-links-site.yml b/.github/workflows/broken-links-site.yml index fae797c8977f..d85270fefced 100644 --- a/.github/workflows/broken-links-site.yml +++ b/.github/workflows/broken-links-site.yml @@ -33,7 +33,7 @@ jobs: run: | pip3 install --upgrade jupyter export JEKYLL_ENV=production - bundle exec jekyll build --lsi + bundle exec jekyll build - name: Purge unused CSS 🧹 run: | npm install -g purgecss diff --git a/.github/workflows/broken-links.yml b/.github/workflows/broken-links.yml index 36d1d6e42acf..3f76faeb8cce 100644 --- a/.github/workflows/broken-links.yml +++ b/.github/workflows/broken-links.yml @@ -49,4 +49,4 @@ jobs: with: fail: true # removed md files that include liquid tags - args: --exclude-path README.md --exclude-path _pages/404.md --exclude-path _pages/blog.md --exclude-path _posts/2018-12-22-distill.md --verbose --no-progress './**/*.md' './**/*.html' + args: --user-agent 'curl/7.54' --exclude-path README.md --exclude-path _pages/404.md --exclude-path _pages/blog.md --exclude-path _posts/2018-12-22-distill.md --exclude-path _posts/2023-04-24-videos.md --verbose --no-progress './**/*.md' './**/*.html' diff --git a/.github/workflows/deploy-docker-tag.yml b/.github/workflows/deploy-docker-tag.yml index fadfff665e9a..d7710e2683e6 100644 --- a/.github/workflows/deploy-docker-tag.yml +++ b/.github/workflows/deploy-docker-tag.yml @@ -5,6 +5,8 @@ on: tags: - "v*" paths: + - ".github/workflows/deploy-docker-tag.yml" + - ".github/workflows/deploy-image.yml" - "bin/entry_point.sh" - "Dockerfile" - "Gemfile" diff --git a/.github/workflows/deploy-image.yml b/.github/workflows/deploy-image.yml index 133f22d7d143..7ddd8f65003c 100644 --- a/.github/workflows/deploy-image.yml +++ b/.github/workflows/deploy-image.yml @@ -6,6 +6,7 @@ on: - master - main paths: + - ".github/workflows/deploy-image.yml" - "bin/entry_point.sh" - "Dockerfile" - "Gemfile" diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 4979e3efa96b..85b7edffcbad 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -7,11 +7,14 @@ on: - main paths: - "assets/**" + - "**.bib" - "**.html" - "**.js" - "**.liquid" - "**/*.md" - "**.yml" + - "Gemfile" + - "Gemfile.lock" - "!.github/workflows/axe.yml" - "!.github/workflows/broken-links.yml" - "!.github/workflows/deploy-docker-tag.yml" @@ -31,11 +34,14 @@ on: - main paths: - "assets/**" + - "**.bib" - "**.html" - "**.js" - "**.liquid" - "**/*.md" - "**.yml" + - "Gemfile" + - "Gemfile.lock" - "!.github/workflows/axe.yml" - "!.github/workflows/broken-links.yml" - "!.github/workflows/deploy-docker-tag.yml" @@ -77,7 +83,7 @@ jobs: run: | pip3 install --upgrade jupyter export JEKYLL_ENV=production - bundle exec jekyll build --lsi + bundle exec jekyll build - name: Purge unused CSS 🧹 run: | npm install -g purgecss diff --git a/.github/workflows/docker-slim.yml b/.github/workflows/docker-slim.yml index 8c8cf71b85fc..3a67d32a142d 100644 --- a/.github/workflows/docker-slim.yml +++ b/.github/workflows/docker-slim.yml @@ -2,6 +2,12 @@ name: Docker Slim #Only trigger, when the build workflow succeeded on: + push: + branches: + - master + - main + paths: + - ".github/workflows/docker-slim.yml" workflow_run: workflows: ["Docker Image CI"] types: @@ -15,7 +21,7 @@ on: jobs: build: # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#running-a-workflow-based-on-the-conclusion-of-another-workflow - if: ${{ github.event.workflow_run.conclusion == 'success' }} and github.repository_owner == 'alshedivat' + if: ${{ github.event.workflow_run.conclusion == 'success' && github.repository_owner == 'alshedivat' }} runs-on: ubuntu-latest defaults: run: @@ -37,7 +43,7 @@ jobs: sed -i "s|\.:|${{ github.workspace }}:|g" ${{ github.workspace }}/docker-compose.yml cat ${{ github.workspace }}/docker-compose.yml - - uses: kitabisa/docker-slim-action@v1.0.3 + - uses: kitabisa/docker-slim-action@v1.1.1 env: DSLIM_PULL: true DSLIM_COMPOSE_FILE: ${{ github.workspace }}/docker-compose.yml diff --git a/.gitignore b/.gitignore index d264e17e3e5e..b9fbd72443a4 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,8 @@ _site .ruby-version .tweet-cache Gemfile.lock +assets/libs/ node_modules/ vendor -google2faff1e60f4e9638.html \ No newline at end of file +google2faff1e60f4e9638.html +.idea \ No newline at end of file diff --git a/.prettierignore b/.prettierignore index f917ab0212d1..bfd89b76f034 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,6 +1,10 @@ +**/*.map **/*.min.css **/*.min.js assets/css/main.scss +assets/js/search-data.js +assets/js/distillpub/template.v2.js +assets/js/search/*.js assets/plotly/demo.html lighthouse_results/** _posts/2015-10-20-math.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 184507460b82..c84e9d6eaa86 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,6 +8,8 @@ We welcome your pull requests (PRs). For minor fixes (e.g., documentation improvements), feel free to submit a PR directly. If you would like to implement a new feature or a bug, please make sure you (or someone else) has opened an appropriate issue first; in your PR, please mention the issue it addresses. +Note that since [#2048](https://github.com/alshedivat/al-folio/pull/2048) al-folio uses the [prettier formatter](https://prettier.io/) for its code, meaning all new submitted code must conform to its standard. If you don't have `prettier` installed for your setup and the `prettier` code check fails when submitting a PR, you can check the referred failed action in our repo. In that action there will be an artifact with an HTML diff showing the needed changes. + ## Issues We use GitHub issues to track bugs and feature requests. diff --git a/CUSTOMIZE.md b/CUSTOMIZE.md index 19c260a109c3..80bffffedb09 100644 --- a/CUSTOMIZE.md +++ b/CUSTOMIZE.md @@ -40,7 +40,7 @@ The configuration file [\_config.yml](_config.yml) contains the main configurati > Note that the `url` and `baseurl` settings are used to generate the links of the website, as explained in the [install instructions](INSTALL.md). -All changes made to this file are only visible after you rebuild the website. That means that you need to run `bundle exec jekyll serve --lsi` again if you are running the website locally or push your changes to GitHub if you are using GitHub Pages. All other changes are visible immediately, you only need to refresh the page. +All changes made to this file are only visible after you rebuild the website. That means that you need to run `bundle exec jekyll serve` again if you are running the website locally or push your changes to GitHub if you are using GitHub Pages. All other changes are visible immediately, you only need to refresh the page. ## Modifying the CV information @@ -80,7 +80,7 @@ You can easily create your own collections, apps, short stories, courses, or wha To add publications create a new entry in the [\_bibliography/papers.bib](_bibliography/papers.bib) file. You can find the BibTeX entry of a publication in Google Scholar by clicking on the quotation marks below the publication title, then clicking on "BibTeX", or also in the conference page itself. By default, the publications will be sorted by year and the most recent will be displayed first. You can change this behavior and more in the `Jekyll Scholar` section in [\_config.yml](_config.yml) file. -You can add extra information to a publication, like a PDF file in the `assets/pdfs/` directory and add the path to the PDF file in the BibTeX entry with the `pdf` field. Some of the supported fields are: `abstract`, `altmetric`, `arxiv`, `bibtex_show`, `blog`, `code`, `dimensions`, `doi`, `eprint`, `html`, `isbn`, `pdf`, `pmid`, `poster`, `slides`, `supp`, `video`, and `website`. +You can add extra information to a publication, like a PDF file in the `assets/pdfs/` directory and add the path to the PDF file in the BibTeX entry with the `pdf` field. Some of the supported fields are: `abstract`, `altmetric`, `annotation`, `arxiv`, `bibtex_show`, `blog`, `code`, `dimensions`, `doi`, `eprint`, `html`, `isbn`, `pdf`, `pmid`, `poster`, `slides`, `supp`, `video`, and `website`. ### Author annotation @@ -124,6 +124,7 @@ There are several custom bibtex keywords that you can use to affect how the entr - `abbr`: Adds an abbreviation to the left of the entry. You can add links to these by creating a venue.yaml-file in the \_data folder and adding entries that match. - `abstract`: Adds an "Abs" button that expands a hidden text field when clicked to show the abstract text - `altmetric`: Adds an [Altmetric](https://www.altmetric.com/) badge (Note: if DOI is provided just use `true`, otherwise only add the altmetric identifier here - the link is generated automatically) +- `annotation`: Adds a popover info message to the end of the author list that can potentially be used to clarify superscripts. HTML is allowed. - `arxiv`: Adds a link to the Arxiv website (Note: only add the arxiv identifier here - the link is generated automatically) - `bibtex_show`: Adds a "Bib" button that expands a hidden text field with the full bibliography entry - `blog`: Adds a "Blog" button redirecting to the specified link @@ -145,3 +146,9 @@ A variety of beautiful theme colors have been selected for you to choose from. T ## Adding social media information You can add your social media links by adding the specified information at the `Social integration` section in the [\_config.yml](_config.yml) file. This information will appear at the bottom of the `About` page. + +## Adding a newsletter + +You can add a newsletter subscription form by adding the specified information at the `newsletter` section in the [\_config.yml](_config.yml) file. To set up a newsletter, you can use a service like [Loops.so](https://loops.so/), which is the current supported solution. Once you have set up your newsletter, you can add the form [endpoint](https://loops.so/docs/forms/custom-form) to the `endpoint` field in the `newsletter` section of the [\_config.yml](_config.yml) file. + +Depending on your specified footer behavior, the sign up form either will appear at the bottom of the `About` page and at the bottom of blogposts if `related_posts` are enabled, or in the footer at the bottom of each page. diff --git a/Dockerfile b/Dockerfile index e55a99f998ba..6843d3d0320b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:latest +FROM ruby:latest ENV DEBIAN_FRONTEND noninteractive Label MAINTAINER Amir Pourmand @@ -6,7 +6,6 @@ Label MAINTAINER Amir Pourmand RUN apt-get update -y && apt-get install -y --no-install-recommends \ locales \ imagemagick \ - ruby-full \ build-essential \ zlib1g-dev \ jupyter-nbconvert \ @@ -23,15 +22,16 @@ ENV LANG=en_US.UTF-8 \ LC_ALL=en_US.UTF-8 \ JEKYLL_ENV=production -# install jekyll and dependencies -RUN gem install jekyll bundler - RUN mkdir /srv/jekyll +ADD Gemfile.lock /srv/jekyll ADD Gemfile /srv/jekyll WORKDIR /srv/jekyll +# install jekyll and dependencies +RUN gem install jekyll bundler + RUN bundle install --no-cache # && rm -rf /var/lib/gems/3.1.0/cache EXPOSE 8080 diff --git a/FAQ.md b/FAQ.md index 1810c02afc1b..d6faca56df53 100644 --- a/FAQ.md +++ b/FAQ.md @@ -5,7 +5,7 @@ Here are some frequently asked questions. If you have a different question, plea - [After I create a new repository from this template and setup the repo, I get a deployment error. Isn't the website supposed to correctly deploy automatically?](#after-i-create-a-new-repository-from-this-template-and-setup-the-repo-i-get-a-deployment-error-isnt-the-website-supposed-to-correctly-deploy-automatically) - [I am using a custom domain (e.g., `foo.com`). My custom domain becomes blank in the repository settings after each deployment. How do I fix that?](#i-am-using-a-custom-domain-eg-foocom-my-custom-domain-becomes-blank-in-the-repository-settings-after-each-deployment-how-do-i-fix-that) - [My webpage works locally. But after deploying, it fails to build and throws `Unknown tag 'toc'`. How do I fix that?](#my-webpage-works-locally-but-after-deploying-it-fails-to-build-and-throws-unknown-tag-toc-how-do-i-fix-that) -- [My webpage works locally. But after deploying, it is not displayed correctly (CSS and JS is not loaded properly). How do I fix that?](#my-webpage-works-locally-but-after-deploying-it-is-not-displayed-correctly-css-and-js-is-not-loaded-properly-how-do-i-fix-that) +- [My webpage works locally. But after deploying, it is not displayed correctly (CSS and JS are not loaded properly). How do I fix that?](#my-webpage-works-locally-but-after-deploying-it-is-not-displayed-correctly-css-and-js-are-not-loaded-properly-how-do-i-fix-that) - [Atom feed doesn't work. Why?](#atom-feed-doesnt-work-why) - [My site doesn't work when I enable `related_blog_posts`. Why?](#my-site-doesnt-work-when-i-enable-related_blog_posts-why) - [When trying to deploy, it's asking for github login credentials, which github disabled password authentication and it exits with an error. How to fix?](#when-trying-to-deploy-its-asking-for-github-login-credentials-which-github-disabled-password-authentication-and-it-exits-with-an-error-how-to-fix) @@ -14,6 +14,7 @@ Here are some frequently asked questions. If you have a different question, plea - [After I update my site with some new content, even a small change, the GitHub action throws an error or displays a warning. What happened?](#after-i-update-my-site-with-some-new-content-even-a-small-change-the-github-action-throws-an-error-or-displays-a-warning-what-happened) - [I am trying to deploy my site, but it fails with `Could not find gem 'jekyll-diagrams' in locally installed gems`. How do I fix that?](#i-am-trying-to-deploy-my-site-but-it-fails-with-could-not-find-gem-jekyll-diagrams-in-locally-installed-gems-how-do-i-fix-that) - [How can I update Font Awesome version on the template](#how-can-i-update-font-awesome-version-on-the-template) +- [What do all these GitHub actions/workflows mean?](#what-do-all-these-github-actionsworkflows-mean) --- @@ -29,9 +30,9 @@ You need to add `CNAME` file to the `master` or `source` branch of your reposito Make sure you followed through the [deployment instructions](#deployment) in the previous section. You should have set the deployment branch to `gh-pages`. (Related issue: [1438](https://github.com/alshedivat/al-folio/issues/1438).) -#### My webpage works locally. But after deploying, it is not displayed correctly (CSS and JS is not loaded properly). How do I fix that? +#### My webpage works locally. But after deploying, it is not displayed correctly (CSS and JS are not loaded properly). How do I fix that? -Make sure to correctly specify the `url` and `baseurl` paths in `_config.yml`. Set `url` to `https://.github.io` or to `https://` if you are using a custom domain. If you are deploying a personal or organization website, leave `baseurl` blank. If you are deploying a project page, set `baseurl: //`. If all previous steps were done correctly, all is missing is [for your browser to fetch again the site stylesheet](https://github.com/alshedivat/al-folio/issues/1398#issuecomment-1609518404). +If the website does not load the theme, the layout looks weird, and all links are broken, make sure to correctly specify the `url` and `baseurl` paths in `_config.yml`. Set `url` to `https://.github.io` or to `https://` if you are using a custom domain. If you are deploying a personal or organization website, leave `baseurl` blank. If you are deploying a project page, set `baseurl: //`. If all previous steps were done correctly, all is missing is [for your browser to fetch again the site stylesheet](https://github.com/alshedivat/al-folio/issues/1398#issuecomment-1609518404). #### Atom feed doesn't work. Why? @@ -39,7 +40,7 @@ Make sure to correctly specify the `url` and `baseurl` paths in `_config.yml`. R #### My site doesn't work when I enable `related_blog_posts`. Why? -This is probably due to the [classifier reborn](https://github.com/jekyll/classifier-reborn) plugin, which is used to calculate related posts. If the error states `Liquid Exception: Zero vectors can not be normalized...` or `sqrt': Numerical argument is out of domain - "sqrt"`, it means that it could not calculate related posts for a specific post. This is usually caused by [empty or minimal blog posts](https://github.com/jekyll/classifier-reborn/issues/64) without meaningful words (i.e. only [stop words](https://en.wikipedia.org/wiki/Stop_words)) or even [specific characters](https://github.com/jekyll/classifier-reborn/issues/194) you used in your posts. Also, the calculus for similar posts are made for every `post`, which means every page that uses `layout: post`, including the announcements. To change this behavior, simply add `related_posts: false` to the front matter of the page you don't want to display related posts on. Another solution is to disable the lsi (latent semantic indexing) entirely by removing the `--lsi` flag in the code. Related issue: [#1828](https://github.com/alshedivat/al-folio/issues/1828). +This is probably due to the [classifier reborn](https://github.com/jekyll/classifier-reborn) plugin, which is used to calculate related posts. If the error states `Liquid Exception: Zero vectors can not be normalized...` or `sqrt': Numerical argument is out of domain - "sqrt"`, it means that it could not calculate related posts for a specific post. This is usually caused by [empty or minimal blog posts](https://github.com/jekyll/classifier-reborn/issues/64) without meaningful words (i.e. only [stop words](https://en.wikipedia.org/wiki/Stop_words)) or even [specific characters](https://github.com/jekyll/classifier-reborn/issues/194) you used in your posts. Also, the calculus for similar posts are made for every `post`, which means every page that uses `layout: post`, including the announcements. To change this behavior, simply add `related_posts: false` to the front matter of the page you don't want to display related posts on. Another solution is to disable the lsi (latent semantic indexing) entirely by setting the `lsi` flag to `false` in `_config.yml`. Related issue: [#1828](https://github.com/alshedivat/al-folio/issues/1828). #### When trying to deploy, it's asking for github login credentials, which github disabled password authentication and it exits with an error. How to fix? @@ -81,3 +82,20 @@ Note that libraries tend to be deprecated and support for them dropped as they a #### How can I update Font Awesome version on the template To update the Font Awesome version, you need to download the latest release "for the web" from the [Font Awesome website](https://fontawesome.com/download). After downloading, extract the zip file and copy the `scss/` directory content to `_sass/font-awesome/` and the `webfonts/` content to `assets/webfonts/`. + +#### What do all these GitHub actions/workflows mean? + +GitHub actions are a way to automate tasks in the repository. They are defined in `.github/workflows/` directory. Each file in this directory is a workflow. Workflows are made up of one or more jobs, and each job runs on a virtual machine hosted by GitHub. You can see the status of the workflows in the `Actions` tab of your repository. For more information, check the [GitHub Actions documentation](https://docs.github.com/en/actions). + +Currently we have the following workflows: + +- `axe.yml`: does some accessibility testing in your site. It uses the [axe cli](https://github.com/dequelabs/axe-core-npm/tree/develop/packages/cli) tool with a chrome driver to render the webpage and allow the analysis. Must be run manually, since fixing some of the issues is not straightforward +- `broken-links-site.yml`: checks for broken links in your built website with the [lychee-action](https://github.com/lycheeverse/lychee-action) +- `broken-links.yml`: checks for broken links in your repository with the [lychee-action](https://github.com/lycheeverse/lychee-action) +- `deploy-docker-tag.yml`: adds some metadata to the docker image and pushes it to Docker Hub +- `deploy-image.yml`: deploys a new docker image with the latest changes to Docker Hub +- `deploy.yml`: deploys the website to GitHub Pages +- `docker-slim.yml`: deploys a smaller version of the docker image to Docker Hub with the [docker-slim-action](https://github.com/kitabisa/docker-slim-action) +- `lighthouse-badger.yml`: runs a [lighthouse](https://github.com/GoogleChrome/lighthouse) test for your site with the [lighthouse-badger-action](https://github.com/MyActionWay/lighthouse-badger-action), saving the results in the repository for easy inspecting, as can be seen [here](https://github.com/alshedivat/al-folio?tab=readme-ov-file#lighthouse-pagespeed-insights). For more information on how to enable this workflow, check our [FAQ question about it](https://github.com/alshedivat/al-folio/blob/master/FAQ.md#when-i-manually-run-the-lighthouse-badger-workflow-it-fails-with-error-input-required-and-not-supplied-token-how-do-i-fix-that) +- `prettier-comment-on-pr.yml`: not working. For now, this action is disabled. It was supposed to run prettier on the PRs and comment on them with the changes needed. For more information, check [issue 2115](https://github.com/alshedivat/al-folio/issues/2115) +- `prettier.yml`: runs [prettier](https://prettier.io/) on the code to ensure it is well formatted. For more information, check our [FAQ question about it](https://github.com/alshedivat/al-folio/blob/master/FAQ.md#my-code-runs-fine-locally-but-when-i-create-a-commit-and-submit-it-it-fails-with-prettier-code-formatter-workflow-run-failed-for-master-branch-how-do-i-fix-that) diff --git a/Gemfile b/Gemfile index be5458541018..fa34c9646671 100644 --- a/Gemfile +++ b/Gemfile @@ -11,8 +11,10 @@ group :jekyll_plugins do gem 'jekyll-link-attributes' gem 'jekyll-minifier' gem 'jekyll-paginate-v2' + gem 'jekyll-regex-replace' gem 'jekyll-scholar' gem 'jekyll-sitemap' + gem 'jekyll-tabs' gem 'jekyll-toc' gem 'jekyll-twitter-plugin' gem 'jemoji' @@ -21,6 +23,7 @@ group :jekyll_plugins do gem 'webrick' end group :other_plugins do + gem 'css_parser' gem 'feedjira' gem 'httparty' end diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 000000000000..75d206fa1690 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,233 @@ +GEM + remote: https://rubygems.org/ + specs: + activesupport (7.1.3.4) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + minitest (>= 5.1) + mutex_m + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + base64 (0.2.0) + bibtex-ruby (6.1.0) + latex-decode (~> 0.0) + racc (~> 1.7) + bigdecimal (3.1.8) + citeproc (1.0.10) + namae (~> 1.0) + citeproc-ruby (1.1.14) + citeproc (~> 1.0, >= 1.0.9) + csl (~> 1.6) + classifier-reborn (2.3.0) + fast-stemmer (~> 1.0) + matrix (~> 0.4) + colorator (1.1.0) + concurrent-ruby (1.3.3) + connection_pool (2.4.1) + crass (1.0.6) + csl (1.6.0) + namae (~> 1.0) + rexml + csl-styles (1.0.1.11) + csl (~> 1.0) + css_parser (1.17.1) + addressable + cssminify2 (2.0.1) + csv (3.3.0) + deep_merge (1.2.2) + drb (2.2.1) + em-websocket (0.5.3) + eventmachine (>= 0.12.9) + http_parser.rb (~> 0) + eventmachine (1.2.7) + execjs (2.9.1) + fast-stemmer (1.0.2) + feedjira (3.2.3) + loofah (>= 2.3.1, < 3) + sax-machine (>= 1.0, < 2) + ffi (1.17.0) + ffi (1.17.0-arm64-darwin) + ffi (1.17.0-x86_64-darwin) + forwardable-extended (2.6.0) + gemoji (4.1.0) + google-protobuf (3.25.3-aarch64-linux) + google-protobuf (3.25.3-arm64-darwin) + google-protobuf (3.25.3-x86_64-darwin) + google-protobuf (3.25.3-x86_64-linux) + html-pipeline (2.14.3) + activesupport (>= 2) + nokogiri (>= 1.4) + htmlcompressor (0.4.0) + http_parser.rb (0.8.0) + httparty (0.22.0) + csv + mini_mime (>= 1.0.0) + multi_xml (>= 0.5.2) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + jekyll (4.3.3) + addressable (~> 2.4) + colorator (~> 1.0) + em-websocket (~> 0.5) + i18n (~> 1.0) + jekyll-sass-converter (>= 2.0, < 4.0) + jekyll-watch (~> 2.0) + kramdown (~> 2.3, >= 2.3.1) + kramdown-parser-gfm (~> 1.0) + liquid (~> 4.0) + mercenary (>= 0.3.6, < 0.5) + pathutil (~> 0.9) + rouge (>= 3.0, < 5.0) + safe_yaml (~> 1.0) + terminal-table (>= 1.8, < 4.0) + webrick (~> 1.7) + jekyll-archives (2.2.1) + jekyll (>= 3.6, < 5.0) + jekyll-email-protect (1.1.0) + jekyll-feed (0.17.0) + jekyll (>= 3.7, < 5.0) + jekyll-get-json (1.0.0) + deep_merge (~> 1.2) + jekyll (>= 3.0) + jekyll-imagemagick (1.4.0) + jekyll (>= 3.4) + jekyll-jupyter-notebook (0.0.6) + jekyll + jekyll-link-attributes (1.0.1) + jekyll-minifier (0.1.10) + cssminify2 (~> 2.0) + htmlcompressor (~> 0.4) + jekyll (>= 3.5) + json-minify (~> 0.0.3) + uglifier (~> 4.1) + jekyll-paginate-v2 (3.0.0) + jekyll (>= 3.0, < 5.0) + jekyll-regex-replace (1.1.0) + jekyll-sass-converter (3.0.0) + sass-embedded (~> 1.54) + jekyll-scholar (7.1.3) + bibtex-ruby (~> 6.0) + citeproc-ruby (~> 1.0) + csl-styles (~> 1.0) + jekyll (~> 4.0) + jekyll-sitemap (1.4.0) + jekyll (>= 3.7, < 5.0) + jekyll-tabs (1.2.1) + jekyll (>= 3.0, < 5.0) + jekyll-toc (0.19.0) + jekyll (>= 3.9) + nokogiri (~> 1.12) + jekyll-twitter-plugin (2.1.0) + jekyll-watch (2.2.1) + listen (~> 3.0) + jemoji (0.13.0) + gemoji (>= 3, < 5) + html-pipeline (~> 2.2) + jekyll (>= 3.0, < 5.0) + json (2.7.2) + json-minify (0.0.3) + json (> 0) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + latex-decode (0.4.0) + libv8-node (21.7.2.0-aarch64-linux) + libv8-node (21.7.2.0-arm64-darwin) + libv8-node (21.7.2.0-x86_64-darwin) + libv8-node (21.7.2.0-x86_64-linux) + liquid (4.0.4) + listen (3.9.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + matrix (0.4.2) + mercenary (0.4.0) + mini_mime (1.1.5) + mini_racer (0.12.0) + libv8-node (~> 21.7.2.0) + minitest (5.24.1) + multi_xml (0.6.0) + mutex_m (0.2.0) + namae (1.2.0) + racc (~> 1.7) + nokogiri (1.16.6-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.6-arm64-darwin) + racc (~> 1.4) + nokogiri (1.16.6-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.16.6-x86_64-linux) + racc (~> 1.4) + pathutil (0.16.2) + forwardable-extended (~> 2.6) + public_suffix (6.0.0) + racc (1.8.0) + rake (13.2.1) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) + ffi (~> 1.0) + rexml (3.3.1) + strscan + rouge (4.3.0) + safe_yaml (1.0.5) + sass-embedded (1.69.5) + google-protobuf (~> 3.23) + rake (>= 13.0.0) + sass-embedded (1.69.5-arm64-darwin) + google-protobuf (~> 3.23) + sass-embedded (1.69.5-x86_64-darwin) + google-protobuf (~> 3.23) + sax-machine (1.3.2) + strscan (3.1.0) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + uglifier (4.2.0) + execjs (>= 0.3.0, < 3) + unicode-display_width (2.5.0) + unicode_utils (1.4.0) + webrick (1.8.1) + +PLATFORMS + aarch64-linux + arm64-darwin + x86_64-darwin + x86_64-linux + +DEPENDENCIES + classifier-reborn + css_parser + feedjira + httparty + jekyll + jekyll-archives + jekyll-email-protect + jekyll-feed + jekyll-get-json + jekyll-imagemagick + jekyll-jupyter-notebook + jekyll-link-attributes + jekyll-minifier + jekyll-paginate-v2 + jekyll-regex-replace + jekyll-scholar + jekyll-sitemap + jekyll-tabs + jekyll-toc + jekyll-twitter-plugin + jemoji + mini_racer + unicode_utils + webrick + +BUNDLED WITH + 2.5.7 diff --git a/INSTALL.md b/INSTALL.md index 754e5e19c240..8b3992083bbc 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,11 +1,13 @@ # Table of Contents +- [Table of Contents](#table-of-contents) - [Installing and Deploying](#installing-and-deploying) - [Recommended Approach](#recommended-approach) - - [Local Setup on Windows](#local-setup-on-windows) - - [Local Setup using Docker (Recommended)](#local-setup-using-docker-recommended) + - [Local setup on Windows](#local-setup-on-windows) + - [Local setup using Docker (Recommended)](#local-setup-using-docker-recommended) - [Build your own docker image](#build-your-own-docker-image) - - [Local Setup (Legacy)](#local-setup-legacy) + - [Local Setup with Development Containers](#local-setup-with-development-containers) + - [Local Setup (Legacy, no longer supported)](#local-setup-legacy-no-longer-supported) - [Deployment](#deployment) - [For personal and organization webpages](#for-personal-and-organization-webpages) - [For project pages](#for-project-pages) @@ -58,7 +60,7 @@ Note that when you run it for the first time, it will download a docker image of Now, feel free to customize the theme however you like (don't forget to change the name!). Also, your changes should be automatically rendered in real-time (or maybe after a few seconds). -> Beta: You can also use the slimmed docker image with a size below 100MBs and exact same functionality. Just use `docker compose up -f docker-compose-slim.yml` +> Beta: You can also use the slimmed docker image with a size below 100MBs and exact same functionality. Just use `docker compose -f docker-compose-slim.yml up` ### Build your own docker image @@ -74,7 +76,12 @@ $ docker compose up --build If you want to use a specific docker version, you can do so by changing `latest` tag to `your_version` in `docker-compose.yaml`. For example, you might have created your website on `v0.10.0` and you want to stick with that. -## Local Setup (Legacy) +## Local Setup with Development Containers + +`al-folio` supports [Development Containers](https://containers.dev/supporting). +For example, when you open the repository with Visual Studio Code (VSCode), it prompts you to install the necessary extension and automatically install everything necessary. + +## Local Setup (Legacy, no longer supported) For a hands-on walkthrough of running al-folio locally without using Docker, check out [this cool blog post](https://george-gca.github.io/blog/2022/running-local-al-folio/) by one of the community members! @@ -84,7 +91,7 @@ Assuming you have [Ruby](https://www.ruby-lang.org/en/downloads/) and [Bundler]( $ bundle install # assuming pip is your Python package manager $ pip install jupyter -$ bundle exec jekyll serve --lsi +$ bundle exec jekyll serve ``` To see the template running, open your browser and go to `http://localhost:4000`. You should see a copy of the theme's [demo website](https://alshedivat.github.io/al-folio/). Now, feel free to customize the theme however you like. After you are done, remember to **commit** your final changes. @@ -128,7 +135,7 @@ If you need to manually re-deploy your website to GitHub pages, go to Actions, c If you decide to not use GitHub Pages and host your page elsewhere, simply run: ```bash -$ bundle exec jekyll build --lsi +$ bundle exec jekyll build ``` which will (re-)generate the static webpage in the `_site/` folder. @@ -156,7 +163,7 @@ Firstly, from the deployment repo dir, checkout the git branch hosting your publ Then from the website sources dir (commonly your al-folio fork's clone): ```bash -$ bundle exec jekyll build --lsi --destination $HOME/repo/publishing-source +$ bundle exec jekyll build --destination $HOME/repo/publishing-source ``` This will instruct jekyll to deploy the website under `$HOME/repo/publishing-source`. @@ -176,7 +183,7 @@ In its default configuration, al-folio will copy the top-level `README.md` to th **Note:** Do _not_ run `jekyll clean` on your publishing source repo as this will result in the entire directory getting deleted, irrespective of the content of `keep_files` in `_config.yml`. -### Upgrading from a previous version +## Upgrading from a previous version If you installed **al-folio** as described above, you can configure a [GitHub action](https://github.com/AndreasAugustin/actions-template-sync) to automatically sync your repository with the latest version of the theme. diff --git a/README.md b/README.md index 739a185f4198..d6c031e02045 100644 --- a/README.md +++ b/README.md @@ -143,6 +143,8 @@ Feel free to add your own page(s) by sending a PR. + + @@ -168,7 +170,8 @@ Score Based Methods (NeurIPS: 2022)
Medical Robotics Junior Faculty Forum (ISMR: 2023)
Beyond Vision: Physics meets AI (ICIAP: 2023)
-Workshop on Diffusion Models (NeurIPS: 2023) +Workshop on Diffusion Models (NeurIPS: 2023)
+Workshop on Structured Probabilistic Inference & Generative Modeling (ICML: 2023, 2024) diff --git a/_bibliography/papers.bib b/_bibliography/papers.bib index f6d8b6bc4505..bf532eb5b01f 100644 --- a/_bibliography/papers.bib +++ b/_bibliography/papers.bib @@ -36,9 +36,10 @@ @article{einstein1950meaning @article{PhysRev.47.777, abbr={PhysRev}, title={Can Quantum-Mechanical Description of Physical Reality Be Considered Complete?}, - author={Einstein, A. and Podolsky, B. and Rosen, N.}, + author={Einstein*†, A. and Podolsky*, B. and Rosen*, N.}, abstract={In a complete theory there is an element corresponding to each element of reality. A sufficient condition for the reality of a physical quantity is the possibility of predicting it with certainty, without disturbing the system. In quantum mechanics in the case of two physical quantities described by non-commuting operators, the knowledge of one precludes the knowledge of the other. Then either (1) the description of reality given by the wave function in quantum mechanics is not complete or (2) these two quantities cannot have simultaneous reality. Consideration of the problem of making predictions concerning a system on the basis of measurements made on another system that had previously interacted with it leads to the result that if (1) is false then (2) is also false. One is thus led to conclude that the description of reality as given by a wave function is not complete.}, journal={Phys. Rev.}, + location={New Jersey}, volume={47}, issue={10}, pages={777--780}, @@ -53,6 +54,9 @@ @article{PhysRev.47.777 altmetric={248277}, dimensions={true}, google_scholar_id={qyhmnyLat1gC}, + video={https://www.youtube-nocookie.com/embed/aqz-KE-bpKQ}, + additional_info={. *More Information* can be [found here](https://github.com/alshedivat/al-folio/)}, + annotation={* Example use of superscripts
† Albert Einstein}, selected={true} } @@ -83,11 +87,28 @@ @article{einstein1905electrodynamics year={1905} } +@Article{einstein1905photoelectriceffect, + bibtex_show={true}, + abbr={Ann. Phys.}, + title="{{\"U}ber einen die Erzeugung und Verwandlung des Lichtes betreffenden heuristischen Gesichtspunkt}", + author={Albert Einstein}, + abstract={This is the abstract text.}, + journal={Ann. Phys.}, + volume={322}, + number={6}, + pages={132--148}, + year={1905}, + doi={10.1002/andp.19053220607}, + award={Albert Einstein receveid the **Nobel Prize in Physics** 1921 *for his services to Theoretical Physics, and especially for his discovery of the law of the photoelectric effect*}, + award_name={Nobel Prize} +} + @book{przibram1967letters, bibtex_show={true}, title={Letters on wave mechanics}, author={Einstein, Albert and Schrödinger, Erwin and Planck, Max and Lorentz, Hendrik Antoon and Przibram, Karl}, year={1967}, publisher={Vision}, - preview={wave-mechanics.gif} + preview={wave-mechanics.gif}, + abbr={Vision} } diff --git a/_config.yml b/_config.yml index 6a081d882971..41722542c351 100644 --- a/_config.yml +++ b/_config.yml @@ -49,9 +49,12 @@ rss_icon: true navbar_fixed: true footer_fixed: true +search_enabled: true +socials_in_search: true +bib_search: true # Dimensions -max_width: 800px +max_width: 930px # TODO: add layout settings (single page vs. multi-page) @@ -67,6 +70,7 @@ og_image: # The site-wide (default for all links) Open Graph preview image # Social integration # ----------------------------------------------------------------------------- +acm_id: # your dl.acm.org/profile/id blogger_url: # your blogger URL bluesky_url: # your bluesky URL discord_id: # your discord id (18-digit unique numerical identifier) @@ -126,6 +130,7 @@ blog_name: Wizja Komputerowa # blog_name will be displayed in your blog page blog_nav_title: blog # your blog must have a title for it to be displayed in the nav bar blog_description: wszystko o computer vision i sztucznej inteligencji permalink: /blog/:year/:title/ +lsi: false # produce an index for related posts # Pagination pagination: @@ -241,8 +246,10 @@ plugins: - jekyll-link-attributes - jekyll-minifier - jekyll-paginate-v2 + - jekyll-regex-replace - jekyll/scholar - jekyll-sitemap + - jekyll-tabs - jekyll-toc - jekyll-twitter-plugin - jemoji @@ -262,7 +269,7 @@ sass: # ----------------------------------------------------------------------------- jekyll-minifier: - exclude: ["robots.txt"] + exclude: ["robots.txt", "assets/js/search/*.js"] uglifier_args: harmony: true @@ -321,7 +328,28 @@ enable_publication_badges: # Filter out certain bibtex entry keywords used internally from the bib output filtered_bibtex_keywords: - [abbr, abstract, altmetric, arxiv, bibtex_show, blog, code, html, pdf, poster, preview, selected, slides, supp, video, website] + [ + abbr, + abstract, + additional_info, + altmetric, + annotation, + arxiv, + award, + award_name, + bibtex_show, + blog, + code, + html, + pdf, + poster, + preview, + selected, + slides, + supp, + video, + website, + ] # Maximum number of authors to be shown for each publication (more authors are visible on click) max_author_limit: 3 # leave blank to always show all authors @@ -396,72 +424,188 @@ enable_progressbar: true # enables a horizontal progress bar linked to # Library versions # ----------------------------------------------------------------------------- -bootstrap-table: - version: "1.22.1" -chartjs: - version: "4.4.1" -d3: - version: "7.8.5" - integrity: "sha256-1rA678n2xEx7x4cTZ5x4wpUCj6kUMZEZ5cxLSVSFWxw=" -diff2html: - version: "3.4.47" - integrity: - css: "sha256-IMBK4VNZp0ivwefSn51bswdsrhk0HoMTLc2GqFHFBXg=" - js: "sha256-eU2TVHX633T1o/bTQp6iIJByYJEtZThhF9bKz/DcbbY=" -echarts: - version: "5.4.3" - integrity: - library: "sha256-EVZCmhajjLhgTcxlGMGUBtQiYULZCPjt0uNTFEPFTRk=" - dark_theme: "sha256-UmFIP/4VvOqBDIl2QWl1HBuAJ1XWs/iFZxT5yJRZOKo=" -highlightjs: - version: "11.9.0" - integrity: - css: - light: "sha256-Oppd74ucMR5a5Dq96FxjEzGF7tTw2fZ/6ksAqDCM8GY=" - dark: "sha256-nyCNAiECsdDHrr/s2OQsp5l9XeY2ZJ0rMepjCT2AkBk=" -imagesloaded: - version: "5.0.0" - integrity: "sha256-htrLFfZJ6v5udOG+3kNLINIKh2gvoKqwEhHYfTTMICc=" -img-comparison-slider: - version: "8.0.6" -jquery: - version: "3.6.0" - integrity: "sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" -leaflet: - version: "1.9.4" - integrity: - css: "sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY=" - js: "sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo=" -mathjax: - version: "3.2.0" -masonry: - version: "4.2.2" - integrity: "sha256-Nn1q/fx0H7SNLZMQ5Hw5JLaTRZp0yILA/FRexe19VdI=" -mdb: - version: "4.20.0" - integrity: - css: "sha256-jpjYvU3G3N6nrrBwXJoVEYI/0zw8htfFnhT9ljN3JJw=" - js: "sha256-NdbiivsvWt7VYCt6hYNT3h/th9vSTL4EDWeGs5SN3DA=" -medium_zoom: - version: "1.1.0" - integrity: "sha256-ZgMyDAIYDYGxbcpJcfUnYwNevG/xi9OHKaR/8GK+jWc=" -mermaid: - version: "10.7.0" - integrity: "sha256-TtLOdUA8mstPoO6sGvHIGx2ceXrrX4KgIItO06XOn8A=" -swiper: - version: "11.0.5" - integrity: - css: "sha256-yUoNxsvX+Vo8Trj3lZ/Y5ZBf8HlBFsB6Xwm7rH75/9E=" - js: "sha256-BPrwikijIybg9OQC5SYFFqhBjERYOn97tCureFgYH1E=" -vega: - version: "5.27.0" - integrity: "sha256-Yot/cfgMMMpFwkp/5azR20Tfkt24PFqQ6IQS+80HIZs=" -vega-embed: - version: "6.24.0" - integrity: "sha256-FPCJ9JYCC9AZSpvC/t/wHBX7ybueZhIqOMjpWqfl3DU=" -vega-lite: - version: "5.16.3" - integrity: "sha256-TvBvIS5jUN4BSy009usRjNzjI1qRrHPYv7xVLJyjUyw=" +# Add the url, version and integrity hash of the libraries you use in your site. +# The integrity hash is used to ensure that the library is not tampered with. +# Integrity hashes not provided by the libraries were generated using https://www.srihash.org/ +third_party_libraries: + download: false # if true, download the versions of the libraries specified below and use the downloaded files + bootstrap-table: + integrity: + css: "sha256-uRX+PiRTR4ysKFRCykT8HLuRCub26LgXJZym3Yeom1c=" + js: "sha256-4rppopQE9POKfukn2kEvhJ9Um25Cf6+IDVkARD0xh78=" + url: + css: "https://cdn.jsdelivr.net/npm/bootstrap-table@{{version}}/dist/bootstrap-table.min.css" + js: "https://cdn.jsdelivr.net/npm/bootstrap-table@{{version}}/dist/bootstrap-table.min.js" + version: "1.22.4" + chartjs: + integrity: + js: "sha256-0q+JdOlScWOHcunpUk21uab1jW7C1deBQARHtKMcaB4=" + url: + js: "https://cdn.jsdelivr.net/npm/chart.js@{{version}}/dist/chart.umd.min.js" + version: "4.4.1" + d3: + integrity: + js: "sha256-1rA678n2xEx7x4cTZ5x4wpUCj6kUMZEZ5cxLSVSFWxw=" + url: + js: "https://cdn.jsdelivr.net/npm/d3@{{version}}/dist/d3.min.js" + version: "7.8.5" + diff2html: + integrity: + css: "sha256-IMBK4VNZp0ivwefSn51bswdsrhk0HoMTLc2GqFHFBXg=" + js: "sha256-eU2TVHX633T1o/bTQp6iIJByYJEtZThhF9bKz/DcbbY=" + url: + css: "https://cdn.jsdelivr.net/npm/diff2html@{{version}}/bundles/css/diff2html.min.css" + js: "https://cdn.jsdelivr.net/npm/diff2html@{{version}}/bundles/js/diff2html-ui.min.js" + version: "3.4.47" + echarts: + integrity: + js: + library: "sha256-QvgynZibb2U53SsVu98NggJXYqwRL7tg3FeyfXvPOUY=" + dark_theme: "sha256-sm6Ui9w41++ZCWmIWDLC18a6ki72FQpWDiYTDxEPXwU=" + url: + js: + library: "https://cdn.jsdelivr.net/npm/echarts@{{version}}/dist/echarts.min.js" + dark_theme: "https://cdn.jsdelivr.net/npm/echarts@{{version}}/theme/dark-fresh-cut.js" + version: "5.5.0" + google_fonts: + url: + fonts: "https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Roboto+Slab:100,300,400,500,700|Material+Icons&display=swap" + highlightjs: + integrity: + css: + light: "sha256-Oppd74ucMR5a5Dq96FxjEzGF7tTw2fZ/6ksAqDCM8GY=" + dark: "sha256-nyCNAiECsdDHrr/s2OQsp5l9XeY2ZJ0rMepjCT2AkBk=" + url: + css: + light: "https://cdn.jsdelivr.net/npm/highlight.js@{{version}}/styles/github.min.css" + dark: "https://cdn.jsdelivr.net/npm/highlight.js@{{version}}/styles/github-dark.min.css" + version: "11.9.0" + imagesloaded: + integrity: + js: "sha256-htrLFfZJ6v5udOG+3kNLINIKh2gvoKqwEhHYfTTMICc=" + url: + js: https://cdn.jsdelivr.net/npm/imagesloaded@{{version}}/imagesloaded.pkgd.min.js + version: "5.0.0" + img-comparison-slider: + integrity: + css: "sha256-3qTIuuUWIFnnU3LpQMjqiXc0p09rvd0dmj+WkpQXSR8=" + js: "sha256-EXHg3x1K4oIWdyohPeKX2ZS++Wxt/FRPH7Nl01nat1o=" + map: "sha256-3wfqS2WU5kGA/ePcgFzJXl5oSN1QsgZI4/edprTgX8w=" + url: + css: "https://cdn.jsdelivr.net/npm/img-comparison-slider@{{version}}/dist/styles.min.css" + js: "https://cdn.jsdelivr.net/npm/img-comparison-slider@{{version}}/dist/index.min.js" + map: "https://cdn.jsdelivr.net/npm/img-comparison-slider@{{version}}/dist/index.js.map" + version: "8.0.6" + jquery: + integrity: + js: "sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" + url: + js: "https://cdn.jsdelivr.net/npm/jquery@{{version}}/dist/jquery.min.js" + version: "3.6.0" + leaflet: + integrity: + css: "sha256-q9ba7o845pMPFU+zcAll8rv+gC+fSovKsOoNQ6cynuQ=" + js: "sha256-MgH13bFTTNqsnuEoqNPBLDaqxjGH+lCpqrukmXc8Ppg=" + js_map: "sha256-YAoQ3FzREN4GmVENMir8vgHHypC0xfSK3CAxTHCqx1M=" + local: + images: "images/" + url: + css: "https://cdn.jsdelivr.net/npm/leaflet@{{version}}/dist/leaflet.min.css" + images: "https://cdn.jsdelivr.net/npm/leaflet@{{version}}/dist/images/" + js: "https://cdn.jsdelivr.net/npm/leaflet@{{version}}/dist/leaflet.min.js" + js_map: "https://cdn.jsdelivr.net/npm/leaflet@{{version}}/dist/leaflet.js.map" + version: "1.9.4" + mathjax: + integrity: + js: "sha256-rjmgmaB99riUNcdlrDtcAiwtLIojSxNyUFdl+Qh+rB4=" + local: + fonts: "output/chtml/fonts/woff-v2/" + url: + fonts: "https://cdn.jsdelivr.net/npm/mathjax@{{version}}/es5/output/chtml/fonts/woff-v2/" + js: "https://cdn.jsdelivr.net/npm/mathjax@{{version}}/es5/tex-mml-chtml.min.js" + version: "3.2.0" + masonry: + integrity: + js: "sha256-Nn1q/fx0H7SNLZMQ5Hw5JLaTRZp0yILA/FRexe19VdI=" + url: + js: "https://cdn.jsdelivr.net/npm/masonry-layout@{{version}}/dist/masonry.pkgd.min.js" + version: "4.2.2" + mdb: + integrity: + css: "sha256-jpjYvU3G3N6nrrBwXJoVEYI/0zw8htfFnhT9ljN3JJw=" + css_map: "sha256-iYYMNfsJdVZjvsebJulg09miBXM4/GMTJgv1u5EZFFM=" + js: "sha256-NdbiivsvWt7VYCt6hYNT3h/th9vSTL4EDWeGs5SN3DA=" + js_map: "sha256-UPgyn4YNsT0khkBK5553QwhnlbTlU0aa+igyc6qP1bE=" + url: + css: "https://cdn.jsdelivr.net/npm/mdbootstrap@{{version}}/css/mdb.min.css" + css_map: "https://cdn.jsdelivr.net/npm/mdbootstrap@{{version}}/css/mdb.min.css.map" + js: "https://cdn.jsdelivr.net/npm/mdbootstrap@{{version}}/js/mdb.min.js" + js_map: "https://cdn.jsdelivr.net/npm/mdbootstrap@{{version}}/js/mdb.min.js.map" + version: "4.20.0" + medium_zoom: + integrity: + js: "sha256-ZgMyDAIYDYGxbcpJcfUnYwNevG/xi9OHKaR/8GK+jWc=" + url: + js: "https://cdn.jsdelivr.net/npm/medium-zoom@{{version}}/dist/medium-zoom.min.js" + version: "1.1.0" + mermaid: + integrity: + js: "sha256-TtLOdUA8mstPoO6sGvHIGx2ceXrrX4KgIItO06XOn8A=" + url: + js: "https://cdn.jsdelivr.net/npm/mermaid@{{version}}/dist/mermaid.min.js" + version: "10.7.0" + polyfill: + url: + js: "https://cdnjs.cloudflare.com/polyfill/v{{version}}/polyfill.min.js?features=es6" + version: "3" + pseudocode: + integrity: + css: "sha256-VwMV//xgBPDyRFVSOshhRhzJRDyBmIACniLPpeXNUdc=" + js: "sha256-aVkDxqyzrB+ExUsOY9PdyelkDhn/DfrjWu08aVpqNlo=" + url: + css: "https://cdn.jsdelivr.net/npm/pseudocode@{{version}}/build/pseudocode.min.css" + js: "https://cdn.jsdelivr.net/npm/pseudocode@{{version}}/build/pseudocode.min.js" + version: "2.4.1" + swiper: + integrity: + css: "sha256-yUoNxsvX+Vo8Trj3lZ/Y5ZBf8HlBFsB6Xwm7rH75/9E=" + js: "sha256-BPrwikijIybg9OQC5SYFFqhBjERYOn97tCureFgYH1E=" + map: "sha256-lbF5CsospW93otqvWOIbbhj80CjazrZXvamD7nC7TBI=" + url: + css: "https://cdn.jsdelivr.net/npm/swiper@{{version}}/swiper-bundle.min.css" + js: "https://cdn.jsdelivr.net/npm/swiper@{{version}}/swiper-element-bundle.min.js" + map: "https://cdn.jsdelivr.net/npm/swiper@{{version}}/swiper-element-bundle.min.js.map" + version: "11.0.5" + swiper-map: + integrity: + js: "sha256-hlZaH8ySXX97bZaetnrtYlKuhx3oEXFz/s2IXchu6vk=" + url: + js: "https://cdn.jsdelivr.net/npm/swiper@11.1.0/swiper-element-bundle.min.js.map" + version: "11.0.5" + vega: + integrity: + js: "sha256-Yot/cfgMMMpFwkp/5azR20Tfkt24PFqQ6IQS+80HIZs=" + js_map: "sha256-z0x9ICA65dPkZ0JVa9wTImfF6n7AJsKc6WlFE96/wNA=" + url: + js: "https://cdn.jsdelivr.net/npm/vega@{{version}}/build/vega.min.js" + js_map: "https://cdn.jsdelivr.net/npm/vega@{{version}}/build/vega.min.js.map" + version: "5.27.0" + vega-embed: + integrity: + js: "sha256-FPCJ9JYCC9AZSpvC/t/wHBX7ybueZhIqOMjpWqfl3DU=" + js_map: "sha256-VBbfSEFYSMdX/rTdGrONEHNP6BprCB7H/LpMMNt/cPA=" + url: + js: "https://cdn.jsdelivr.net/npm/vega-embed@{{version}}/build/vega-embed.min.js" + js_map: "https://cdn.jsdelivr.net/npm/vega-embed@{{version}}/build/vega-embed.min.js.map" + version: "6.24.0" + vega-lite: + integrity: + js: "sha256-TvBvIS5jUN4BSy009usRjNzjI1qRrHPYv7xVLJyjUyw=" + js_map: "sha256-l2I4D5JC23Ulsu6e3sKVe5AJ+r+DFkzkKnZS8nUGz28=" + url: + js: "https://cdn.jsdelivr.net/npm/vega-lite@{{version}}/build/vega-lite.min.js" + js_map: "https://cdn.jsdelivr.net/npm/vega-lite@{{version}}/build/vega-lite.min.js.map" + version: "5.16.3" # ----------------------------------------------------------------------------- # Get external JSON data diff --git a/_data/repositories.yml b/_data/repositories.yml index b41c277065e4..fb5334a9d40c 100644 --- a/_data/repositories.yml +++ b/_data/repositories.yml @@ -1,5 +1,8 @@ github_users: - - Szymok + - torvalds + - alshedivat + +repo_description_lines_max: 2 github_repos: - Szymok/etl-log-activity diff --git a/_data/venues.yml b/_data/venues.yml index 6c16ad5dcbdf..41963201fba1 100644 --- a/_data/venues.yml +++ b/_data/venues.yml @@ -4,3 +4,6 @@ "PhysRev": url: https://journals.aps.org/ + +"Vision": + color: "#009f36" diff --git a/_includes/citation.liquid b/_includes/citation.liquid new file mode 100644 index 000000000000..35bd9e378d52 --- /dev/null +++ b/_includes/citation.liquid @@ -0,0 +1,26 @@ +
+
+
+ +If you found this useful, please cite this as: + +{% capture citation_quote -%} +> {{ site.last_name }}, {{ site.first_name }}{% if site.middle_name %} {{ site.middle_name }}{% endif %} ({{ page.date | date: "%b %Y" }}). {{ page.title }}. {% if site.title != 'blank' %}{{ site.title }}. {% endif %}{{ site.url }}. +{%- endcapture %} +{{ citation_quote | markdownify }} + +

or as a BibTeX entry:

+ +{% capture citation_code -%} +```bibtex +@article{ {{- site.last_name | downcase }}{{ page.date | date: "%Y" }}{{ page.title | slugify }}, + title = { {{- page.title -}} }, + author = { {{- site.last_name }}, {{ site.first_name }}{% if site.middle_name %} {{ site.middle_name }}{% endif -%}}, + {%- if site.title != 'blank' %}journal = { {{- site.title -}} },{% endif %} + year = { {{- page.date | date: "%Y" -}} }, + month = { {{- page.date | date: "%b" -}} }, + url = { {{- site.url }}{{ page.url -}} } +} +``` +{%- endcapture %} +{{ citation_code | markdownify }} diff --git a/_includes/footer.liquid b/_includes/footer.liquid index 7541c96ca834..feecc1bb0f7b 100644 --- a/_includes/footer.liquid +++ b/_includes/footer.liquid @@ -15,6 +15,10 @@ {% else %}