Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/defite/defite-astro
Current source for personal blog built with Astro and content by Forestry
https://github.com/defite/defite-astro
astro blogging forestry markdown
Last synced: 22 days ago
JSON representation
Current source for personal blog built with Astro and content by Forestry
- Host: GitHub
- URL: https://github.com/defite/defite-astro
- Owner: Defite
- License: mit
- Created: 2022-11-01T09:58:48.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2022-11-18T11:04:49.000Z (about 2 years ago)
- Last Synced: 2024-04-23T20:49:25.974Z (8 months ago)
- Topics: astro, blogging, forestry, markdown
- Language: Astro
- Homepage: https://nikita.codes
- Size: 501 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# AstroPaper 📄
![astro-paper](https://user-images.githubusercontent.com/53733092/192439847-534ea3f9-3294-4509-b732-5810bc2db09a.png)
![Typescript](https://img.shields.io/badge/TypeScript-007ACC?style=for-the-badge&logo=typescript&logoColor=white)
![GitHub](https://img.shields.io/github/license/satnaing/astro-paper?color=%232F3741&style=for-the-badge)
[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-%23FE5196?logo=conventionalcommits&logoColor=white&style=for-the-badge)](https://conventionalcommits.org)
[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge)](http://commitizen.github.io/cz-cli/)AstroPaper is a minimal, responsive and SEO-friendly Astro blog theme. This theme is designed and crafted based on [my personal blog](https://satnaing.dev/blog).
This theme is aimed to be accessible out of the box. Light and dark mode are supported by default and additional color schemes can also be configured.
This theme is self-documented \_ which means articles/posts in this theme can also be considered as documentations. So, see the documentation for more info.
## 🔥 Features
- [x] super fast performance
- [x] fully responsive and accessible
- [x] SEO-friendly
- [x] light & dark mode
- [x] fuzzy search
- [x] draft posts & pagination
- [x] sitemap & rss feed
- [x] highly customizable## 🚀 Project Structure
Inside of AstroPaper, you'll see the following folders and files:
```bash
/
├── public/
│ ├── assets/
│ │ └── logo.svg
│ │ └── logo.png
│ └── favicon.svg
│ └── default-og.png
│ └── robots.txt
├── src/
│ ├── assets/
│ │ └── socialIcons.ts
│ ├── components/
│ ├── contents/
│ │ └── some-blog-posts.md
│ ├── layouts/
│ └── pages/
│ └── styles/
│ └── utils/
│ └── config.ts
│ └── types.ts
└── package.json
```Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.
Any static assets, like images, can be placed in the `public/` directory.
All blog posts are stored in `src/contents/` directory.
## 📖 Documentation
Documentation can be read in two formats\_ _markdown_ & _blog post_.
- Configuration - [markdown](src/contents/how-to-configure-astropaper-theme.md) | [blog post](https://astro-paper.pages.dev/posts/how-to-configure-astropaper-theme/)
- Add Posts - [markdown](src/contents/adding-new-post.md) | [blog post](https://astro-paper.pages.dev/posts/adding-new-posts-in-astropaper-theme/)
- Customize Color Schemes - [markdown](src/contents/customizing-astropaper-theme-color-schemes.md) | [blog post](https://astro-paper.pages.dev/posts/customizing-astropaper-theme-color-schemes/)
- Predefined Color Schemes - [markdown](src/contents/predefined-color-schemes.md) | [blog post](https://astro-paper.pages.dev/posts/predefined-color-schemes/)## 💻 Tech Stack
**Main Framework** - [Astro](https://astro.build/)
**Type Checking** - [TypeScript](https://www.typescriptlang.org/)
**Component Framework** - [ReactJS](https://reactjs.org/)
**Styling** - [TailwindCSS](https://tailwindcss.com/)
**UI/UX** - [Figma](https://figma.com)
**Fuzzy Search** - [FuseJS](https://fusejs.io/)
**Icons** - [Boxicons](https://boxicons.com/) | [Tablers](https://tabler-icons.io/)
**Deployment** - [Cloudflare Pages](https://pages.cloudflare.com/)
**Illustration in About Page** - [https://freesvgillustration.com](https://freesvgillustration.com/)## 👨🏻💻 Running Locally
The easiest way to run this project locally is to run the following command in your desired directory.
```bash
npm create astro@latest -- --template satnaing/astro-paper
```Don't forget to remove Google site varification.
```bash
# in your project directory
rm -rf public/googlebbcd930f1ecacd3a.html
```## 🧞 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:3000` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run format:check` | Check code format with Prettier |
| `npm run format` | Format codes with Prettier |
| `npm run cz` | Commit code changes with commitizen |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro preview` |
| `npm run astro --help` | Get help using the Astro CLI |## ✨ Feedback & Suggestions
If you have any suggestions/feedback, you can contact me via [my email](mailto:[email protected]). Alternatively, feel free to open an issue if you find bugs or want to request new features.
## 📜 License
Licensed under the MIT License, Copyright © 2022
---
Made with 🤍 by [Sat Naing](https://satnaing.dev) 👨🏻💻