├── .npmrc ├── tsconfig.json ├── netlify.toml ├── src ├── styles │ ├── global.scss │ ├── main.scss │ ├── variables.scss │ ├── custom.scss │ ├── site.scss │ └── content.scss ├── components │ ├── HomeHeader.astro │ ├── Head │ │ ├── GoogleAnalytics.astro │ │ └── BaseHead.astro │ ├── Footer │ │ ├── Squiggle.astro │ │ ├── Footer.astro │ │ └── Social.astro │ ├── Paginator.astro │ ├── Nav.astro │ ├── Subscribe │ │ └── EmailSignup.astro │ ├── Card.astro │ ├── BlogPost.astro │ └── SearchInput.astro ├── pages │ ├── rss.xml.js │ ├── search.astro │ ├── 404.astro │ ├── index.astro │ └── posts │ │ ├── [...page].astro │ │ ├── how-to-compare-dates-in-javascript.md │ │ ├── installing-go-on-a-mac.md │ │ └── introducing-astro.md └── layouts │ └── BlogPostLayout.astro ├── public ├── robots.txt ├── images │ ├── creek.png │ ├── social.jpg │ ├── favicon.ico │ ├── Golang-Basics.png │ ├── introducing-astro.jpg │ └── javascript-logo-banner.jpg └── search-index.json ├── .stackblitzrc ├── postcss.config.cjs ├── astro.config.mjs ├── .github └── dependabot.yml ├── scripts └── search │ ├── package.json │ └── prepare-index.js ├── .gitignore ├── package.json ├── LICENSE ├── README.md └── tailwind.config.js /.npmrc: -------------------------------------------------------------------------------- 1 | ## force pnpm to hoist 2 | shamefully-hoist = true -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "moduleResolution": "node" 3 | } 4 | -------------------------------------------------------------------------------- /netlify.toml: -------------------------------------------------------------------------------- 1 | [build] 2 | command = "yarn build" 3 | publish = "dist" 4 | -------------------------------------------------------------------------------- /src/styles/global.scss: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Allow: / 3 | 4 | Sitemap: https://howtocode.io/sitemap.xml -------------------------------------------------------------------------------- /.stackblitzrc: -------------------------------------------------------------------------------- 1 | { 2 | "startCommand": "npm start", 3 | "env": { 4 | "ENABLE_CJS_IMPORTS": true 5 | } 6 | } -------------------------------------------------------------------------------- /public/images/creek.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/robertguss/Astro-Theme-Creek/HEAD/public/images/creek.png -------------------------------------------------------------------------------- /public/images/social.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/robertguss/Astro-Theme-Creek/HEAD/public/images/social.jpg -------------------------------------------------------------------------------- /postcss.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: [require("autoprefixer"), require("tailwindcss")], 3 | }; 4 | -------------------------------------------------------------------------------- /public/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/robertguss/Astro-Theme-Creek/HEAD/public/images/favicon.ico -------------------------------------------------------------------------------- /public/images/Golang-Basics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/robertguss/Astro-Theme-Creek/HEAD/public/images/Golang-Basics.png -------------------------------------------------------------------------------- /public/images/introducing-astro.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/robertguss/Astro-Theme-Creek/HEAD/public/images/introducing-astro.jpg -------------------------------------------------------------------------------- /src/styles/main.scss: -------------------------------------------------------------------------------- 1 | @import "./global"; 2 | @import "./variables"; 3 | @import "./content"; 4 | @import "./site"; 5 | @import "./custom"; -------------------------------------------------------------------------------- /src/styles/variables.scss: -------------------------------------------------------------------------------- 1 | $font-display: 'Londrina Solid', 'sans-serif' !important; 2 | $font-body: 'Poppins', 'sans-serif' !important; -------------------------------------------------------------------------------- /public/images/javascript-logo-banner.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/robertguss/Astro-Theme-Creek/HEAD/public/images/javascript-logo-banner.jpg -------------------------------------------------------------------------------- /astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "astro/config"; 2 | import sitemap from "@astrojs/sitemap"; 3 | 4 | export default defineConfig({ 5 | integrations: [sitemap()], 6 | site: "https://astro-theme-creek.netlify.app/", 7 | }); 8 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | # Enable version updates for npm 4 | - package-ecosystem: "npm" 5 | # Look for `package.json` and `lock` files in the `root` directory 6 | directory: "/" 7 | # Check for updates once a week 8 | schedule: 9 | interval: "weekly" -------------------------------------------------------------------------------- /scripts/search/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "search", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "prepare-index.js", 6 | "type": "module", 7 | "scripts": { 8 | "test": "echo \"Error: no test specified\" && exit 1" 9 | }, 10 | "author": "Aftab Alam", 11 | "license": "ISC" 12 | } 13 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist 3 | 4 | # dependencies 5 | node_modules/ 6 | .snowpack/ 7 | 8 | # logs 9 | npm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | 13 | # environment variables 14 | .env 15 | .env.production 16 | 17 | # macOS-specific files 18 | .DS_Store 19 | 20 | #cypress 21 | cypress/videos 22 | cypress/screenshots -------------------------------------------------------------------------------- /src/components/HomeHeader.astro: -------------------------------------------------------------------------------- 1 | --- 2 | export interface Props { 3 | title: string; 4 | description: string; 5 | } 6 | const { title, description } = Astro.props; 7 | --- 8 | 9 |
10 |

{title}

11 |

{description}

12 |
-------------------------------------------------------------------------------- /src/components/Head/GoogleAnalytics.astro: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /src/pages/rss.xml.js: -------------------------------------------------------------------------------- 1 | import rss from "@astrojs/rss"; 2 | 3 | const postImportResult = import.meta.globEager("./posts/*.md"); 4 | const posts = Object.values(postImportResult); 5 | 6 | export const get = () => 7 | rss({ 8 | title: "Astro Theme Creek", 9 | description: "A Theme for Astro", 10 | site: import.meta.env.SITE, 11 | items: import.meta.glob("./posts/**/*.md"), 12 | }); 13 | -------------------------------------------------------------------------------- /src/components/Footer/Squiggle.astro: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/styles/custom.scss: -------------------------------------------------------------------------------- 1 | .blog-tags a { 2 | @apply font-bold underline text-hot-pink; 3 | 4 | &:hover { 5 | @apply text-black; 6 | } 7 | } 8 | 9 | #searchBox { 10 | border: 2px solid black; 11 | border-radius: 5px; 12 | } 13 | 14 | .searchResultPage { 15 | padding: 15px 0; 16 | } 17 | 18 | .searchResultTitle { 19 | color: #fd2d78 !important; 20 | } 21 | 22 | ::-moz-selection { 23 | color: white; 24 | background: #fd2d78; 25 | } 26 | 27 | ::selection { 28 | color: white; 29 | background: #fd2d78; 30 | } -------------------------------------------------------------------------------- /src/components/Paginator.astro: -------------------------------------------------------------------------------- 1 | --- 2 | const { page } = Astro.props 3 | --- 4 | 5 |
6 | {page.url.prev && 7 | 11 | Prev 12 | 13 | } 14 | 15 | {page.url.next && 16 | 19 | Next 20 | 21 | } 22 |
23 | -------------------------------------------------------------------------------- /src/components/Nav.astro: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | --- 4 | 5 | -------------------------------------------------------------------------------- /src/layouts/BlogPostLayout.astro: -------------------------------------------------------------------------------- 1 | --- 2 | import Nav from '../components/Nav.astro'; 3 | import BaseHead from '../components/Head/BaseHead.astro'; 4 | import BlogPost from '../components/BlogPost.astro'; 5 | 6 | const {content} = Astro.props; 7 | const {title, description, date, hero, youtube} = content; 8 | --- 9 | 10 | 11 | 12 | 13 | 14 | 15 |