Bloggo is a self-hosted blogging CMS. Or at least it will be. One day.
The idea is to use a fast and simple language for the backend, Go, and a simple system of CSS Grids for allowing to customize the interface. This way, it makes it easy for everyone to have their own custom blog.
Table of content
- How to run it
- API Blueprints
- Postman collection
- Environment configuration
How to run it
localhostin your favorite browser to access the app
LogLevel=DEBUG MySQLRetryDuration=60000 MySQLRetryInterval=2000 MySQLURL=root:root@tcp(db:3306)/bloggo?charset=utf8&parseTime=True&loc=Local ServerAddress=0.0.0.0 ServerPort=4242
Please note that the JWT Secret isn't configured by default and needs to be set for the app to work properly. It is also highly recommended to change the credentials used for the database.
To set the configuration values, you need to set environment variables. See the environment variables section. This can be done in the
docker-compose.yml file for docker deployments, or by setting your own environment variables if you are using the
- Import the collection in Postman.
To test the API, I recommend importing the postman collection and using Postman.
You will need to first register a new user using one of the provided requests, and to update the collection's authentication token with the token the registration API returned you.
In order to do that, hover the
Bloggo collection name in Postman and click on the three dots to see the collection options. Then, click on
Edit and navigate to the
Authorization tab. Finally, paste your token in the
Token field, without the double quotes.
If you are using
docker for deploying Bloggo, you can easily update those environment variables in the
docker-compose.yml file like such:
Here are the different variables that you can set:
Sets the log level. Default value is
Sets the API IP address. Default value is
Sets the port used by the API. Default value is
Can be any value between
Sets the address on which the MySQL driver will attempt to connect. Default value is
It is highly recommended to change the credentials used for the database, and this means this default value has to be overwritten by replacing
root:root with the new username and password.
Also, if you want to use a MySQL database that isn't in
docker-compose.yml, you should replace
db:3306 with the IP address of the MySQL host.
Sets the duration for which Bloggo should attempt to reconnect to MySQL after a failed attempt. Default value is
1m (one minute).
Sets the interval between each reconnection attempt to MySQL within the retry duration. Default value is
2s (two seconds).
Sets the number of iterations of hashing that the bcrypt algorithm will run when hashing passwords. Default value is
Can be any value between
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.
There is no documentation for this package.