diff --git a/.editorconfig b/.editorconfig index 1923d41..4cd9037 100644 --- a/.editorconfig +++ b/.editorconfig @@ -6,3 +6,6 @@ indent_size = 2 charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true + +[*.css] +indent_size = 4 diff --git a/Gemfile b/Gemfile index 89c8b79..bbda4d2 100644 --- a/Gemfile +++ b/Gemfile @@ -1,5 +1,4 @@ source "https://rubygems.org" -gem "jekyll-assets" gem "jekyll-last-modified-at" gem "jekyll-sitemap" diff --git a/Gemfile.lock b/Gemfile.lock index 62b150e..9c1e491 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -4,98 +4,65 @@ GEM addressable (2.7.0) public_suffix (>= 2.0.2, < 5.0) colorator (1.1.0) - concurrent-ruby (1.1.5) + concurrent-ruby (1.1.7) em-websocket (0.5.1) eventmachine (>= 0.12.9) http_parser.rb (~> 0.6.0) eventmachine (1.2.7) - fastimage (1.8.1) - addressable (~> 2.3, >= 2.3.5) - ffi (1.12.2) + ffi (1.13.1) forwardable-extended (2.6.0) - hike (1.2.3) http_parser.rb (0.6.0) - i18n (1.8.2) + i18n (0.9.5) concurrent-ruby (~> 1.0) - jekyll (4.0.0) + jekyll (3.9.0) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) - i18n (>= 0.9.5, < 2) - jekyll-sass-converter (~> 2.0) + i18n (~> 0.7) + jekyll-sass-converter (~> 1.0) jekyll-watch (~> 2.0) - kramdown (~> 2.1) - kramdown-parser-gfm (~> 1.0) + kramdown (>= 1.17, < 3) liquid (~> 4.0) mercenary (~> 0.3.3) pathutil (~> 0.9) - rouge (~> 3.0) + rouge (>= 1.7, < 4) safe_yaml (~> 1.0) - terminal-table (~> 1.8) - jekyll-assets (1.0.0) - fastimage (~> 1.6) - jekyll (>= 2) - mini_magick (~> 4.1) - sass (~> 3.2) - sprockets (~> 2.10) - sprockets-helpers - sprockets-sass - jekyll-last-modified-at (1.2.1) + jekyll-last-modified-at (1.3.0) jekyll (>= 3.7, < 5.0) posix-spawn (~> 0.3.9) - jekyll-sass-converter (2.1.0) - sassc (> 2.0.1, < 3.0) + jekyll-sass-converter (1.5.2) + sass (~> 3.4) jekyll-sitemap (1.4.0) jekyll (>= 3.7, < 5.0) jekyll-watch (2.2.1) listen (~> 3.0) - kramdown (2.1.0) - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) + kramdown (2.3.0) + rexml liquid (4.0.3) listen (3.2.1) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.3.6) - mini_magick (4.10.1) - multi_json (1.14.1) pathutil (0.16.2) forwardable-extended (~> 2.6) - posix-spawn (0.3.13) - public_suffix (4.0.3) - rack (1.6.12) - rb-fsevent (0.10.3) + posix-spawn (0.3.15) + public_suffix (4.0.5) + rb-fsevent (0.10.4) rb-inotify (0.10.1) ffi (~> 1.0) - rouge (3.15.0) + rexml (3.2.4) + rouge (3.22.0) safe_yaml (1.0.5) sass (3.7.4) sass-listen (~> 4.0.0) sass-listen (4.0.0) rb-fsevent (~> 0.9, >= 0.9.4) rb-inotify (~> 0.9, >= 0.9.7) - sassc (2.2.1) - ffi (~> 1.9) - sprockets (2.12.5) - hike (~> 1.2) - multi_json (~> 1.0) - rack (~> 1.0) - tilt (~> 1.1, != 1.3.0) - sprockets-helpers (1.2.1) - sprockets (>= 2.2) - sprockets-sass (1.3.1) - sprockets (~> 2.0) - tilt (~> 1.1) - terminal-table (1.8.0) - unicode-display_width (~> 1.1, >= 1.1.1) - tilt (1.4.1) - unicode-display_width (1.6.1) PLATFORMS ruby DEPENDENCIES - jekyll-assets jekyll-last-modified-at jekyll-sitemap diff --git a/README.md b/README.md index 216a4ef..1af5b27 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,10 @@ # jamestmartin.me -This is the source code for my personal website, [https://jamestmartin.me](jamestmartin.me). +This is the source code for my personal website, [jamestmartin.me](https://jamestmartin.me). ## Installation -This project is built using [https://jekyllrb.com/](Jekyll), a static site generator. +This project is built using [Jekyll](https://jekyllrb.com/), a static site generator. -To install this website, you must first [https://jekyllrb.com/docs/installation/](install Jekyll). +To install this website, you must first [install Jekyll](https://jekyllrb.com/docs/installation/). Next, install all necessary modules with `bundle exec`. To build the site, run `bundle exec jekyll build`. @@ -16,8 +16,8 @@ You may point your web server there and the site will work with no additional ef To work on the site without installing full web server, use `bundle exec jekyll serve`. ## Code Conventions -All of my code is valid HTML5 and CSS3 according to ["https://html.spec.whatwg.org"](WHATWG standards) +All of my code is valid HTML5 and CSS3 according to [WHATWG standards](https://html.spec.whatwg.org) -I follow the ["https://google.github.io/styleguide/htmlcssguide.html"](Google HTML/CSS Style Guide). +I follow the [Google HTML/CSS Style Guide](https://google.github.io/styleguide/htmlcssguide.html). Google recommends dropping optional tags wherever possible; -I know how to write valid XHTML as well, but choose not to as per the style guide. +I know how to write valid XHTML polyglot as well, but choose not to as per the style guide. diff --git a/_config.yml b/_config.yml index e784d47..32a522c 100644 --- a/_config.yml +++ b/_config.yml @@ -1,13 +1,4 @@ url: "https://jamestmartin.me" plugins: - - jekyll-assets - jekyll-last-modified-at - jekyll-sitemap - -assets: - destination: "/assets" - compression: true - css_compressor: scss - sources: - - assets/css - - assets/images diff --git a/_layouts/default.html b/_layouts/default.html index 388ba50..0820102 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -2,23 +2,9 @@ {{ page.title }} - - + + -
- - James T. Martin - - - -
- -
{{ content }}
+{{ content }} diff --git a/_layouts/resume.html b/_layouts/resume.html deleted file mode 100644 index 396ff6b..0000000 --- a/_layouts/resume.html +++ /dev/null @@ -1,50 +0,0 @@ - - - -James T. Martin, {{ page.title }} - - - - - - -
-
-
-

James T. Martin, {{ page.title }}

- {% if page.tagline %}{{ page.tagline }}{% endif %} -
- - -
- - -
{{ content }}
-
-
-
diff --git a/_layouts/simple.html b/_layouts/simple.html deleted file mode 100644 index 11e5526..0000000 --- a/_layouts/simple.html +++ /dev/null @@ -1,10 +0,0 @@ - - - -{{ page.title }} - - - - - -
{{ content }}
diff --git a/assets/css/resume.css b/assets/css/resume.css deleted file mode 100644 index 7219afe..0000000 --- a/assets/css/resume.css +++ /dev/null @@ -1,69 +0,0 @@ -body { - display: block; -} - -h1 { - margin: 0; -} - -h2, h3 { - margin: 5px 0; -} - -.resume { - margin: 0; -} - -.resume > header { - background: #111; - color: #eee; - - padding: 20px; -} - -/* Contains the sidebar and the resume main content. */ -.container { - display: flex; - flex-direction: row-reverse; - flex-wrap: wrap; - justify-content: space-evenly; -} - -aside { - flex: 1 1 content; - width: 100%; - - background: #f0f0f0; - color: #111; -} - -/* The resume main content. */ -.content { - flex: 1 1 content; - - max-width: 75ch; -} - -@media (min-width: 1001px) { - .content, aside { - padding: 20px 60px; - } -} - -@media (max-width: 1000px) { - .content, aside { - padding: 20px; - } -} - -.experience h3 { - display: inline-block; -} - -.experience-duration { - float: right; -} - -li { - padding: .25em 0; -} diff --git a/assets/css/style.css b/assets/css/style.css deleted file mode 100644 index ab754f5..0000000 --- a/assets/css/style.css +++ /dev/null @@ -1,55 +0,0 @@ -/* - * The body consists of a nav bar and the website's main content. - * The main content should take up the entire height of the viewport. - */ -body { - display: flex; - flex-flow: column; - max-width: 60ch; - min-height: 100vh; - margin: auto; - - background-color: #fafafa; - - font-size: 1.4rem; - font-family: monospace; - line-height: 1.8em; -} - -figure { - margin: 16px 0; - padding: 16px; - border-style: solid; -} - -figcaption { - font-weight: bold; -} - -dl { - margin: 20px; -} - -dl div:not(:last-child) { - margin-bottom: 10px; -} - -dl dd, ul li:not(:first-child) { - margin-top: 5px; -} - -dl.inline dt { - width: 10ch; -} - -dl.inline dt:after { - content: ":"; -} - -dl.inline dd { - margin: 0; -} - -dl.inline dt, dl.inline dd { - display: inline-block; -} diff --git a/assets/image/dad.webp b/assets/image/dad.webp new file mode 100644 index 0000000..7b16212 Binary files /dev/null and b/assets/image/dad.webp differ diff --git a/assets/image/discord.svg b/assets/image/discord.svg new file mode 100644 index 0000000..9084f50 --- /dev/null +++ b/assets/image/discord.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/image/email.svg b/assets/image/email.svg new file mode 100644 index 0000000..bcb0ef7 --- /dev/null +++ b/assets/image/email.svg @@ -0,0 +1 @@ + diff --git a/assets/image/github.svg b/assets/image/github.svg new file mode 100644 index 0000000..0a68a6e --- /dev/null +++ b/assets/image/github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/images/favicon.png b/assets/image/lambda.png similarity index 100% rename from assets/images/favicon.png rename to assets/image/lambda.png diff --git a/assets/image/lapfox.webp b/assets/image/lapfox.webp new file mode 100644 index 0000000..cc8e93b Binary files /dev/null and b/assets/image/lapfox.webp differ diff --git a/assets/image/original/dad.png b/assets/image/original/dad.png new file mode 100644 index 0000000..a4462e1 Binary files /dev/null and b/assets/image/original/dad.png differ diff --git a/assets/image/original/lambda.png b/assets/image/original/lambda.png new file mode 100644 index 0000000..205aadd Binary files /dev/null and b/assets/image/original/lambda.png differ diff --git a/assets/image/original/lapfox.webp b/assets/image/original/lapfox.webp new file mode 100644 index 0000000..0c12251 Binary files /dev/null and b/assets/image/original/lapfox.webp differ diff --git a/assets/image/original/smbc.png b/assets/image/original/smbc.png new file mode 100644 index 0000000..3ee5f85 Binary files /dev/null and b/assets/image/original/smbc.png differ diff --git a/assets/image/smbc.webp b/assets/image/smbc.webp new file mode 100644 index 0000000..fe32c32 Binary files /dev/null and b/assets/image/smbc.webp differ diff --git a/assets/images/photo.jpg b/assets/images/photo.jpg deleted file mode 100644 index 7d8f822..0000000 Binary files a/assets/images/photo.jpg and /dev/null differ diff --git a/assets/images/photo.webp b/assets/images/photo.webp deleted file mode 100644 index 704be93..0000000 Binary files a/assets/images/photo.webp and /dev/null differ diff --git a/assets/style/default.css b/assets/style/default.css new file mode 100644 index 0000000..8a16331 --- /dev/null +++ b/assets/style/default.css @@ -0,0 +1,41 @@ +html { + /* + * The body does not span the entire viewport, so the background color must go in the `html`. + * This difference is not visible normally, but appears to be triggered by the Dark Reader plugin for Firefox. + */ + background-color: #fafafa; +} + +body { + margin: auto; + + /** I love me some easily-readable text. */ + max-width: 60ch; + font: 1.4rem/1.8em sans-serif; +} + +.icon-list img { + width: 1.3em; + height: 1.3em; + + /* The icon should be located where the bullet would be. */ + position: relative; + left: -1.3em; + /* + * The text doesn't know that the image isn't actually there, so it must be re-aligned with a negative margin. + * I don't move over the entire 1.3 em gap, because there needs to be space between the icon and text. + */ + margin-right: -1em; +} + +.icon-list li { + /* Vertically align the text w.r.t. the icon. This has the simultaneous effect of removing the list bullet. */ + display: flex; + align-items: center; +} + +@media (prefers-color-scheme: dark) { + img.svg-icon { + filter: invert(1); + } +} diff --git a/contact.html b/contact.html deleted file mode 100644 index 9039985..0000000 --- a/contact.html +++ /dev/null @@ -1,28 +0,0 @@ ---- -layout: default -title: Contact Me -permalink: /contact ---- -
-
-

Contact Me

-
-
-
-
Email -
@jtmar.me, james -
-
-
Phone -
(206) 331-1994 -
-
-
GitHub -
jamestmartin -
-
-
LinkedIn -
jamestmartinme -
-
-
diff --git a/index.html b/index.html index 6bd5223..7cf4ea0 100644 --- a/index.html +++ b/index.html @@ -1,48 +1,36 @@ --- -layout: simple +layout: default title: James T. Martin permalink: / ---

James T Martin

-
-
Accounts:
-
-
-
GitHub
-
jamestmartin
-
-
-
Discord
-
jamestmartin#7117
-
-
-
Email
-
james (at) jtmar (dot) me
-
-
-
-
-
Communities:
-
-
-
Programming Language Design (since June 2018)
-
Moderator of: Reddit & Discord
-
Administrator of: IRC bridge
-
Programmer of: the website
-
-
-
Do Art Daily (since April 2020)
-
Developer
-
Artist (beginner)
-
-
-
+Also me: -
-
Likes:
-