All Projects → nanoblog → nanoblog

nanoblog / nanoblog

Licence: MIT license
Open source microblog with buffering and Twitter crossposting

Programming Languages

HTML
75241 projects
go
31211 projects - #10 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to nanoblog

frequency
Frequency Analytics - Open source private web analytics server
Stars: ✭ 67 (+191.3%)
Mutual labels:  self-hosted
orb
Orb is a dynamic network observability platform
Stars: ✭ 437 (+1800%)
Mutual labels:  self-hosted
koillection
Koillection is a self-hosted service allowing users to manage any kind of collections.
Stars: ✭ 259 (+1026.09%)
Mutual labels:  self-hosted
neko-rooms
Selfhosted collaborative browser - room management for n.eko
Stars: ✭ 262 (+1039.13%)
Mutual labels:  self-hosted
rebacklogs
Re:Backlogs is an Open Source Project Management Tool.
Stars: ✭ 163 (+608.7%)
Mutual labels:  self-hosted
.oh-my-comma
The idea of a 'workbench for developers' - Shell utilities, tooling, and dotfiles for comma.ai's open-source self-driving car technology stack
Stars: ✭ 110 (+378.26%)
Mutual labels:  self-hosted
covergates
The portal gates to coverage reports
Stars: ✭ 55 (+139.13%)
Mutual labels:  self-hosted
finance
💰 Free open-source personal finance tracking web application.
Stars: ✭ 156 (+578.26%)
Mutual labels:  self-hosted
nextcloud docker
Docker setup to run Nextcloud
Stars: ✭ 35 (+52.17%)
Mutual labels:  self-hosted
Minecraft Server Emulator
Minecraft Server Emulator
Stars: ✭ 24 (+4.35%)
Mutual labels:  self-hosted
fregata
A self hosted REST API for message delivery
Stars: ✭ 19 (-17.39%)
Mutual labels:  self-hosted
osmosfeed
Turn GitHub into an RSS reader
Stars: ✭ 839 (+3547.83%)
Mutual labels:  self-hosted
self-hosted
Deploy Revolt using Docker.
Stars: ✭ 490 (+2030.43%)
Mutual labels:  self-hosted
microblog
基于 Go 的个人微博客,一个供你闲言碎语的地方. Go based microblog system.
Stars: ✭ 21 (-8.7%)
Mutual labels:  microblog
newsdash
A news dashboard inspired by iGoogle and Netvibes
Stars: ✭ 44 (+91.3%)
Mutual labels:  self-hosted
rocket2
🚀 The official UBC Launch Pad Slack bot and team management platform
Stars: ✭ 17 (-26.09%)
Mutual labels:  self-hosted
gotify-broadcast
A plugin which brings broadcasts to gotify.
Stars: ✭ 30 (+30.43%)
Mutual labels:  self-hosted
RSS-to-Telegram-Bot
A Telegram RSS bot that cares about your reading experience
Stars: ✭ 482 (+1995.65%)
Mutual labels:  self-hosted
dyndnsd
A small, lightweight and extensible DynDNS server written with Ruby and Rack.
Stars: ✭ 69 (+200%)
Mutual labels:  self-hosted
Self-Hosted-Asp.Net-WebHooks
Self hosted custom webhook receiver and sender
Stars: ✭ 50 (+117.39%)
Mutual labels:  self-hosted

Nanoblog - open source microblog with scheduled posts and Twitter crossposting

Nanoblog is a simple and professional blog with a 280 character limit that supports crossposting to your Twitter account. Posts can also be buffered for automatic publication on a selected schedule to keep your blog and Twitter account fresh.

After adding Nanoblog, start writing blog posts, creating threads, and crossposting to Twitter by connecting your account.

Screenshot

Demo

Features

  • Blogging on Easy Mode
    • 280 character limit makes blogging accessible to everyone and threading makes it possible to write more when desired.
  • Scheduled Posts
    • Add posts to your queue to automatically publish on a selected schedule.
  • Twitter Crossposting
    • Add your Twitter account to enable crossposting to your timeline.
  • Threaded Posts AKA tweetstorms
    • Click the “Add another update” button to enable thread posting.
  • Web Analytics
    • Add javascript tracking code to your blog posts for web analytics.
  • Single Sign-On (SSO) with SAML
    • Support for SAML providers like G Suite and Okta.

Run Nanoblog on Portal Cloud

Portal Cloud is a hosting service that enables anyone to run open source cloud applications.

Sign up for Portal Cloud and get $15 free credit.

Run Nanoblog on a VPS

Running Nanoblog on a VPS is designed to be as simple as possible.

  • Public Docker image
  • Single static Go binary with assets bundled
  • Automatic TLS using Let's Encrypt
  • Redirects http to https
  • No database required
  • Works with a reverse proxy or standalone.

1. Get a server

Recommended Specs

  • Type: VPS or dedicated
  • Distribution: Ubuntu 16.04 (Xenial)
  • Memory: 512MB or greater

2. Add a DNS record

Create a DNS record for your domain that points to your server's IP address.

Example: nanoblog.example.com A 172.x.x.x

3. Enable Let's Encrypt

Nanoblog runs a TLS ("SSL") https server on port 443/tcp. It also runs a standard web server on port 80/tcp to redirect clients to the secure server. Port 80/tcp is required for Let's Encrypt verification.

Requirements

  • Your server must have a publicly resolvable DNS record.
  • Your server must be reachable over the internet on ports 80/tcp and 443/tcp.

Usage

Example usage:

# Download the nanoblog binary.
$ sudo wget -O /usr/bin/nanoblog https://github.com/nanoblog/nanoblog/raw/master/nanoblog-linux-amd64

# Make it executable.
$ sudo chmod +x /usr/bin/nanoblog

# Allow it to bind to privileged ports 80 and 443.
$ sudo setcap cap_net_bind_service=+ep /usr/bin/nanoblog

$ nanoblog --http-host nanoblog.example.com

Arguments

  -backlink string
        backlink (optional)
  -cpuprofile file
        write cpu profile to file
  -datadir string
        data dir (default "/data")
  -debug
        debug mode
  -help
        display help and exit
  -http-addr string
        HTTP listen address (default ":80")
  -http-host string
        HTTP host (required)
  -letsencrypt
        enable TLS using Let's Encrypt on port 443 (default true)
  -memprofile file
        write mem profile to file
  -version
        display version and exit

Run as a Docker container

The official image is nanoblog/nanoblog.

Follow the official Docker install instructions: Get Docker CE for Ubuntu

Make sure to change the --env NANOBLOG_HTTP_HOST to your publicly accessible domain name.

# Your data directory must be bind-mounted as `/data` inside the container using the `--volume` flag.
# Create a data directoy 
$ mkdir /data

docker create \
    --name nanoblog \
    --restart always \
    --volume /data:/data \
    --network host \
    --env NANOBLOG_HTTP_HOST=nanoblog.example.com \
    nanoblog/nanoblog:latest

$ sudo docker start nanoblog

$ sudo docker logs nanoblog

<log output>

Updating the container image

Pull the latest image, remove the container, and re-create the container as explained above.

# Pull the latest image
$ sudo docker pull nanoblog/nanoblog

# Stop the container
$ sudo docker stop nanoblog

# Remove the container (data is stored on the mounted volume)
$ sudo docker rm nanoblog

# Re-create and start the container
$ sudo docker create ... (see above)

Help / Reporting Bugs

Email [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].