Commit Graph

50 Commits

Author SHA1 Message Date
George 92cebc9bb1
Added support for search (#2415)
Added support for search within the template as suggested in #581. I
decided to go with a client side search based on [Ninja
keys](https://github.com/ssleptsov/ninja-keys), but using [deepdub's
fork](https://github.com/deepdub-ai/ninja-keys) as basis since it
supports fuzzy search.

Had to do a bunch of changes to their code to make it work without using
node to install everything. Also changed to use some colors defined in
our side and using both pages' titles and descriptions for search. Also
had to increase the template max width to better accomodate the new item
in navigation bar.

Missing implementations:
- [ ] One thing I'd love to do (but currently have no idea how) would be
to change the text next to the search button depending on the platform.
For example, if the user is accessing the site on a mac they should use
⌘k instead of ctrl k.
- [x] Test how this looks like (and how it is supposed to work) on
devices with smaller screens
- [x] Support for offline mode

Some screenshots:

---

## Dark version

![Screenshot from 2024-05-13
16-30-12](https://github.com/alshedivat/al-folio/assets/31376482/535acec5-dd7a-48cb-a17f-a295da98b5d3)

![Screenshot from 2024-05-13
16-30-26](https://github.com/alshedivat/al-folio/assets/31376482/6b2d94bb-3981-4252-ae2b-53994b514491)

![Screenshot from 2024-05-13
16-30-36](https://github.com/alshedivat/al-folio/assets/31376482/66262b56-2744-475d-b09f-2cb65210017b)

---

## Light version

![Screenshot from 2024-05-13
16-30-44](https://github.com/alshedivat/al-folio/assets/31376482/a0eec50c-e7ac-4b52-aee8-2050bff05d54)

![Screenshot from 2024-05-13
16-30-50](https://github.com/alshedivat/al-folio/assets/31376482/41d72066-3e68-4ec3-bf3d-140da621f67b)

![Screenshot from 2024-05-13
16-30-55](https://github.com/alshedivat/al-folio/assets/31376482/613fd56e-7180-4373-ab7a-dfed184b5a18)

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-23 23:21:16 -03:00
George eef62a37df
Updated tikzjax hash 2024-05-21 18:47:38 -03:00
Simonwei97 b80a694bb3
feat: add back-to-top button (#2427)
slove #2425 

Demo:

<img width="1643" alt="image"
src="https://github.com/alshedivat/al-folio/assets/119845914/ea73b84b-1d09-4af8-b1ba-6090595f5ab7">

---------

Signed-off-by: simonwei97 <simonwei977@gmail.com>
Signed-off-by: Simonwei97 <119845914+simonwei97@users.noreply.github.com>
2024-05-21 00:20:49 -03:00
George e954d7726b
Fix offline leaflet (#2420)
Fixes #2419 by downloading leaflet images. Also changed the path where
the libraries are downloaded to avoid not downloading files with same
name.

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
2024-05-15 17:56:00 -03:00
George 1c416dbae8
Added support for jekyll-tabs (#2380)
Added support for [jekyll-tabs](https://github.com/Ovski4/jekyll-tabs),
implemented #1977.

Light:


![image](https://github.com/alshedivat/al-folio/assets/31376482/a3efdd92-1c0b-4ce7-8b34-2b052b75351b)

Dark:


![image](https://github.com/alshedivat/al-folio/assets/31376482/d0fb7091-8776-4838-8e70-c07435463e0a)

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
2024-05-02 14:34:48 -03:00
George ba53f89965
Added support for Google Typograms (#2379)
Google [Typograms](https://github.com/google/typograms/) is a
lightweight image format (text/typogram) useful for defining simple
diagrams in technical documentation.


![image](https://github.com/alshedivat/al-folio/assets/31376482/715ba10b-c75d-492b-8869-4ec83d380e50)


![image](https://github.com/alshedivat/al-folio/assets/31376482/935f6ef8-1977-41d0-8797-d226594b82a9)

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
2024-04-30 11:26:56 -03:00
George d6a08c8ca3
Added `pseudocode.js` support (#2344)
Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-04-15 11:21:42 -03:00
George 08d562a104
Offline mode (closes #1181) (#2312)
Created a plugin to tackle #1181. Currently have an issue with tikzjax
since it imports some wasm file from its javascript. The rest should
work as expected.

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
2024-04-08 14:51:28 -03:00
Sam Adam-Day c788a30202
Added "follow system" option to theme toggle (#2261)
The theme toggle button now has a third option, which follows the user's
system preferences.

- In the code there's now a distinction between the theme setting (which
can be "dark", "light" or "system") and the computed theme.
- The theme setting is now stored as the "theme-setting" local storage
variable. Since this is different from the old variable ("theme"), this
will effectively reset all current user themes to the default "system".
Maybe this is not what you want.
- The "system" theme icon is currently a half circle symbol.
- The toggle button now displays the current theme setting, rather than
the next theme setting (as far as I know this is consistent with other
sites which have three theme options).
- `theme.js` is now loaded regardless of `site.enable_darkmode`. This is
because other scripts which were always loaded relied on being able to
determine the theme. `theme.js` no longer initialises the theme itself
though; this only happens when `site.enable_darkmode`.
- When the theme setting is "system", the theme will change immediately
whenever the user changes their system theme.

#2261

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
Co-authored-by: George Araujo <george.gcac@gmail.com>
2024-03-13 22:42:46 -03:00
Sukka 21bc463b77
Replace `polyfill.io` (#2241)
The PR replaces `polyfill.io` inside the template with
`cdnjs.cloudflare.com/polyfill`.

---

`polyfill.io` was acquired by **a China-based CDN company** "Funnull",
see [the announcement from the `polyfill.io` domain owner's
Twitter](https://x.com/JakeDChampion/status/1761315227008643367) and
https://github.com/polyfillpolyfill/polyfill-service/issues/2834.
Despite Funnull's claims of operating in the United States, the
predominance of Simplified Chinese on its website suggests otherwise,
and it turns out that **"Funnull" is notorious for providing service for
the betting and pornography industries**.

[The original creator of the `polyfill.io` has voiced his concern on
Twitter](https://twitter.com/triblondon/status/1761852117579427975). And
since the acquisition, numerous issues have emerged
(https://github.com/polyfillpolyfill/polyfill-service/issues/2835,
https://github.com/polyfillpolyfill/polyfill-service/issues/2838,
https://github.com/alist-org/alist/issues/6100), rendering the
`polyfill.io` service **extremely unstable**. Since then, Fastly
([Announcement](https://community.fastly.com/t/new-options-for-polyfill-io-users/2540))
and Cloudflare
([Announcement](https://blog.cloudflare.com/polyfill-io-now-available-on-cdnjs-reduce-your-supply-chain-risk))
has hosted their own instances of `polyfill.io` service.
2024-03-04 11:37:16 -03:00
Moritz Scherrmann c1f168473f
Add functionality to open external links in jupyter notebooks in new tab (#2233)
See https://github.com/alshedivat/al-folio/pull/2230

---------

Co-authored-by: Scherrmann <scherrmann@bwl.uni-muenchen.de>
2024-02-27 12:25:16 -03:00
George 06bc36762d
Move libs versions to config (#2139)
Moved libs versions and hashes to `_config.yml`.

Fixes #2067.

Deferring everything possible to keep pages loads fast.

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-01-28 19:10:42 -03:00
George ef847825fd
Support for diff2html (#2133)
Added support to display diff code in a prettier way with
[diff2html](https://diff2html.xyz/).


![image](https://github.com/alshedivat/al-folio/assets/31376482/5f93b09c-3850-499a-999b-cb0ae13fddae)

It displays code like [in this
example](https://diff2html.xyz/demo.html).

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-01-28 12:45:20 -03:00
George 8e93db5b67
Advanced image viewers (#2132)
Image slider with [Swiper](https://swiperjs.com/).


![image](https://github.com/alshedivat/al-folio/assets/31376482/9068823c-571a-4d31-8e95-755a40a15ec9)

Image comparison slider with
[img-comparison-slider](https://img-comparison-slider.sneas.io/).


![image](https://github.com/alshedivat/al-folio/assets/31376482/97812477-c13b-43b1-8f0b-cb098462de3c)

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-01-28 12:42:17 -03:00
George f6bb6b5dcb
Vega lite support (#2131)
Added support for [vega lite](https://vega.github.io/vega-lite/) charts.


![image](https://github.com/alshedivat/al-folio/assets/31376482/789c14d3-93b6-4d3f-94a6-7cec1f0f0b59)


![image](https://github.com/alshedivat/al-folio/assets/31376482/17f9021c-08c4-4922-9f97-1046b146a965)

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-01-27 11:14:02 -03:00
George 1492cb9c4e
GeoJSON support (#2130)
Added support for GeoJSON maps.


![image](https://github.com/alshedivat/al-folio/assets/31376482/48e91158-a717-4d01-b6d7-47d45f0580e4)

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-01-27 11:06:49 -03:00
George 4f6fe1a2cf
Added Echarts support (#2129)
Since I added support for chart.js and while doing so found some other
wonderful charting libraries, I thought, why not give support to some
more? So adding support to [Apache
Echarts](https://echarts.apache.org/en/index.html).


![image](https://github.com/alshedivat/al-folio/assets/31376482/088f0932-524f-4fcd-a34b-b132f569a675)


![image](https://github.com/alshedivat/al-folio/assets/31376482/36bfe4f8-a9d1-4b6d-a912-fb40ba3b5337)

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-01-27 10:34:44 -03:00
George 3ec0ff4a46
Added integrity check to mermaid.js 2024-01-27 00:41:07 -03:00
George a7d6b37d8f
Added support for Chart.js (#2126)
Solved #460.


![image](https://github.com/alshedivat/al-folio/assets/31376482/ce65dbe2-031e-4208-b374-08ec89beaaca)

---------

Signed-off-by: George Araújo <george.gcac@gmail.com>
2024-01-26 02:16:14 -03:00
Maruan beb6f27d59
format code with prettier.io (#2048)
summary:
- adds prettier formatter configuration
- formats the entire repo using prettier, ignoring minified files
(`*.min.css`) and heavy generated html
- changes extensions of all `.html` files to `.liquid`, which is more
correct and necessary for prettier to work correctly
- replaces "%-" and "-%" with just "%" — manual liquid formatting using
minus signs is superfluous since we are compressing and minifying the
code anyway
- adds CI action for running prettier check on PR and pushes to master
2024-01-10 00:10:51 -05:00
George 92ac10ad82
Changed mermaid support in template (#1992)
Fix #1609

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
Co-authored-by: Maruan Al-Shedivat <maruan@genesistherapeutics.ai>
2024-01-02 18:35:57 -03:00
Maruan 51d367c765
Make publication thumbnails optional + fix small layout bugs (#1797) 2023-10-05 00:28:44 -04:00
George 8889e36b43
Fixed weird bib btn behavior (#1776)
Fixes #1774 by reverting mdb usage to cdn. Weirdly enough, when using
from local file it triggers a ripple effect when using `btn` class. It
states in the [official
docs](https://mdbootstrap.com/docs/standard/methods/ripple/) that:

> By default, ripple is added to every button (via .btn class)

Using [this
solution](https://mdbootstrap.com/support/standard/disable-waves-ripple-effect/)
only make this flicking happens faster. Also this does seem to be [an
issue](https://mdbootstrap.com/support/standard/how-to-disable-ripple-effect/)
still in the [latest
version](https://github.com/mdbootstrap/mdb-ui-kit/issues/1505) (even
though we are using an older one).

Signed-off-by: George Araujo <george.gcac@gmail.com>
2023-09-28 17:43:35 -03:00
George 64cf57fab3
Added support to PurgeCSS (#1562)
Tackled #1329 with [PurgeCSS](https://purgecss.com/).

Being talking with @varuniyer about using
[jekyll-uncss](https://github.com/episource/jekyll-uncss) to reduce css
file sizes by ditching unused classes. This approach have 3 main
problems:

1 - have some limitations as pointed
[here](https://github.com/alshedivat/al-folio/issues/1329#issuecomment-1546517327)
2 - last update to
[jekyll-uncss](https://github.com/episource/jekyll-uncss) was about 3
years ago, so it might have a few issues
3 - [uncss](https://github.com/uncss/uncss) haven't seem a new release
in a while, currently [lacking
maintenance](https://github.com/uncss/uncss/issues/459), and using some
deprecated libraries as seem here:

```
npm install -g uncss
npm WARN deprecated request-promise-native@1.0.9: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated w3c-hr-time@1.0.2: Use your platform's native performance.now() and performance.timeOrigin.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
```

I thought about giving PurgeCSS a go, since it has been more [actively
maintaned](https://github.com/FullHuman/purgecss), but
[jekyll-purgecss](https://github.com/mhanberg/jekyll-purgecss) haven't.

For this, I needed to change to use some local libraries instead of
getting them via CDN. The good news is that it is quite effective in
reducing css file sizes. Comparing dir sizes with `du -hs
_site/assets/css/`:

| current | minify | PurgeCSS | PurgeCSS + minify |
| ------- | ------ | -------- | ----------------- |
| 1,1M    | 988K   | 456K     | 420K              |

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
2023-09-28 14:22:42 -03:00
Johannes Hörner cba3ad27fb
add WeChat to socials (#1730)
When the WeChat icon in socials is clicked, a picture of your WeChat QR
code is shown in the center of the screen. The actual picture of your QR
code has to be uploaded.
2023-09-17 15:49:27 -04:00
George 312cbdb4c5
Cache busting for _sass and individual files (#1557)
Addressing #1395 but with a different solution from #1478, using
semantic versioning based on implementation found
[here](https://distresssignal.org/busting-css-cache-with-jekyll-md5-hash).

Implemented a way of calculating the hash for both a single file or
directory. This way we can calculate the hash for when there is a change
in the `_sass` dir, for example, or in the contents of a single file.

Examples of generated outputs of the plugin:
```
/al-folio/assets/css/main.css?d41d8cd98f00b204e9800998ecf8427e
/al-folio/assets/js/theme.js?96d6b3e1c3604aca8b6134c7afdd5db6
/al-folio/assets/js/dark_mode.js?9b17307bb950ffa2e34be0227f53558f
/al-folio/assets/js/no_defer.js?d633890033921b33e0ceb13d22340a9c
/al-folio/assets/js/common.js?acdb9690d7641b2f8d40529018c71a01
/al-folio/assets/js/copy_code.js?c9d9dd48933de3831b3ee5ec9c209cac
/al-folio/assets/img/prof_pic.jpg?974957d202f671e4fa6700c04e68deae
```

Signed-off-by: George Araujo <george.gcac@gmail.com>
2023-07-30 00:14:23 -03:00
Henry.W bdf7bbcb3d
Change analytics script from Panelbear to Cronitor (#1561)
Panelbear is now Cronitor RUM, the old script does not work.
2023-07-15 15:48:50 -03:00
George 8f960bbae6
Fix table color (#1424)
Fix table color when dark mode is default.

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
2023-05-14 22:10:29 -03:00
George 0c0303b185
Moved bootstrap table css to head.html (#1387)
Signed-off-by: George Araujo <george.gcac@gmail.com>
2023-05-01 14:10:33 -03:00
George 641a36405f
Added support for Bootstrap table (#1283)
Added support for [Bootstrap Table](https://bootstrap-table.com/).
Haven't checked the impact on website loading, but I believe [this kind
of table](https://examples.bootstrap-table.com/#welcomes/from-data.html)
is way more useful for blog posts and projects pages.
2023-04-30 23:10:30 -04:00
George bbf1758636
Toc sidebar (#1366)
Implemented #966.


![image](https://user-images.githubusercontent.com/31376482/234411523-b02087d9-a437-4f77-9f54-de5eef122439.png)

---------

Signed-off-by: George Araujo <george.gcac@gmail.com>
2023-04-27 12:46:29 -03:00
George bacddc7821
Implemented copy code button feature (#1267)
Implemented support for copy code button in code blocks (#1262), also updated blog post about code to reflect it.
2023-03-19 17:17:34 -04:00
Rohan Deb Sarkar a9685570e5
Adds Dimensions badge (#1086)
This adds a dimension badge as requested in #987.

This separates the the links from the badges, in case more badges need to be added in the future.
2023-01-08 10:47:25 -05:00
Carlos Morales 08a839c5f5
Add a progress bar to show the scroll position (#934)
This feature adds a horizontal bar under the top menu which tracks the
vertical scroll position. Such a feature can be useful to represent how
much is left to read on the current page more aesthetically.

As this is an optional feature, `enable_progressbar` must be set to
`true` in `_config.yml` to activate the functionality.

I am not the original author of this code. I just made it compatible
with the current version of the template at the time of this commit. The
original code was most likely authored by Pankaj Parashar in this
[post](https://css-tricks.com/reading-position-indicator/) made a few
years before the first inclusion in an `al-folio` site. Then, the code
was adapted for compatibility with the template at Anthony Plantanios'
site. Finally, I did
the last updates to have the code fit the new conventions used in the
project.

This was discussed in #557

Co-authored-by: rohandebsarkar <rohandebsarkar@gmail.com>
2022-10-24 15:08:26 +05:30
Rohan Deb Sarkar 2fadee6afb
Adds support for GA4 Google Analytics (#727)
* Update `analytics.html`

* Update `config.yml`

* Update

* Update
2022-07-26 08:59:57 +05:30
Rohan Deb Sarkar 7afa104f50
Include bootstrap bundle (#756) 2022-07-10 21:51:39 +05:30
Rohan Deb Sarkar 26e41e77c8
Fix scripts (#755) 2022-07-10 21:26:36 +05:30
Rohan Deb Sarkar bb5ef8fafb
Minor changes and fixes (#726) 2022-06-25 19:47:01 -04:00
Viraj Thakkar 77b60dc395
Theme and responsiveness fixes (#509)
* Dark themed cards

* Responsiveness fixes

* added dark stylesheet option

* highlight theme toggle

* added highlight function

* added highlight themes to assets/css

* offline highlight implementation

* Fixes for masonry

* Revert "added highlight themes to assets/css"

This reverts commit ee7cb7675671430697f3a38bd5a56405179e6dd9.

* Update `code syntax highlighting` to use jsdelivr CDN

* Project card responsiveness fixes

* added personal website to readme

veedata.github.io

* Reverted responsiveness chnages

* Minor adjustments

Co-authored-by: rohandebsarkar <rohandebsarkar@gmail.com>
Co-authored-by: Maruan Al-Shedivat <maruan@genesistherapeutics.ai>
2022-02-19 20:46:45 -05:00
Rohan Deb Sarkar 0c2e6574c9
Update library versions (bootstap, jquery, fontawesome, academicicons, masonry, mdbootstrap) (#521) 2022-01-13 17:50:50 -05:00
José M. Requena Plens b950fc3fdb
Better SEO, OpenGraph, schema.org and clean generated code (#481) 2021-12-31 11:46:42 -05:00
Maruan Al-Shedivat d500e084f5 Remove theming dependence on jquery 2021-10-30 19:53:39 -04:00
Amir Pourmand 9c36be1320
Optimize Website Load Time (#435)
* Place js files after body tag

* Add Analytics to the end of script

* Minor nits and fixes

Co-authored-by: Maruan Al-Shedivat <alshedivat.maruan@gmail.com>
2021-10-30 16:26:37 -04:00
Maruan 1318c805fe
Adds support for image zoom (#296)
* Add image zoom

* Minor improvements
2021-05-30 19:38:24 -04:00
JD 40921e4f54
Issue 180 - Distill Bugfix (#182)
* dark_mode.js was not being loaded on distill blog pages.
* Moved dark_mode.js and jquery.html to head.html to simplify/standardize dark mode/theming for other pages.
2021-01-14 14:45:47 -05:00
Maruan 4f9cdb131e
Minor fixes of the dark mode + automatic equation numbering (#160)
* Add an option for showing selected publications

* Improve publication styles

* Update README.md

* Clearfix

* Fix minor issues with dark mode

* Add automatic equation numbering (#158)

* Fix a typo
2020-12-27 00:24:25 -05:00
zt-chen 2781e2eb4e
Move GA script to head.html (#140) 2020-11-30 10:00:47 -05:00
JD e30a46bbfa
Issue 105 : Dark Mode + Theming #118 (#119)
* Dark Mode + Theming

* Themes scss file created with default color scheme and dark color scheme.

* Logic for managing dark mode toggle added.

* Modified existing scss/html to work with theme toggling.

* Fixed hover issues

* Added enable_darkmode to configs.  

* Added the requested option of disabling/enabling dark mode via config files.
2020-10-04 20:32:47 -04:00
Mayank Kakodkar c085a63ca6
Updated Google Analytics code (#123)
GA site tag was updated today, misc.html has been changed to reflect the same.
2020-10-03 18:22:39 -04:00
Maruan Al-Shedivat dacac74d31 Fix issues with loading scripts (#117) 2020-09-26 12:26:28 -04:00