68 lines
1.5 KiB
Markdown
68 lines
1.5 KiB
Markdown
# Evrard Van Espen's Blog
|
|
|
|
This is a personal blog built with Go, using the go-org library to parse Org-mode files and generate HTML content.
|
|
|
|
## Features
|
|
|
|
- Parse Org-mode files from the `posts` directory
|
|
- Generate HTML pages for each post
|
|
- Create an index page with all posts
|
|
- Support for tags and tag pages
|
|
- Syntax highlighting for code blocks
|
|
- Responsive design with SCSS
|
|
- Media handling for images and videos
|
|
|
|
## Installation
|
|
|
|
1. Clone the repository:
|
|
```sh
|
|
git clone https://github.com/evanespen/blog.git
|
|
cd blog
|
|
```
|
|
|
|
2. Install dependencies:
|
|
```sh
|
|
go mod download
|
|
```
|
|
|
|
## Usage
|
|
|
|
1. Add your posts in Org-mode format to the `posts` directory.
|
|
2. Add the medias of the articles alongside with them
|
|
3. Build the site in dev mode (auto reload):
|
|
```sh
|
|
./build-dev.sh
|
|
```
|
|
Or with `go run .`
|
|
|
|
4. The generated site will be in the `build` directory.
|
|
|
|
## Development
|
|
|
|
- The main entry point is `main.go`.
|
|
- Templates are located in the `templates` directory.
|
|
- SCSS file is `styles/main.scss`.
|
|
- Utility functions are in `utils.go`.
|
|
- Media handling is in `medias.go`.
|
|
- Org-mode parsing is in `parse.go`.
|
|
- HTML rendering is in `render.go`.
|
|
- SCSS compilation is in `styles.go`.
|
|
- Static file copying is in `static.go`.
|
|
|
|
## TODO
|
|
- [X] code documentation
|
|
- [ ] footer
|
|
- [ ] resume page
|
|
- [ ] contact page
|
|
- [X] responsive
|
|
- [ ] RSS
|
|
- [ ] favicon
|
|
- [ ] search
|
|
- [ ] sitemap.xml
|
|
- [ ] robots.txt
|
|
- [ ] better error handling
|
|
|
|
## License
|
|
|
|
This project is licensed under the MIT License - see the LICENSE file for details.
|