mirror of
				https://github.com/tiyn/beaker-blog.git
				synced 2025-10-31 02:41:17 +01:00 
			
		
		
		
	
			
				
					
						
					
					070be5b0e26d0e4f2937d5a761227807f65bd22a
				
			
			
		
	Beaker Blog
This is a simple blog based on Pythons Flask framework. The basic design is based on LukeSmithXYZs blog. However I dislike using a script for adding entries and just want to add entries via plain text files.
Features/To-Dos
- Plain text support for blog entries
- HTML files (.html)
- Markdown Files (.md)
 
- Infinite-scroll blog page
- Search page
- Full-text search
- Preview panel
- Archive page
- Months as headings
- Links to scrolling blog page
- Links to standalone article
 
- Standalone article page
- Links to scrolling blog page
 
- RSS feed
- Navigation
- Header
- Footer
 
- Switchable CSS
- CSS dark-theme
- CSS light-theme
 
- Language Support
- English
- German
 
- Config file
- Docker installation
- Logo
Usage
Create entries
Blog entries are managed by plain html files in the templates/entry/ directory.
The first line of each document is reserved as the title of the document.
You have to specify the filetype by extension.
Deployment
PIP/Python
- git clone https://github.com/tiyn/beaker-blog
- cd beaker-blog/src
- edit the config.pyfile according to your needs
- pip3install -r requirements.txt- install depenencies
- run python app.py
- blog is available on port 5000
Docker
Make sure you copy an example config.py and edit it before running the container.
The config.py can be found in the src folder.
Volumes
Set the following volumes with the -v tag.
| Volume-Name | Container mount | Description | 
|---|---|---|
| config-file | /blog/config.py | Config file | 
| entries | /blog/templates/entry | Directory for blog entries | 
| graphics | /blog/static/graphics | Directory for images needed for entries | 
| css | /blog/static/css | (optional) Directory for css files | 
| html | /blog/templates | (optional) Directory for templates (entry-volume not needed) | 
Ports
Set the following ports with the -p tag.
| Container-Port | Recommended outside port | Protocol | Description | 
|---|---|---|---|
| 5000 | 80 | TCP | HTTP port | 
Example run-command
An example run command is shown in rebuild.sh.
					Languages
				
				
								
								
									Python
								
								51.3%
							
						
							
								
								
									HTML
								
								26.5%
							
						
							
								
								
									CSS
								
								19.6%
							
						
							
								
								
									Dockerfile
								
								1.7%
							
						
							
								
								
									Shell
								
								0.9%
							
						
					