A mini blog with minimal architecture
Project description
# IceVolt
This is a work in progress. Not intended for current use.
IceVolt is a particle-sized, portable blogging platform.
```
# small
$ git ls-files | wc -l
20
# lightweight
$ git ls-files | du -sh
1.7M icevolt/
```
This web interface is lightweight, developer friendly, and performance optimized. No Bootstrap, no third-party plugins, and certainly no jQuery.
## Install
After install, make sure to run `icevolt createdb` to generate the sqlite3 database from the Flask model. Use `icevolt run` to get the development server started.
### Option 1: With Package Manager
* [Arch Linux](INSTALL.md#arch-linux---installation-guide)
* [Ubuntu](INSTALL.md#ubuntu--debian---installation-guide)
### Option 2: Platform Agnostic
* [Github](INSTALL.md#github)
* [Pip](INSTALL.md#pip)
## Usage
### Commands
```
positional arguments:
{createdb,optimize,shell,run} createdb - create database from model
optimize - optimize static files with compression
shell - returns interactive shell context
run - run the application development server
optional arguments:
-h, --help show this help message and exit
-p PORT, --port PORT port number to use
-H HOST, --host HOST server hostname
-f FILL, --fill FILL populate the database with random text
-P, --prod run in production
```
### Basic Usage
Run the development server. Not suitable for production.
```
$ icevolt run -p <port> -H <host>
```
Run the production server.
```
$ service nginx start
$ icevolt run -P
```
## Features
* Minimalistic blog powered by [Flask](https://github.com/pallets/flask) microframework
* Blog post storage with sqlite3 managed by [SQLAlchemy](https://github.com/zzzeek/sqlalchemy)
* Easy-use [manage.py](manage.py) script for application
* Minifier tool to decrease file size using [csscompressor](https://github.com/sprymix/csscompressor)
## Tools
### Database Launcher
The database launcher scans the SQLAlchemy declarative model, connects to the database server, and creates the database with Python bindings.
Before running your IceVolt blog, launch the application database with `icevolt createdb`.
**New:**
If you would like to immediately populate your empty database with random data, we have a function to do that now. Run `icevolt createdb --fill <num>` where *num* is the number of blog posts you would like to generate. This feature will fill the text blocks with random alphabet characters.
### CSS Minifier
Each application request delivers static files such as CSS. To increase performance, these files can be optimized or 'minified' to eliminate whitespace and decrease filesize.
Current tool will minify static/css/main.css by running `icevolt optimize`. This will output the optimized file as main.min.css in the static folder.
## License
GPUv3: [LICENSE](LICENSE)
## Author
[Clint Moyer](http://clintmoyer.com) created IceVolt in 2017.
This is a work in progress. Not intended for current use.
IceVolt is a particle-sized, portable blogging platform.
```
# small
$ git ls-files | wc -l
20
# lightweight
$ git ls-files | du -sh
1.7M icevolt/
```
This web interface is lightweight, developer friendly, and performance optimized. No Bootstrap, no third-party plugins, and certainly no jQuery.
## Install
After install, make sure to run `icevolt createdb` to generate the sqlite3 database from the Flask model. Use `icevolt run` to get the development server started.
### Option 1: With Package Manager
* [Arch Linux](INSTALL.md#arch-linux---installation-guide)
* [Ubuntu](INSTALL.md#ubuntu--debian---installation-guide)
### Option 2: Platform Agnostic
* [Github](INSTALL.md#github)
* [Pip](INSTALL.md#pip)
## Usage
### Commands
```
positional arguments:
{createdb,optimize,shell,run} createdb - create database from model
optimize - optimize static files with compression
shell - returns interactive shell context
run - run the application development server
optional arguments:
-h, --help show this help message and exit
-p PORT, --port PORT port number to use
-H HOST, --host HOST server hostname
-f FILL, --fill FILL populate the database with random text
-P, --prod run in production
```
### Basic Usage
Run the development server. Not suitable for production.
```
$ icevolt run -p <port> -H <host>
```
Run the production server.
```
$ service nginx start
$ icevolt run -P
```
## Features
* Minimalistic blog powered by [Flask](https://github.com/pallets/flask) microframework
* Blog post storage with sqlite3 managed by [SQLAlchemy](https://github.com/zzzeek/sqlalchemy)
* Easy-use [manage.py](manage.py) script for application
* Minifier tool to decrease file size using [csscompressor](https://github.com/sprymix/csscompressor)
## Tools
### Database Launcher
The database launcher scans the SQLAlchemy declarative model, connects to the database server, and creates the database with Python bindings.
Before running your IceVolt blog, launch the application database with `icevolt createdb`.
**New:**
If you would like to immediately populate your empty database with random data, we have a function to do that now. Run `icevolt createdb --fill <num>` where *num* is the number of blog posts you would like to generate. This feature will fill the text blocks with random alphabet characters.
### CSS Minifier
Each application request delivers static files such as CSS. To increase performance, these files can be optimized or 'minified' to eliminate whitespace and decrease filesize.
Current tool will minify static/css/main.css by running `icevolt optimize`. This will output the optimized file as main.min.css in the static folder.
## License
GPUv3: [LICENSE](LICENSE)
## Author
[Clint Moyer](http://clintmoyer.com) created IceVolt in 2017.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
IceVolt-0.1.0.tar.gz
(4.1 kB
view details)
File details
Details for the file IceVolt-0.1.0.tar.gz
.
File metadata
- Download URL: IceVolt-0.1.0.tar.gz
- Upload date:
- Size: 4.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25c465e1e91b0f1ac8da85801ea3a370dd57d25c40900a2b5b43c48c5f1c69f4 |
|
MD5 | 5b2db166de6accb79027125b51bbbdd8 |
|
BLAKE2b-256 | 31374363dc5a656908f43af4ec010a882d74d5b99e7fc9c78f05aa0869cb33bc |