Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/thewhitewulfy/personal-site

Personal site built in gatsby
https://github.com/thewhitewulfy/personal-site

astro astrojs blog blog-theme cloudflare-pages html metoric-teachings

Last synced: 3 months ago
JSON representation

Personal site built in gatsby

Awesome Lists containing this project

README

        

# [Metoric Teachings](https://alokprateek.in) Source Code

This is the source code of Metoric Teachings, a personal blog and portfolio.

## Getting started

1. **Install dependencies**

```shell
npm install
```

2. **Start developing.**

```shell
gatsby develop
```

4. **Default structure:**

```bash
.
├── public
| └──public-files # => site wide config
├── src
| ├── content # => content
| ├── components
| ├── config
| | └──site.js # => site wide config
| | └── taxonomy.yml # => taxonomy content
| ├── images
| ├── pages
| ├── layouts
| ├── styles
| └── lib
├── postcss.config.cjs
├── astro.config.mjs
```

### Posts and Pages

Posts are all Markdown files and should be placed in `src/content/` and filed under the appropriate category. Pages can be Markdown or `.js` files placed in `src/pages/`.

Front matter available for Markdown files.

| | Type | Description | Example |
| ---------------- | -------- | ----------- | ------- |
| title | string | Page title. | `"How I use Jekyll to build sites"` |
| path | string | Page permalink. | `/category-name/file-name-slug/` |
| date | datetime | Published date. | `2020-01-09` |
| last_modified_at | datetime | Updated date. | `2020-01-09T13:52:13-05:00` |
| excerpt | string | Page description used a teaser text in listings and SEO purposes. | `"This is a most excellent post about static site generators."` |
| image | string | Path to an image (relative to the Markdown file) used as a cover or teaser in listings and SEO purposes. | `../../images/post-image.jpeg` |
| categories | array | Categories to classify the post as. | `[articles]` |
| tags | array | Tags to classify the post as. | `[web development, GitHub, tutorial]` |
| toc | boolean | Display table of contents links. | `true` |
| hide_meta | boolean | Hide post meta data from page e.g. (date, read time, etc.) | `true` |
| comments | boolean | Display comments. Disabled by default. | `true` |
| comments_locked | boolean | Lock a comment threads discussion. | `true` |
| featured | boolean | Mark a post post/page as featured. | `true` |

### Markdown content

HTML recipes and such for styling custom bits of content used in Markdown files.

#### Figures

TODO: Migrate into a component. For now HTML in Markdown will suffice.

**Example:**

```html


Figure caption goes here.

```

**Two column rows:**

```html



Figure caption goes here.

```

**Three column rows:**

```html




Figure caption goes here.

```

#### Notices

Call-out text via [gatsby-remark-custom-blocks](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-custom-blocks) plugin with Markdown.

TBD

**Example:**

```markdown
[[notice | iOS screen recording]]
| Apple has built this feature directly into iOS allowing you to [capture the screen](https://support.apple.com/en-us/HT207935) directly on device.
```

#### Thumbnail gallery

TODO: Migrate into a component. For now HTML in Markdown will suffice.

**Example:**

```html


```

#### Browser frame

Wrap an image with the `.browser-frame` class to give it browser chrome styling.

**Example:**

```html




```

#### Button links

Style links to look like a button.

**Example:**

```html


Link label


```