├── .gitignore ├── .gitmodules ├── .nvmrc ├── .prettierignore ├── .prettierrc ├── .travis.yml ├── LICENSE ├── README.md ├── build.sh ├── date.js ├── gatsby-browser.js ├── gatsby-config.js ├── gatsby-node.js ├── gatsby-ssr.js ├── package-lock.json ├── package.json ├── src ├── client │ └── apolloClient.js ├── components │ ├── article │ │ ├── headerMeta.js │ │ ├── headerTags.js │ │ ├── postHero.js │ │ ├── postTitleHeader.js │ │ ├── renderAuthorDetails.js │ │ ├── renderComments.js │ │ └── renderMainArticle.js │ ├── authorList.js │ ├── avatar.js │ ├── bio.js │ ├── layout.js │ ├── layout │ │ ├── header.js │ │ ├── headerBar.js │ │ ├── link.js │ │ ├── postRollArticle.js │ │ ├── postRollArticleHero.js │ │ ├── postRollArticleShimmer.js │ │ ├── postRollFooter.js │ │ ├── postRollRenderedArticle.js │ │ ├── sidebarAuthor.js │ │ ├── sidebarRecent.js │ │ └── sidebarTags.js │ ├── layoutAuthor.js │ ├── layoutPost.js │ ├── postBrief.js │ ├── postRollAll.js │ ├── postRollByAuthorId.js │ ├── postRollByTagName.js │ ├── seo.js │ ├── sidebar │ │ ├── renderSidebarAuthorBioParts.js │ │ ├── renderSidebarAuthorDetails.js │ │ ├── renderSidebarTags.js │ │ ├── sidebarAllTags.js │ │ └── sidebarTagDetails.js │ ├── siteFooter.js │ └── tagList.js ├── hooks │ ├── addUtteranceComments.js │ ├── fetchImage.js │ ├── getAuthorDetails.js │ ├── getPostAuthors.js │ ├── getPostTagDetails.js │ ├── getPosts.js │ ├── getPostsByTagName.js │ ├── getSiteLogoSrc.js │ └── static │ │ ├── getAuthorDetailsStatic.js │ │ ├── getFormattedTags.js │ │ ├── getGithubLogoStatic.js │ │ ├── getPostTagDetailsStatic.js │ │ ├── getPostTagsStatic.js │ │ ├── getPostsByAuthorIdStatic.js │ │ ├── getPostsByTagNameStatic.js │ │ ├── getPostsStatic.js │ │ ├── getSiteDetailsStatic.js │ │ └── getSiteLogoSrcStatic.js ├── img │ ├── discord-logo.svg │ ├── facebook-logo.svg │ ├── github-logo-white.svg │ ├── github-logo.svg │ ├── instagram-logo.svg │ ├── linkedin-logo.svg │ ├── logo.svg │ └── twitter-logo.svg ├── pages │ ├── 404.js │ └── index.js ├── scss │ ├── animations.scss │ ├── article.scss │ ├── base.scss │ ├── footer.scss │ ├── index.scss │ ├── layout.scss │ ├── mixins.scss │ ├── postroll.scss │ ├── syntax.scss │ ├── table.scss │ └── vars.scss ├── templates │ ├── author.js │ ├── blog-post.js │ └── tag.js └── utils │ ├── className.js │ ├── customSlug.js │ ├── date.js │ ├── mapPostsToTags.js │ └── mapTagDetailsToPostsTagsMap.js ├── static ├── CNAME ├── favicon.ico └── robots.txt └── uid.js /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Runtime data 9 | pids 10 | *.pid 11 | *.seed 12 | *.pid.lock 13 | 14 | # Directory for instrumented libs generated by jscoverage/JSCover 15 | lib-cov 16 | 17 | # Coverage directory used by tools like istanbul 18 | coverage 19 | 20 | # nyc test coverage 21 | .nyc_output 22 | 23 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 24 | .grunt 25 | 26 | # Bower dependency directory (https://bower.io/) 27 | bower_components 28 | 29 | # node-waf configuration 30 | .lock-wscript 31 | 32 | # Compiled binary addons (http://nodejs.org/api/addons.html) 33 | build/Release 34 | 35 | # Dependency directories 36 | node_modules/ 37 | jspm_packages/ 38 | 39 | # Typescript v1 declaration files 40 | typings/ 41 | 42 | # Optional npm cache directory 43 | .npm 44 | 45 | # Optional eslint cache 46 | .eslintcache 47 | 48 | # Optional REPL history 49 | .node_repl_history 50 | 51 | # Output of 'npm pack' 52 | *.tgz 53 | 54 | # dotenv environment variable files 55 | .env* 56 | 57 | # gatsby files 58 | .cache/ 59 | public 60 | 61 | # Mac files 62 | .DS_Store 63 | 64 | # Yarn 65 | yarn-error.log 66 | .pnp/ 67 | .pnp.js 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | .idea 72 | 73 | #submodule 74 | content 75 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "content"] 2 | path = content 3 | url = git@github.com:thejsdevsite/jsdev-content.git 4 | branch = main 5 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 12.13.0 -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .cache 2 | package.json 3 | package-lock.json 4 | public 5 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "arrowParens": "avoid", 3 | "semi": false 4 | } 5 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | git: 3 | submodules: false 4 | before_install: 5 | - sed -i 's/git@github.com:/https:\/\/github.com\//' .gitmodules 6 | - git submodule update --init --recursive 7 | node_js: 8 | - 12.13.0 9 | before_script: 10 | - npm install -g gatsby-cli 11 | deploy: 12 | provider: script 13 | script: . ./build.sh 14 | skip_cleanup: true 15 | keep_history: true 16 | on: 17 | branch: master -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The BSD Zero Clause License (0BSD) 2 | 3 | Copyright (c) 2020 Gatsby Inc. 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted. 7 | 8 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH 9 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 10 | AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, 11 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 12 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 13 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 14 | PERFORMANCE OF THIS SOFTWARE. 15 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 |
59 | Written by {author.name} {author?.summary || null} 60 | {` `} 61 | 62 | You should follow them on Twitter 63 | 64 |
65 | )} 66 |20 | {author.name} 21 |
22 | 23 | 24 | 25 |16 | Return to home page 17 |
18 |