datalog-theme 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CHANGELOG.md +162 -0
- data/CITATION.cff +29 -0
- data/LICENSE +21 -0
- data/README.md +257 -0
- data/_data/academic.yml +217 -0
- data/_data/cdn-integrity.yml +51 -0
- data/_data/config/author.yml +121 -0
- data/_data/config/features.yml +262 -0
- data/_data/config/site.yml +42 -0
- data/_data/config/theme.yml +181 -0
- data/_data/datasets.yml +28 -0
- data/_data/i18n/en.yml +438 -0
- data/_data/i18n/es.yml +438 -0
- data/_data/i18n/pt.yml +438 -0
- data/_data/js_manifest.json +22 -0
- data/_data/js_meta.json +371 -0
- data/_data/navigation.yml +145 -0
- data/_data/projects.yml +41 -0
- data/_data/publications.yml +28 -0
- data/_data/social.yml +73 -0
- data/_data/visualizations.yml +51 -0
- data/_includes/analytics/dashboard.html +149 -0
- data/_includes/analytics.html +9 -0
- data/_includes/components/academic-dashboard.html +347 -0
- data/_includes/components/advanced-search.html +682 -0
- data/_includes/components/api-function.html +94 -0
- data/_includes/components/author-bio.html +166 -0
- data/_includes/components/bookmark-system.html +96 -0
- data/_includes/components/breadcrumbs.html +89 -0
- data/_includes/components/citation-tools.html +94 -0
- data/_includes/components/comments.html +244 -0
- data/_includes/components/content-provenance.html +43 -0
- data/_includes/components/content-recommendations.html +228 -0
- data/_includes/components/difficulty-badge.html +84 -0
- data/_includes/components/email-preferences.html +200 -0
- data/_includes/components/enhanced-code-block.html +212 -0
- data/_includes/components/enhanced-metadata.html +228 -0
- data/_includes/components/enhanced-toc.html +209 -0
- data/_includes/components/hero.html +15 -0
- data/_includes/components/language-switcher.html +396 -0
- data/_includes/components/math-fallback.html +19 -0
- data/_includes/components/navigation-enhancements.html +454 -0
- data/_includes/components/newsletter-signup.html +178 -0
- data/_includes/components/open-science-badges.html +16 -0
- data/_includes/components/package-install.html +194 -0
- data/_includes/components/performance-monitor.html +170 -0
- data/_includes/components/popular-posts.html +233 -0
- data/_includes/components/post-hero.html +62 -0
- data/_includes/components/reading-progress.html +133 -0
- data/_includes/components/reading-time.html +121 -0
- data/_includes/components/responsive-image.html +63 -0
- data/_includes/components/search-facets.html +307 -0
- data/_includes/components/series-navigation.html +124 -0
- data/_includes/components/social-proof.html +34 -0
- data/_includes/components/social-share.html +119 -0
- data/_includes/components/user-preferences.html +566 -0
- data/_includes/components/visualization-card.html +24 -0
- data/_includes/components/viz-table-fallback.html +19 -0
- data/_includes/critical-css/default.html +0 -0
- data/_includes/critical-css/home.html +0 -0
- data/_includes/critical-css/post.html +0 -0
- data/_includes/csp-meta.html +17 -0
- data/_includes/footer/nav-column.html +31 -0
- data/_includes/footer.html +76 -0
- data/_includes/head.html +337 -0
- data/_includes/header/navigation.html +48 -0
- data/_includes/header.html +70 -0
- data/_includes/helpers/array-to-sentence.html +21 -0
- data/_includes/helpers/date-format.html +16 -0
- data/_includes/helpers/link-with-icon.html +26 -0
- data/_includes/layouts/default/article.html +67 -0
- data/_includes/meta/language-attributes.html +25 -0
- data/_includes/meta/math-config.html +21 -0
- data/_includes/meta/schema.html +153 -0
- data/_includes/meta/scripts-loader.html +52 -0
- data/_includes/post/related-posts.html +63 -0
- data/_includes/scripts.html +72 -0
- data/_includes/skip-link.html +1 -0
- data/_includes/toc.html +2 -0
- data/_layouts/archive.html +282 -0
- data/_layouts/dataset.html +52 -0
- data/_layouts/default.html +33 -0
- data/_layouts/home.html +48 -0
- data/_layouts/notebook.html +173 -0
- data/_layouts/package.html +238 -0
- data/_layouts/page.html +16 -0
- data/_layouts/portfolio.html +41 -0
- data/_layouts/post-sidebar.html +183 -0
- data/_layouts/post.html +338 -0
- data/_layouts/project.html +252 -0
- data/_layouts/research.html +504 -0
- data/_plugins/analytics_dashboard.rb +315 -0
- data/_plugins/config_validator.rb +397 -0
- data/_plugins/csp_generator.rb +115 -0
- data/_plugins/datalog_bibliography.rb +19 -0
- data/_plugins/datalog_comments.rb +18 -0
- data/_plugins/datalog_slides.rb +20 -0
- data/_plugins/front_matter_compat.rb +109 -0
- data/_plugins/i18n.rb +160 -0
- data/_plugins/image_optimizer.rb +445 -0
- data/_plugins/math_preprocessor.rb +185 -0
- data/_plugins/notebook_converter.rb +1107 -0
- data/_plugins/plugin_loader.rb +185 -0
- data/_plugins/publications_generator.rb +234 -0
- data/_plugins/reading_time.rb +15 -0
- data/_plugins/search_normalizer.rb +74 -0
- data/_plugins/sri_filter.rb +18 -0
- data/_plugins/toc_filter.rb +68 -0
- data/_plugins/warning_filter.rb +3 -0
- data/_sass/_base.scss +142 -0
- data/_sass/_components.scss +2380 -0
- data/_sass/_header.scss +470 -0
- data/_sass/_interactive.scss +344 -0
- data/_sass/_layout.scss +1760 -0
- data/_sass/_mathematical.scss +368 -0
- data/_sass/_mixins.scss +99 -0
- data/_sass/_package-docs.scss +715 -0
- data/_sass/_phase1-enhancements.scss +721 -0
- data/_sass/_phase3-enhancements.scss +874 -0
- data/_sass/_phase4-enhancements.scss +1214 -0
- data/_sass/_phase5-enhancements.scss +414 -0
- data/_sass/_search.scss +654 -0
- data/_sass/_syntax-highlighting.scss +128 -0
- data/_sass/_theme.scss +79 -0
- data/_sass/_typography.scss +148 -0
- data/_sass/_utilities.scss +334 -0
- data/_sass/_variables.scss +153 -0
- data/_sass/_visualizations.scss +242 -0
- data/assets/css/main.scss +4 -0
- data/assets/img/20220607123041_detail.001.png +0 -0
- data/assets/img/favicons/android-chrome-192x192.png +0 -0
- data/assets/img/favicons/android-chrome-512x512.png +0 -0
- data/assets/img/favicons/apple-touch-icon.png +0 -0
- data/assets/img/favicons/favicon-16x16.png +0 -0
- data/assets/img/favicons/favicon-32x32.png +0 -0
- data/assets/img/favicons/favicon.ico +0 -0
- data/assets/img/favicons/site.webmanifest +21 -0
- data/assets/img/portfolio-placeholder.svg +20 -0
- data/assets/js/academic.js +262 -0
- data/assets/js/analytics-dashboard.js +382 -0
- data/assets/js/core/dark-mode.js +79 -0
- data/assets/js/core/github-cards.js +123 -0
- data/assets/js/core/language-filter.js +69 -0
- data/assets/js/core/navigation.js +184 -0
- data/assets/js/core/scroll-progress.js +45 -0
- data/assets/js/core/search-hotkeys.js +62 -0
- data/assets/js/core/skip-links.js +62 -0
- data/assets/js/loader.js +163 -0
- data/assets/js/main.js +23 -0
- data/assets/js/math.js +818 -0
- data/assets/js/notebook.js +158 -0
- data/assets/js/search/analytics.js +91 -0
- data/assets/js/search/app.js +271 -0
- data/assets/js/search/autocomplete.js +120 -0
- data/assets/js/search/engine.js +260 -0
- data/assets/js/search/filters.js +38 -0
- data/assets/js/search/render.js +217 -0
- data/assets/js/search/utils.js +99 -0
- data/assets/js/search.js +354 -0
- data/assets/js/visualizations.js +816 -0
- data/assets/publications/datalog-publications.bib +8 -0
- data/assets/publications/datalog-publications.ris +9 -0
- data/assets/publications/publications.bib +30 -0
- data/assets/templates/diogo-ribeiro-cv.md +31 -0
- data/assets/templates/diogo-ribeiro-cv.tex +32 -0
- data/bin/datalog +26 -0
- data/datalog-theme.gemspec +72 -0
- data/lib/datalog/cli.rb +563 -0
- data/lib/datalog/plugin_system/dependency_resolver.rb +223 -0
- data/lib/datalog/plugin_system.rb +237 -0
- data/lib/datalog/plugins/citations.rb +182 -0
- data/lib/datalog/plugins/comments.rb +183 -0
- data/lib/datalog/plugins/search.rb +45 -0
- data/lib/datalog/plugins/slides.rb +121 -0
- data/lib/datalog/theme/theme.rb +18 -0
- data/lib/datalog/theme/version.rb +7 -0
- data/lib/datalog/warning_filter.rb +28 -0
- data/lib/datalog-theme.rb +17 -0
- metadata +555 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
@article{ribeiro2024forecasting,
|
|
2
|
+
title = {Reproducible Energy Demand Forecasting},
|
|
3
|
+
author = {Ribeiro, Diogo and Silva, Ana},
|
|
4
|
+
journal = {Journal of Sustainable Analytics},
|
|
5
|
+
year = {2024},
|
|
6
|
+
doi = {10.1234/jsa.2024.001},
|
|
7
|
+
url = {https://doi.org/10.1234/jsa.2024.001}
|
|
8
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
@article{ribeiro2024interpretable,
|
|
2
|
+
title={Interpretable Bayesian Forecasting for Distributed Energy Resources},
|
|
3
|
+
author={Ribeiro, Diogo and Martins, Sofia and Almeida, Pedro},
|
|
4
|
+
journal={Journal of Energy Analytics},
|
|
5
|
+
year={2024},
|
|
6
|
+
volume={12},
|
|
7
|
+
number={3},
|
|
8
|
+
pages={145--168},
|
|
9
|
+
doi={10.5678/jea.2024.145},
|
|
10
|
+
url={https://doi.org/10.5678/jea.2024.145}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@inproceedings{ribeiro2023causal,
|
|
14
|
+
title={Causal Impact Evaluation of Smart Mobility Interventions},
|
|
15
|
+
author={Ribeiro, Diogo and Costa, Mariana and Lopes, Ricardo},
|
|
16
|
+
booktitle={Proceedings of the International Conference on Urban Analytics},
|
|
17
|
+
year={2023},
|
|
18
|
+
pages={55--72},
|
|
19
|
+
doi={10.1109/icua.2023.00012},
|
|
20
|
+
url={https://doi.org/10.1109/icua.2023.00012}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@techreport{ribeiro2022open,
|
|
24
|
+
title={Open Methodology Playbook for Data Science Teams},
|
|
25
|
+
author={Ribeiro, Diogo},
|
|
26
|
+
institution={ESMAD - Instituto Politécnico do Porto},
|
|
27
|
+
year={2022},
|
|
28
|
+
number={TR-2022-05},
|
|
29
|
+
url={https://example.com/reports/open-methodology}
|
|
30
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Diogo Ribeiro
|
|
2
|
+
|
|
3
|
+
ESMAD - Instituto Politécnico do Porto · dfr@esmad.ipp.pt · [ORCID](https://orcid.org/0009-0001-2022-7072)
|
|
4
|
+
|
|
5
|
+
Data scientist focused on reproducible analytics, experimental design, and interactive storytelling.
|
|
6
|
+
|
|
7
|
+
## Research Interests
|
|
8
|
+
- Probabilistic forecasting and decision intelligence
|
|
9
|
+
- Accessible visualization systems
|
|
10
|
+
- Experimental design and causal inference
|
|
11
|
+
|
|
12
|
+
## Education
|
|
13
|
+
- **MSc Data Science**, ESMAD - Instituto Politécnico do Porto (2020)
|
|
14
|
+
- **BSc Multimedia Technology**, ESMAD - Instituto Politécnico do Porto (2018)
|
|
15
|
+
|
|
16
|
+
## Publications
|
|
17
|
+
1. *Energy Demand Forecasting with Hierarchical Ensembles*, Journal of Sustainable Analytics, 2023.
|
|
18
|
+
2. *Designing Accessible Visualization Systems for Smart Cities*, VIS4GOOD Proceedings, 2022.
|
|
19
|
+
|
|
20
|
+
## Teaching
|
|
21
|
+
- DataLog Academy — Machine Learning Foundations
|
|
22
|
+
- Guest Lecturer — Reproducible Analytics Seminar Series
|
|
23
|
+
|
|
24
|
+
## Professional Experience
|
|
25
|
+
- Lead Data Scientist, DataLog Labs (2021–present)
|
|
26
|
+
- Analytics Consultant, Open Insights Collective (2018–2021)
|
|
27
|
+
|
|
28
|
+
## Skills
|
|
29
|
+
- Python, R, SQL, Julia
|
|
30
|
+
- MLOps, experiment design, data visualization
|
|
31
|
+
- Communication, technical leadership
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
% Diogo Ribeiro - Academic CV Template
|
|
2
|
+
% Replace placeholder sections with your achievements.
|
|
3
|
+
\documentclass[11pt,a4paper]{article}
|
|
4
|
+
\usepackage{geometry}
|
|
5
|
+
\usepackage{hyperref}
|
|
6
|
+
\geometry{margin=1in}
|
|
7
|
+
\begin{document}
|
|
8
|
+
\begin{center}
|
|
9
|
+
{\LARGE Diogo Ribeiro}\\[4pt]
|
|
10
|
+
ESMAD - Instituto Politécnico do Porto\\
|
|
11
|
+
\href{mailto:dfr@esmad.ipp.pt}{dfr@esmad.ipp.pt} • \href{https://orcid.org/0009-0001-2022-7072}{ORCID 0009-0001-2022-7072}
|
|
12
|
+
\end{center}
|
|
13
|
+
|
|
14
|
+
\section*{Research Interests}
|
|
15
|
+
% List your core topics.
|
|
16
|
+
|
|
17
|
+
\section*{Education}
|
|
18
|
+
% Institution, degree, year.
|
|
19
|
+
|
|
20
|
+
\section*{Publications}
|
|
21
|
+
% Use a consistent citation style.
|
|
22
|
+
|
|
23
|
+
\section*{Teaching}
|
|
24
|
+
% Courses taught, responsibilities.
|
|
25
|
+
|
|
26
|
+
\section*{Service}
|
|
27
|
+
% Committees, organizing roles, reviewing.
|
|
28
|
+
|
|
29
|
+
\section*{Skills}
|
|
30
|
+
% Programming languages, tools, methods.
|
|
31
|
+
|
|
32
|
+
\end{document}
|
data/bin/datalog
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
APP_ROOT = File.expand_path("..", __dir__)
|
|
5
|
+
$LOAD_PATH.unshift(File.join(APP_ROOT, "lib")) unless $LOAD_PATH.include?(File.join(APP_ROOT, "lib"))
|
|
6
|
+
|
|
7
|
+
if File.exist?(File.join(APP_ROOT, "Gemfile"))
|
|
8
|
+
begin
|
|
9
|
+
require "bundler/setup"
|
|
10
|
+
rescue SystemExit
|
|
11
|
+
warn "Bundler exited while loading dependencies. Continue at your own risk."
|
|
12
|
+
rescue LoadError => e
|
|
13
|
+
warn e.message
|
|
14
|
+
warn "Bundler is not installed. Install bundler or skip dependency checks by running the CLI after setting up Ruby gems."
|
|
15
|
+
rescue StandardError => e
|
|
16
|
+
if defined?(Bundler::GemNotFound) && e.is_a?(Bundler::GemNotFound)
|
|
17
|
+
warn e.message
|
|
18
|
+
warn "Run `bundle install` to install missing gems before using the CLI."
|
|
19
|
+
else
|
|
20
|
+
warn e.message
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
require "datalog/cli"
|
|
25
|
+
|
|
26
|
+
Datalog::CLI.start(ARGV)
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative "lib/datalog/theme/version"
|
|
4
|
+
|
|
5
|
+
Gem::Specification.new do |spec|
|
|
6
|
+
spec.name = "datalog-theme"
|
|
7
|
+
spec.version = Datalog::Theme::VERSION
|
|
8
|
+
spec.authors = ["Diogo Ribeiro"]
|
|
9
|
+
spec.email = ["diogo.debastos.ribeiro@gmail.com", "dfr@esmad.ipp.pt"]
|
|
10
|
+
|
|
11
|
+
spec.summary = "Accessible data science Jekyll theme for research blogs and portfolios"
|
|
12
|
+
spec.description = "Modern academic Jekyll theme optimized for notebooks, visualizations, reproducibility, and technical storytelling."
|
|
13
|
+
spec.homepage = "https://github.com/DiogoRibeiro7/analytics-blog-jekyll"
|
|
14
|
+
spec.license = "MIT"
|
|
15
|
+
|
|
16
|
+
spec.metadata["homepage_uri"] = spec.homepage
|
|
17
|
+
spec.metadata["source_code_uri"] = spec.homepage
|
|
18
|
+
spec.metadata["bug_tracker_uri"] = "https://github.com/DiogoRibeiro7/analytics-blog-jekyll/issues"
|
|
19
|
+
spec.metadata["documentation_uri"] = "https://github.com/DiogoRibeiro7/analytics-blog-jekyll#readme"
|
|
20
|
+
spec.metadata["changelog_uri"] = "https://github.com/DiogoRibeiro7/analytics-blog-jekyll/releases"
|
|
21
|
+
spec.metadata["allowed_push_host"] = "https://rubygems.org"
|
|
22
|
+
spec.metadata["jekyll-theme"] = "datalog"
|
|
23
|
+
spec.metadata["plugin_type"] = "theme"
|
|
24
|
+
spec.metadata["orcid"] = "https://orcid.org/0009-0001-2022-7072"
|
|
25
|
+
|
|
26
|
+
spec.required_ruby_version = ">= 3.0"
|
|
27
|
+
spec.require_paths = ["lib"]
|
|
28
|
+
spec.bindir = "bin"
|
|
29
|
+
spec.executables = ["datalog"]
|
|
30
|
+
|
|
31
|
+
# Ship only theme infrastructure — not demo content (_posts, _pages, _portfolio,
|
|
32
|
+
# _datasets, _packages, _notebooks, tests, docs, scripts, CI configs, frontend
|
|
33
|
+
# tooling, Dockerfiles, etc.). Theme consumers get layouts/includes/sass/assets/
|
|
34
|
+
# plugins/data/lib/bin and the licensing/changelog metadata.
|
|
35
|
+
spec.files = Dir.chdir(__dir__) do
|
|
36
|
+
`git ls-files -z`.split("\x0").select do |f|
|
|
37
|
+
f.match?(%r{\A(?:_layouts|_includes|_sass|_plugins|_data|assets|lib|bin)/}) ||
|
|
38
|
+
%w[
|
|
39
|
+
LICENSE
|
|
40
|
+
README.md
|
|
41
|
+
CHANGELOG.md
|
|
42
|
+
CITATION.cff
|
|
43
|
+
datalog-theme.gemspec
|
|
44
|
+
].include?(f)
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
spec.add_runtime_dependency "jekyll", "~> 4.3"
|
|
49
|
+
spec.add_runtime_dependency "jekyll-sass-converter", "~> 3.0"
|
|
50
|
+
spec.add_runtime_dependency "jekyll-feed", ">= 0.16"
|
|
51
|
+
spec.add_runtime_dependency "jekyll-seo-tag", ">= 2.8"
|
|
52
|
+
spec.add_runtime_dependency "jekyll-sitemap", ">= 1.4"
|
|
53
|
+
spec.add_runtime_dependency "sass-embedded", ">= 1.71"
|
|
54
|
+
spec.add_runtime_dependency "jekyll-paginate", ">= 1.1"
|
|
55
|
+
spec.add_runtime_dependency "jekyll-include-cache", ">= 0.2"
|
|
56
|
+
spec.add_runtime_dependency "jekyll-jupyter-notebook", "~> 0.0.6"
|
|
57
|
+
spec.add_runtime_dependency "jekyll-archives", ">= 2.2"
|
|
58
|
+
spec.add_runtime_dependency "jekyll-remote-theme", ">= 0.4"
|
|
59
|
+
spec.add_runtime_dependency "jekyll-redirect-from", ">= 0.16"
|
|
60
|
+
spec.add_runtime_dependency "kramdown-parser-gfm", ">= 1.1"
|
|
61
|
+
spec.add_runtime_dependency "webrick", ">= 1.8"
|
|
62
|
+
spec.add_runtime_dependency "fastimage", ">= 2.2"
|
|
63
|
+
spec.add_runtime_dependency "nokogiri", ">= 1.15"
|
|
64
|
+
spec.add_runtime_dependency "mini_magick", ">= 4.12"
|
|
65
|
+
spec.add_runtime_dependency "logger", ">= 1.6"
|
|
66
|
+
spec.add_runtime_dependency "thor", ">= 1.3"
|
|
67
|
+
spec.add_runtime_dependency "googleauth", ">= 1.9"
|
|
68
|
+
|
|
69
|
+
spec.add_development_dependency "bundler", ">= 2.4"
|
|
70
|
+
spec.add_development_dependency "rake", ">= 13.0"
|
|
71
|
+
spec.add_development_dependency "minitest", "~> 6.0"
|
|
72
|
+
end
|