├── .gitignore ├── 404.html ├── Gemfile ├── Gemfile.lock ├── LICENSE ├── README.md ├── _config.yml ├── _data ├── _schemas │ ├── _cluster-schema.yaml │ ├── _curation-schema.yaml │ └── _item-schema.yaml ├── _stubs │ ├── books.yaml │ └── games.yaml ├── curations │ ├── community │ │ ├── discussions.yaml │ │ ├── jobs.yaml │ │ ├── newsletters.yaml │ │ ├── organizations.yaml │ │ └── portfolios.yaml │ ├── datasets │ │ ├── catalogs.yml │ │ └── topical-datasets.yml │ ├── interactives │ │ ├── newsapps.yaml │ │ └── visualizations.yaml │ ├── outlets │ │ ├── awards-outlets.yaml │ │ ├── meta-outlets.yaml │ │ ├── news-outlets.yaml │ │ └── specialty-outlets.yaml │ ├── resources │ │ ├── curriculums.yaml │ │ ├── guides.yaml │ │ ├── indepth.yaml │ │ ├── listicles.yaml │ │ ├── repos.yaml │ │ ├── tools.yaml │ │ └── tutorials.yaml │ └── stories │ │ ├── essays.yaml │ │ ├── explorations.yaml │ │ ├── investigations.yaml │ │ └── profiles.yaml └── navigation.yaml ├── _includes ├── a-reflink.html ├── curation-item.html ├── curation-section.html ├── item-examples.html ├── item-pubmeta.html ├── jekyll-toc.html └── site │ ├── footer.html │ ├── head.html │ ├── head_meta.html │ └── header.html ├── _layouts ├── base.html ├── cluster.html ├── default.html ├── home.html ├── page.html └── post.html ├── _posts └── 2020-02-18-welcome-to-jekyll.markdown ├── _sass ├── bootstrap │ ├── _alert.scss │ ├── _badge.scss │ ├── _breadcrumb.scss │ ├── _button-group.scss │ ├── _buttons.scss │ ├── _card.scss │ ├── _carousel.scss │ ├── _close.scss │ ├── _code.scss │ ├── _custom-forms.scss │ ├── _dropdown.scss │ ├── _forms.scss │ ├── _functions.scss │ ├── _grid.scss │ ├── _images.scss │ ├── _input-group.scss │ ├── _jumbotron.scss │ ├── _list-group.scss │ ├── _media.scss │ ├── _mixins.scss │ ├── _modal.scss │ ├── _nav.scss │ ├── _navbar.scss │ ├── _pagination.scss │ ├── _popover.scss │ ├── _print.scss │ ├── _progress.scss │ ├── _reboot.scss │ ├── _root.scss │ ├── _spinners.scss │ ├── _tables.scss │ ├── _toasts.scss │ ├── _tooltip.scss │ ├── _transitions.scss │ ├── _type.scss │ ├── _utilities.scss │ ├── _variables.scss │ ├── bootstrap-grid.scss │ ├── bootstrap-reboot.scss │ ├── bootstrap.scss │ ├── mixins │ │ ├── _alert.scss │ │ ├── _background-variant.scss │ │ ├── _badge.scss │ │ ├── _border-radius.scss │ │ ├── _box-shadow.scss │ │ ├── _breakpoints.scss │ │ ├── _buttons.scss │ │ ├── _caret.scss │ │ ├── _clearfix.scss │ │ ├── _deprecate.scss │ │ ├── _float.scss │ │ ├── _forms.scss │ │ ├── _gradients.scss │ │ ├── _grid-framework.scss │ │ ├── _grid.scss │ │ ├── _hover.scss │ │ ├── _image.scss │ │ ├── _list-group.scss │ │ ├── _lists.scss │ │ ├── _nav-divider.scss │ │ ├── _pagination.scss │ │ ├── _reset-text.scss │ │ ├── _resize.scss │ │ ├── _screen-reader.scss │ │ ├── _size.scss │ │ ├── _table-row.scss │ │ ├── _text-emphasis.scss │ │ ├── _text-hide.scss │ │ ├── _text-truncate.scss │ │ ├── _transition.scss │ │ └── _visibility.scss │ ├── utilities │ │ ├── _align.scss │ │ ├── _background.scss │ │ ├── _borders.scss │ │ ├── _clearfix.scss │ │ ├── _display.scss │ │ ├── _embed.scss │ │ ├── _flex.scss │ │ ├── _float.scss │ │ ├── _overflow.scss │ │ ├── _position.scss │ │ ├── _screenreaders.scss │ │ ├── _shadows.scss │ │ ├── _sizing.scss │ │ ├── _spacing.scss │ │ ├── _stretched-link.scss │ │ ├── _text.scss │ │ └── _visibility.scss │ └── vendor │ │ └── _rfs.scss ├── font-awesome │ └── scss │ │ ├── _bordered-pulled.scss │ │ ├── _core.scss │ │ ├── _extras.scss │ │ ├── _fixed-width.scss │ │ ├── _icons.scss │ │ ├── _larger.scss │ │ ├── _list.scss │ │ ├── _mixins.scss │ │ ├── _path.scss │ │ ├── _rotated-flipped.scss │ │ ├── _spinning.scss │ │ ├── _stacked.scss │ │ ├── _variables.scss │ │ └── font-awesome.scss ├── mystyles │ ├── footer.scss │ ├── fullindex.scss │ ├── homepage.scss │ ├── item.scss │ ├── myfonts.scss │ ├── myvars.scss │ └── page.scss └── mytheme.scss ├── about.markdown ├── assets ├── css │ └── style.scss └── fonts │ ├── FontAwesome │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.svg │ ├── fontawesome-webfont.ttf │ └── fontawesome-webfont.woff │ ├── Roboto │ ├── LICENSE.txt │ ├── Roboto-Black.ttf │ ├── Roboto-BlackItalic.ttf │ ├── Roboto-Bold.ttf │ ├── Roboto-BoldItalic.ttf │ ├── Roboto-Italic.ttf │ ├── Roboto-Light.ttf │ ├── Roboto-LightItalic.ttf │ ├── Roboto-Medium.ttf │ ├── Roboto-MediumItalic.ttf │ ├── Roboto-Regular.ttf │ ├── Roboto-Thin.ttf │ └── Roboto-ThinItalic.ttf │ └── Solway │ ├── OFL.txt │ ├── Solway-Bold.ttf │ ├── Solway-ExtraBold.ttf │ ├── Solway-Light.ttf │ ├── Solway-Medium.ttf │ └── Solway-Regular.ttf ├── debug.html ├── fullindex.html ├── index.html ├── my_collections └── _clusters │ ├── community.html │ ├── datasets.html │ ├── interactives.html │ ├── outlets.html │ ├── resources.html │ └── stories.html └── static └── images └── items ├── ben-casselman-qna.jpg └── thumbnails ├── agate.png ├── data-is-plural.png ├── data-slueths-of-san-jose.jpg ├── datawrapper.png ├── excel-beginners-maryjo.png ├── first-graphicsapp.jpg ├── first-news-app.png ├── first-notebook.png ├── gentle-sqlite.png ├── ire-nicar-logo.png ├── jupyter-notebook.png ├── lorem-ipsum-tk.png ├── markup-allstate-algorithm.jpg ├── observable.png ├── openrefine.png ├── pudding-logo-thumb.jpg ├── regex-hands-on-2017.png ├── rstudio.png ├── sara-simon-alumni-profile.jpg ├── sql-murder-mystery.png ├── tabula.png ├── vanschneider-datadesign-resp.png └── wapo-covid19-sim.png /.gitignore: -------------------------------------------------------------------------------- 1 | # Dan Nguyen's custom bashfoo 2 | 3 | # names for data stash folders that shouldn't be committed 4 | _drafts/ 5 | junk/ 6 | zunk/ 7 | ZUNK/ 8 | 9 | # try to prevent the inclusion of credentials 10 | creds/ 11 | creds*.* 12 | passwords/ 13 | apikeys/ 14 | apikey*.* 15 | 16 | # Shouldn't be including compressed files 17 | *.zip 18 | *.gz 19 | 20 | # spreadsheet/db intermediate files 21 | ~$*.xlsx 22 | # libre 23 | .~lock.* 24 | 25 | 26 | 27 | 28 | # OS stuff 29 | .DS_Store 30 | .Trashes 31 | .Spotlight-V100 32 | Thumbs.db 33 | 34 | 35 | # Byte-compiled / optimized / DLL files 36 | __pycache__/ 37 | *.py[cod] 38 | *$py.class 39 | 40 | # C extensions 41 | *.so 42 | 43 | # Distribution / packaging 44 | .Python 45 | build/ 46 | develop-eggs/ 47 | dist/ 48 | downloads/ 49 | eggs/ 50 | .eggs/ 51 | lib/ 52 | lib64/ 53 | parts/ 54 | sdist/ 55 | var/ 56 | wheels/ 57 | *.egg-info/ 58 | .installed.cfg 59 | *.egg 60 | MANIFEST 61 | 62 | # PyInstaller 63 | # Usually these files are written by a python script from a template 64 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 65 | *.manifest 66 | *.spec 67 | .pytest_cache/ 68 | 69 | # Installer logs 70 | pip-log.txt 71 | pip-delete-this-directory.txt 72 | 73 | # Unit test / coverage reports 74 | htmlcov/ 75 | .tox/ 76 | .coverage 77 | .coverage.* 78 | .cache 79 | nosetests.xml 80 | coverage.xml 81 | *.cover 82 | .hypothesis/ 83 | 84 | # Translations 85 | *.mo 86 | *.pot 87 | 88 | # Django stuff: 89 | *.log 90 | .static_storage/ 91 | .media/ 92 | local_settings.py 93 | 94 | # Flask stuff: 95 | instance/ 96 | .webassets-cache 97 | 98 | # Scrapy stuff: 99 | .scrapy 100 | 101 | # Sphinx documentation 102 | docs/_build/ 103 | 104 | # PyBuilder 105 | target/ 106 | 107 | # Jupyter Notebook 108 | .ipynb_checkpoints 109 | 110 | # pyenv 111 | .python-version 112 | 113 | # celery beat schedule file 114 | celerybeat-schedule 115 | 116 | # SageMath parsed files 117 | *.sage.py 118 | 119 | # Environments 120 | .env 121 | .venv 122 | env/ 123 | venv/ 124 | ENV/ 125 | env.bak/ 126 | venv.bak/ 127 | 128 | # Spyder project settings 129 | .spyderproject 130 | .spyproject 131 | 132 | # Rope project settings 133 | .ropeproject 134 | 135 | # mkdocs documentation 136 | /site 137 | 138 | # mypy 139 | .mypy_cache/ 140 | 141 | 142 | # js/svelte stuff 143 | node_modules 144 | public/bundle.* 145 | 146 | 147 | # jekyll stuff 148 | _site 149 | .sass-cache 150 | .jekyll-cache 151 | .jekyll-metadata 152 | vendor/bundle 153 | -------------------------------------------------------------------------------- /404.html: -------------------------------------------------------------------------------- 1 | --- 2 | permalink: /404.html 3 | layout: default 4 | --- 5 | 6 | 19 | 20 |
Page not found :(
24 |The requested page could not be found.
25 |by {{ page.author | default: site.author }}
9 | 10 | {{content}} 11 | 12 | {% if page.tags %} 13 | tags: {{ page.tags | join: " - " }} 14 | {% endif %} 15 | -------------------------------------------------------------------------------- /_posts/2020-02-18-welcome-to-jekyll.markdown: -------------------------------------------------------------------------------- 1 | --- 2 | layout: post 3 | title: "Welcome to Jekyll!" 4 | date: 2020-02-18 16:57:29 -0600 5 | categories: jekyll update 6 | --- 7 | 8 | 9 | 10 | 11 | 12 | 13 | ## Boiler plate 14 | 15 | You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated. 16 | 17 | Jekyll requires blog post files to be named according to the following format: 18 | 19 | `YEAR-MONTH-DAY-title.MARKUP` 20 | 21 | Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `MARKUP` is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works. 22 | 23 | Jekyll also offers powerful support for code snippets: 24 | 25 | {% highlight ruby %} 26 | def print_hi(name) 27 | puts "Hi, #{name}" 28 | end 29 | print_hi('Tom') 30 | #=> prints 'Hi, Tom' to STDOUT. 31 | {% endhighlight %} 32 | 33 | Check out the [Jekyll docs][jekyll-docs] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll Talk][jekyll-talk]. 34 | 35 | [jekyll-docs]: https://jekyllrb.com/docs/home 36 | [jekyll-gh]: https://github.com/jekyll/jekyll 37 | [jekyll-talk]: https://talk.jekyllrb.com/ 38 | -------------------------------------------------------------------------------- /_sass/bootstrap/_alert.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Base styles 3 | // 4 | 5 | .alert { 6 | position: relative; 7 | padding: $alert-padding-y $alert-padding-x; 8 | margin-bottom: $alert-margin-bottom; 9 | border: $alert-border-width solid transparent; 10 | @include border-radius($alert-border-radius); 11 | } 12 | 13 | // Headings for larger alerts 14 | .alert-heading { 15 | // Specified to prevent conflicts of changing $headings-color 16 | color: inherit; 17 | } 18 | 19 | // Provide class for links that match alerts 20 | .alert-link { 21 | font-weight: $alert-link-font-weight; 22 | } 23 | 24 | 25 | // Dismissible alerts 26 | // 27 | // Expand the right padding and account for the close button's positioning. 28 | 29 | .alert-dismissible { 30 | padding-right: $close-font-size + $alert-padding-x * 2; 31 | 32 | // Adjust close link position 33 | .close { 34 | position: absolute; 35 | top: 0; 36 | right: 0; 37 | padding: $alert-padding-y $alert-padding-x; 38 | color: inherit; 39 | } 40 | } 41 | 42 | 43 | // Alternate styles 44 | // 45 | // Generate contextual modifier classes for colorizing the alert. 46 | 47 | @each $color, $value in $theme-colors { 48 | .alert-#{$color} { 49 | @include alert-variant(theme-color-level($color, $alert-bg-level), theme-color-level($color, $alert-border-level), theme-color-level($color, $alert-color-level)); 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /_sass/bootstrap/_badge.scss: -------------------------------------------------------------------------------- 1 | // Base class 2 | // 3 | // Requires one of the contextual, color modifier classes for `color` and 4 | // `background-color`. 5 | 6 | .badge { 7 | display: inline-block; 8 | padding: $badge-padding-y $badge-padding-x; 9 | @include font-size($badge-font-size); 10 | font-weight: $badge-font-weight; 11 | line-height: 1; 12 | text-align: center; 13 | white-space: nowrap; 14 | vertical-align: baseline; 15 | @include border-radius($badge-border-radius); 16 | @include transition($badge-transition); 17 | 18 | @at-root a#{&} { 19 | @include hover-focus { 20 | text-decoration: none; 21 | } 22 | } 23 | 24 | // Empty badges collapse automatically 25 | &:empty { 26 | display: none; 27 | } 28 | } 29 | 30 | // Quick fix for badges in buttons 31 | .btn .badge { 32 | position: relative; 33 | top: -1px; 34 | } 35 | 36 | // Pill badges 37 | // 38 | // Make them extra rounded with a modifier to replace v3's badges. 39 | 40 | .badge-pill { 41 | padding-right: $badge-pill-padding-x; 42 | padding-left: $badge-pill-padding-x; 43 | @include border-radius($badge-pill-border-radius); 44 | } 45 | 46 | // Colors 47 | // 48 | // Contextual variations (linked badges get darker on :hover). 49 | 50 | @each $color, $value in $theme-colors { 51 | .badge-#{$color} { 52 | @include badge-variant($value); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /_sass/bootstrap/_breadcrumb.scss: -------------------------------------------------------------------------------- 1 | .breadcrumb { 2 | display: flex; 3 | flex-wrap: wrap; 4 | padding: $breadcrumb-padding-y $breadcrumb-padding-x; 5 | margin-bottom: $breadcrumb-margin-bottom; 6 | list-style: none; 7 | background-color: $breadcrumb-bg; 8 | @include border-radius($breadcrumb-border-radius); 9 | } 10 | 11 | .breadcrumb-item { 12 | // The separator between breadcrumbs (by default, a forward-slash: "/") 13 | + .breadcrumb-item { 14 | padding-left: $breadcrumb-item-padding; 15 | 16 | &::before { 17 | display: inline-block; // Suppress underlining of the separator in modern browsers 18 | padding-right: $breadcrumb-item-padding; 19 | color: $breadcrumb-divider-color; 20 | content: $breadcrumb-divider; 21 | } 22 | } 23 | 24 | // IE9-11 hack to properly handle hyperlink underlines for breadcrumbs built 25 | // without `