Commit Graph

264 Commits

Author SHA1 Message Date
George
55a2685683
Unify jsonresume and RenderCV CVs solutions (#3462)
Fixes #2787 as an alternative to #2969. It was getting too cumbersome to
have 2 different data sources for CV and also a lot of different layout
files, so I decided to unify them all.
Main changes:
- synchronized the information inside RenderCV (`_data/cv.yml`) and
JSONResume (`assets/json/resume.json`)
- unified layout files for CV information
- added the option to set the "data source" in the CV page

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-23 12:36:14 -03:00
LucasLiu6
d5fce890c4
Add calendar iframe and togglAdd calendar iframe and toggle buttone button (#3144)
### Description

This PR adds a Google Calendar integration feature as described in issue
#872. Users can embed their own calendar using an iframe configured via
`_config.yml`, and the calendar is toggleable through a responsive
button. This component is styled to visually blend into the theme and
supports responsive display across desktop and mobile.

### Changes
- Added `calendar.liquid` in `_includes`
- Modified `about.md` to include the toggleable calendar block
- Introduced `calendar` config section in `_config.yml`
- Appended calendar-related styles in `_sass/_base.scss`

### Configuration
To enable this feature, add the following to `_config.yml`:
```yaml
calendar:
  enabled: true
  calendar_id: your_calendar_id@group.calendar.google.com
  timezone: UTC
  style: "border:0; width:100%; height:600px;"

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
Co-authored-by: dodo <349507644@qq.com>
Co-authored-by: George <31376482+george-gca@users.noreply.github.com>
Co-authored-by: George Araújo <george.gcac@gmail.com>
2026-01-17 20:36:16 -03:00
Jiahao Zhang
0fe3c84636
Add course schedule feature to teaching page (#2258) (#3147)
Implements the course schedule feature requested in issue
#[2258](https://github.com/alshedivat/al-folio/issues/2258).

This PR adds a new course schedule feature to the al-folio theme,
allowing academics to easily create and display structured course
information.

**Changes:**
- Added a `courses` collection to organize and display academic courses
- Created course layout and display templates with responsive design
- Implemented organization by year and term with automatic sorting
- Added support for weekly schedule with topics and course materials
- Simplified documentation with a README for course creation

This feature makes it easier for academics to showcase their teaching
materials with a consistent, organized display of course schedules,
helping users create professional teaching pages without custom
implementation.

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
Co-authored-by: George Araújo <george.gcac@gmail.com>
2026-01-17 18:43:47 -03:00
George
43ec3db09c
Changed to use jekyll-socials plugin (#3439)
Signed-off-by: George Araújo <george.gcac@gmail.com>
2026-01-14 19:10:50 -03:00
Dominik Fuchß
67bd1b6210
Make external service URLs configurable for repository page (#3422)
## Description

This PR makes the URLs for external services used on the repository page
configurable in `_config.yml`. This allows users to self-host these
services for better reliability, privacy, and customization.

## Changes

- Added `external_services` configuration section in `_config.yml` with:
- `github_readme_stats_url` (default:
`https://github-readme-stats.vercel.app`)
- `github_profile_trophy_url` (default:
`https://github-profile-trophy.vercel.app`)
- Updated repository template files to use configurable URLs:
  - `_includes/repository/repo_user.liquid`
  - `_includes/repository/repo.liquid`
  - `_includes/repository/repo_trophies.liquid`
- Added documentation in `CUSTOMIZE.md` explaining:
- Why self-hosting is recommended (default services may have
availability issues)
  - How to configure custom service URLs
  - Links to the service repositories for deployment instructions

## Resolves

Resolves #3388 - This makes it possible to configure self-hosted
versions of these services, giving users full control over the external
services used for displaying GitHub statistics and trophies.

## Testing

- Verified that default configuration still works with original service
URLs
- Confirmed that URLs are properly interpolated in all template files
- Documentation clearly explains the configuration options
2026-01-07 11:37:24 -03:00
Caio Petrucci Rosa
e10739af87
Fix typo in Bootstrap small column class usage (#3421)
This PR fixes a recurring typo in multiple Liquid templates where the
Bootstrap class `cl-sm` is used instead of `col-sm`.

Because of this typo, the `col-sm` styling was not being applied. All
instances have been corrected.
2026-01-04 18:06:56 -03:00
Lukas Schirren
33017e7952
Add cv PDF link to social icons (#3240)
Fixes issue #3243 

Add CV PDF link to social icons

- Added CV icon to social media links section
- CV appears after LinkedIn icon in the contact section
- Uses academicons CV symbol for consistent academic styling
- Links to `/assets/pdf/CV_Schirren.pdf` and opens in new tab
- Updated `_includes/social.liquid` to handle `cv_pdf` field
- Updated `_data/socials.yml` with CV configuration
- Updated `_scripts/search.liquid.js` with cv search functionality
2025-11-16 22:39:18 -03:00
Riasat Sheikh
4086784bc7
add: arXiv social (#3191)
addresses the question #3176 and issue #3190

---------

Co-authored-by: George <31376482+george-gca@users.noreply.github.com>
2025-11-16 22:31:18 -03:00
Sayyed Mehwish
b72ceeedc9
changed wrong loop variable (#3342) 2025-11-07 12:54:01 -08:00
Scott Lee Chua
db2a1d1b19
Socials icons: Check if rss_icon: false (#3282)
Partially addresses issue #3280.

Currently, the RSS feed icon in the socials section will show whenever
`rss_icon` in `data/_socials.yml` has a value --- **even if that value
is `false`**.

Unlike the other social settings, which are empty by default, for
`rss_icon` the default setting is `true`.

So it makes sense that a user might expect `rss_icon: false` to disable
said icon.

This PR just adds a check if the value is `false` and hides the icon if
so.
2025-09-01 12:22:19 -03:00
Simmo Saan
859a245f65
Revert duplicate Google Analytics (#3287)
This reverts PR #2962. The inline script here is exactly the same as the
`/assets/js/google-analytics-setup.js` sourced on the following line, so
Google Analytics is being triggered twice.

It seems that #2962 originally added this because liquid templating of
the setup script didn't work (#3095). However, this was then properly
fixed in #3117.
2025-09-01 10:57:16 -03:00
Sundar Gurumurthy
cf8e02f98b
Make Giscus light and dark themes configurable via _config.yml (#3270)
Currently, the `site.giscus.theme` option is ignored because
`giscus.liquid` always computes the theme as light/dark based on the
current site theme. This PR allows users to configure separate light and
dark giscus themes in `_config.yml`, which will support dynamic updates
when switching between light, dark, or system themes.

Fixes #3269
2025-08-25 18:17:14 -03:00
Juan Paulo Pérez-Tejada
829e7b7134
Add Academia.edu support to social media integrations (#3157)
## Description

This pull request adds support for Academia.edu profiles to the al-folio
social media integrations. Academia.edu is widely used by academics to
share and discover research,.

The changes are minimal and well-contained:
1. Added configuration options in socials.yml for Academia.edu with
organization and username fields
2. Updated social.liquid to handle the new social integration using the
Academicons font which already includes support for Academia.edu

## Changes

The implementation uses Academicons, which already includes the
Academia.edu icon (`ai-academia`), making this addition a natural fit
for the theme.

Unlike some other social media links that only require a single ID or
URL, Academia.edu profiles include both an organization (subdomain) and
a username in the format:
`https://[organization].academia.edu/[username]`. The implemented
solution supports this pattern by adding two parameters in the
socials.yml file.

## Why this is important

Academia.edu is a popular platform used by millions of researchers
worldwide to share their work. Adding support for it in the al-folio
theme aligns with the theme's academic focus and enhances its utility
for scholarly users. Many academics maintain both personal websites and
Academia.edu profiles, and being able to link between them provides
better visibility for their research.

The Academicons font already includes support for Academia.edu, so
adding this feature is a natural extension that makes use of existing
resources in the theme.

## Testing

The changes have been tested locally with a sample Academia.edu profile,
and the icon displays correctly alongside other social media icons. The
changes are minimal and don't affect any existing functionality.

## Screenshot

<img width="991" alt="image"
src="https://github.com/user-attachments/assets/15468b67-3002-44ce-aa25-22bc10766664"
/>
2025-08-25 00:16:49 -03:00
Jan van Gemert
a7f486fa7a
keep dark mode inside the (site.enable_darkmode) conditional (#3233)
Hi,
I noticed some weird behavior when I turned dark mode off (some of the
text seemed to disappear, it became white :) )

I traced it to: {% if site.enable_darkmode %} in head.liquid
where some darkmode features are place before the if statement.

When putting it inside the if statement then the weird behavior was
solved; see the pull request here :)

Cheers,
Jan
2025-07-21 11:27:21 -03:00
Abhilesh Dhawanjewar
47b982bd0d
Add sidenote examples, related posts and giscus to distill posts (#3103)
This PR adds a few stylistic improvements to the distill-style blog
posts:

- Update distill blog post example to showcase sidenotes as an
alternative to styles in PR #3077
- Showcase equations in sidenotes (closes #1242)
- Add `overrides.js` to match footnotes and citation styles with global
theme styling
- Add "related posts" sections if enabled to distill style posts
- Add "giscus" section if enabled to distill style posts



https://github.com/user-attachments/assets/b19a9cd9-779d-4d89-a4fb-eb14fb384480
2025-07-16 15:07:42 -03:00
George
2247ec3bf2
Fix socials (#3241)
Signed-off-by: George Araújo <george.gcac@gmail.com>
2025-07-16 14:45:23 -03:00
Guillaume Dalle
72eb0a345d
Add HAL id to socials (#3206)
Fixes #3205
2025-07-16 12:24:37 -03:00
George
351dcb985e
Fixed liquid variables in some js files (#3117)
Fixes #3095

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2025-04-09 11:36:16 -03:00
George
f68e88c5ef
Added support for plotly js (#3097)
Only now I realized that the [previous
support](https://alshedivat.github.io/al-folio/blog/2021/distill/#interactive-plots)
for [plotly](https://plotly.com/) was enabled by exporting an HTML from
python code. This adds support for
[plotly.js](https://plotly.com/javascript/).

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2025-03-26 17:16:03 -03:00
George
d53297f256
Fix zoom in bibliography images (#3057)
Fixes #2668

Signed-off-by: George Araújo <george.gcac@gmail.com>
2025-03-11 11:34:58 -03:00
Nikos Kontogeorgis
74beacb274
Refactor footer content (#3041)
Refactor footer content into a reusable variable for cleaner code
2025-03-01 21:47:22 -03:00
George
854598e139
Moved comment in repo.liquid 2025-02-14 13:21:25 -03:00
George
cbe03ec301
Moved comment in repo_user.liquid 2025-02-14 13:21:18 -03:00
Jiaye Wu
7719863ea0
fix language-not-found issues on repo page with simplified and traditional Chinese (#3015)
The author of github-readme-stats uses the non-standard code "cn" for
simplified Chinese, see
[here](https://github.com/anuraghazra/github-readme-stats?tab=readme-ov-file#available-locales).
While for traditional Chinese the author only provides "zh-tw". The
github-readme-stats functions on repo page will break if the user sets
the site language to ALL variants of Chinese except for zh-tw. This hack
is to make all sub-variants of simplified Chinese fall back to "cn" and
all sub-variants of traditional Chinese fall back to "zh-tw".

This patch fixes the problem and has been tested locally & with GitHub
pages.
2025-02-14 13:16:39 -03:00
Soumyaranjan Dash
beeff21ecd
Updated scripts for correctly using gtag. (#2962)
Implementation of Google tag ID to correctly getting tracked requires
further modification in addition to the one line script in the
`_includes/scripts.liquid` file as
```
<script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}"></script>
  <script>
    window.dataLayer = window.dataLayer || [];
    function gtag() {
      dataLayer.push(arguments);
    }
    gtag('js', new Date());

    gtag('config', '{{ site.google_analytics }}');
  </script>
```

I have made the changes and tested it out on my personal webpage to
ensure the tracking in analytics dashboard.
2025-02-09 06:41:20 -08:00
George
0b3f19dfb3
Moved specific information from config to about (#2985)
Moved news and latest posts related information from `_config.yml` to
`_about.md` page.

Signed-off-by: George Araújo <george.gcac@gmail.com>
2025-01-27 17:04:24 -03:00
George
15fc779e7e
Fix external link svg size in related posts 2025-01-23 14:11:20 -03:00
George
8266accd93
Fix related external posts (#2980)
Fixes #2977

Signed-off-by: George Araújo <george.gcac@gmail.com>
2025-01-23 14:05:32 -03:00
George
cecd16d2bd
Added missing newsletter components (#2913)
Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-12-26 16:49:45 -03:00
George
05eb46ac3f
Replaced jekyll-minifier that uses uglifier by terser (#2571)
Hopefully fixes #2548.

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-12-23 14:00:58 -03:00
George
cc0cb3c426
Fixed #2903 2024-12-19 11:52:26 -03:00
George
c5101beae4
Fixed socials in search (#2895)
Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-12-12 16:23:28 -03:00
George
3cdb9e4977
Fixed missing updated references to socials (#2894)
Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-12-12 15:28:42 -03:00
Dominik Fuchß
00249b93c9
Update social.liquid: ensure social[1] is used (#2891)
Fixes #2890 

With the recent updates (v0.13.0) the email badge (social) does not
contain the email anymore.
Some link generations in social.liquid used the old schema
Also updated the handling for mastodon to be aligned to the other social
badges.
2024-12-12 15:18:55 -03:00
George
a9da28e256
Renamed repo-img- to only- to allow setting images for only one theme (#2886)
Closes #930.

We already had classes for this kind of feature, but it was used
specifically for repository information. Just renamed the classes so it
is clear how they can be used.

To use them with markdown, just do it like this:

```markdown
![Only light](assets/img/prof_pic_color.png){: .only-light}
![Only dark](assets/img/prof_pic.jpg){: .only-dark}
```

and with html:

```html
<img
  class="only-light"
  src="assets/img/prof_pic_color.png"
>
<img
  class="only-dark"
  src="assets/img/prof_pic.jpg"
>
```

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-12-12 12:45:04 -03:00
George
e452f1a60f
Moved socials config to _data/socials.yml (#2885)
Fixes #2882, added support for
[scholar-icons](https://github.com/louisfacun/scholar-icons) and
[LeetCode](https://leetcode.com/).

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-12-12 12:44:43 -03:00
George
f23e35e043
New image components (image galleries) (#2877)
Added support for multiple image galleries, and created a sample post
showing how to enable and use them.

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-12-10 19:01:01 -03:00
George
8121ad0269
Fix apostrophe in news title for search (#2879)
Fix #2876 

Weirdly enough, we already escape the title a few lines above the
changed one, but had to escape it again here.

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-12-06 12:20:36 -03:00
George
a09f15fd99
Fix prettier complaints 2024-12-02 15:45:38 -03:00
George
7c22e4800a
Fixed bug in header 2024-11-29 00:09:29 -03:00
George
1c1632c8c9
Page permalink can be an outside url (#2863)
Fixes #2858

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-11-28 15:32:13 -03:00
Guillaume Dalle
c170eaf2d0
Bluesky URL prefix should not be appended (#2856)
This PR modifies

- `_config.yml` to rename `bluesky_url` into `bluesky_id`
- `_includes/social.liquid` to handle the renaming in the display of
social media icons
2024-11-25 14:54:30 -03:00
imsi32
9674cfc8e5
[FIX] Blog Page Navigation (#2841) (#2846)
I tested on my Github page and it worked correctly. Then, copied here. 

Issue: Blog page navigation extends layout of the page in small screens.
Fixes: #2841
2024-11-19 19:03:51 -03:00
Abderrahmane Ait gueni ssaid
b7ee266824
Support for openpanel.dev for analytics (#2822) 2024-11-10 13:28:30 -03:00
Hanyan Yin
587f03a234
fix: Misfunction of wechat_qr in Social Integration (#2831)
Solve the bug issue (#2830)
2024-11-10 13:28:15 -03:00
George
d1b38ee121
Removed hidden char from figure.liquid (#2804)
Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-10-23 12:17:07 -03:00
George
eae72d8719
Standardized spaces for liquid tags (#2802)
Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-10-23 12:04:00 -03:00
Dominik Fuchß
b3f1968422
Fix .webp SrcSet Creation Filter (#2761)
### Pull Request: Fix .webp SrcSet Creation Filter

#### Description

This PR addresses an issue with the filter for creating `.webp` srcsets
introduced in PR #2698. The original filter incorrectly searched for
extensions with a leading period (e.g., ".jpg" and ".png"). As a result,
no matches were found, preventing the srcset from being added to any
figures. This occurred because the split operation removes the period
from the file extensions.

#### Changes Made

- Updated the filter to search for file extensions without the leading
period (e.g., "jpg" and "png").
- Ensured that the resource sets are now correctly created for the
respective file extensions, allowing the `.webp` srcset to function as
intended.

#### Impact

With this change, responsive images will now correctly generate their
srcsets for the appropriate file types, improving image loading
performance and supporting better responsiveness.

#### Fixes

- Fixes #2777

Please review the changes and let me know if there are any further
adjustments needed. Thank you!
2024-10-22 10:42:20 -03:00
Leo
caddec2fcd
feature: figure support url. (#2586)
This PR allows the `figure` to accept url as the src of the`<img>`.
currently, it only supports the relative path.

```
// raw img
<img src="{{ image.url }}" alt="{{ image.description }}">

// assign url to figure                 
{% assign image_url = image.url %}
{% include figure.liquid url=image_url class="img-fluid rounded z-depth-1" zoomable=true %}
```

---------

Signed-off-by: ifuryst <ifuryst@gmail.com>
Co-authored-by: George <31376482+george-gca@users.noreply.github.com>
2024-10-01 10:54:31 -03:00
M. Umar Shahbaz
046545983f
Fixed .webp src creation for svg and other files (#2698)
Added a default srcset in case extension is other than the following:
- .jpg
- .jpeg
- .png
- .tiff
- .gif

fixed #2660
2024-09-13 18:44:42 -03:00