Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/churchtao/plainpage

A fast, text-focused, minimalist blog
https://github.com/churchtao/plainpage

astro astro-theme blog blog-theme markdown static-site

Last synced: about 13 hours ago
JSON representation

A fast, text-focused, minimalist blog

Awesome Lists containing this project

README

        


PlainPage

# PlainPage

A fast, text-focused, minimalist blog.

[English](./README.md) | [δΈ­ζ–‡](./README.zh-CN.md)

## Live Demo

- [Github Pages Demo](https://churchtao.github.io/PlainPage/)

## Features

- πŸš€ Fast: 100% static, no server-side rendering
- πŸ“– Simple: Just markdown files
- 🌈 Customizable: Customize the theme and layout
- πŸ“š SEO-friendly: Support for SEO
- πŸ“± Responsive: Support for mobile devices
- πŸ“¦ Based on [astro](https://astro.build) version latest

## βœ… Lighthouse Score

[![lighthouse](/screenshots/lighthouse-score.svg)](https://pagespeed.web.dev/analysis/https-churchtao-github-io-PlainPage/e1mpmv9swy?form_factor=desktop)

## Screenshots

![light](/screenshots/light.png)
![dark](/screenshots/dark.png)

## πŸš€ Project Structure

```text
β”œβ”€β”€ public/
β”œβ”€β”€ src/
β”‚Β Β  β”œβ”€β”€ components/
β”‚Β Β  β”œβ”€β”€ content/
β”‚Β Β  β”œβ”€β”€ layouts/
β”‚Β Β  β”œβ”€β”€ pages/
β”‚Β Β  └── consts.ts
β”œβ”€β”€ astro.config.mjs
β”œβ”€β”€ README.md
β”œβ”€β”€ package.json
└── tsconfig.json
```

The `src/content/` directory contains "collections" of related Markdown and MDX documents. Use `getCollection()` to retrieve posts from `src/content/blog/`, and type-check your frontmatter using an optional schema. See [Astro's Content Collections docs](https://docs.astro.build/en/guides/content-collections/) to learn more.

Any static assets, like images, can be placed in the `public/` directory.

All configuration is in `src/consts.ts`.

```ts
// src/consts.ts

// site config
export const SITE_TITLE = "PlainPage";
export const SITE_DESCRIPTION = "Welcome (. ❛ α΄— ❛.)";
export const COPYRIGHT = "Β© 2024 PlainPage All Rights Reserved";
export const ICP_NUMBER = "";

// social links, empty or commented out = not displayed
export const SOCIAL_LINKS = {
Github: "https://github.com/churchTao",
Twitter: "https://twitter.com/yourusername",
// LinkedIn: "https://www.linkedin.com/in/yourusername",
// Instagram: "https://www.instagram.com/yourusername",
// Facebook: "https://www.facebook.com/yourusername",
// YouTube: "https://www.youtube.com/yourusername",
};

// SEO related
export const SEO_CONFIG = {
ogImage: "/hero-img.png", // default social media share image
keywords: "blog, tech, programming", // default keywords
};

// navigation config
export const NAV_ITEMS = [
{ text: "Home", link: "/" },
{ text: "Blog", link: "/blog" },
{ text: "Tags", link: "/tags" },
{ text: "About", link: "/about" },
];

// blog config
export const BLOG_CONFIG = {
locale: "en-us", // date format language
authorName: "Author Name", // author name
email: "mailto:[email protected]",
tags: {
title: "Tags", // tags page title
description: "All the tags used in posts.", // tags page description
},
};
```

## 🧞 Commands

All commands are run from the root of the project, from a terminal:

| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
| `npm run astro -- --help` | Get help using the Astro CLI |

## Credit

This theme is based off of the lovely [Bear Blog](https://github.com/HermanMartinus/bearblog/).

Inspired by [satnaing/astro-paper](https://github.com/satnaing/astro-paper).

Based on [astro](https://astro.build).

## Sites using this theme

- [ζ―›ζ‘ƒηš„ε°δΈ–η•Œ](https://毛摃.top)
- [Mobai's Blog](https://blog.loliowo.com)

πŸ‘ You can submit your site to the list by creating a PR.

## πŸ“œ License

Licensed under the [MIT](./LICENSE) License, Copyright Β© 2024