Commit Graph

17 Commits

Author SHA1 Message Date
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
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
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 bb5ef8fafb
Minor changes and fixes (#726) 2022-06-25 19:47:01 -04: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
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