https://github.com/meysam81/tarzan
π Revolutionary email-powered blogging platform. Transform your inbox into a publishing powerhouse! Send emails to create beautiful blog posts instantly. Self-hosted, zero dependencies, lightning-fast Go backend with Vue.js frontend. PWA ready, Docker support, Kubernetes deployment included. π§β¨
https://github.com/meysam81/tarzan
air-gap-compatible content-management-system docker-containerized email-powered-blogging email-to-blog go-web-framework inbound-email-processing kubernetes-deployment postmark-integration progressive-web-app rss-feed-generator self-hosted-blog single-binary-deployment sqlite-database static-site-generator tailwindcss-styling twelve-factor-app vuejs-frontend webhook-integration zero-dependencies
Last synced: 5 months ago
JSON representation
π Revolutionary email-powered blogging platform. Transform your inbox into a publishing powerhouse! Send emails to create beautiful blog posts instantly. Self-hosted, zero dependencies, lightning-fast Go backend with Vue.js frontend. PWA ready, Docker support, Kubernetes deployment included. π§β¨
- Host: GitHub
- URL: https://github.com/meysam81/tarzan
- Owner: meysam81
- License: apache-2.0
- Created: 2025-05-22T04:47:06.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-09-22T18:10:34.000Z (6 months ago)
- Last Synced: 2025-09-29T00:02:02.838Z (6 months ago)
- Topics: air-gap-compatible, content-management-system, docker-containerized, email-powered-blogging, email-to-blog, go-web-framework, inbound-email-processing, kubernetes-deployment, postmark-integration, progressive-web-app, rss-feed-generator, self-hosted-blog, single-binary-deployment, sqlite-database, static-site-generator, tailwindcss-styling, twelve-factor-app, vuejs-frontend, webhook-integration, zero-dependencies
- Language: Vue
- Homepage: https://tarzan.meysam.io
- Size: 5.06 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# π Tarzan - Revolutionary Email-Powered Blogging Platform
[](https://github.com/meysam81/tarzan/actions/workflows/ci.yml)
[](https://goreportcard.com/report/github.com/meysam81/tarzan)
[](https://github.com/meysam81/tarzan/actions)
[](https://github.com/meysam81/tarzan/releases/latest)
[](https://ghcr.io/meysam81/tarzan)
[](https://ghcr.io/meysam81/tarzan)
[](https://ghcr.io/meysam81/tarzan)
[](https://github.com/meysam81/tarzan/actions)
[](LICENSE)
[](https://github.com/sponsors/meysam81)
[](https://github.com/meysam81/tarzan/graphs/contributors)
[](https://developer-friendly.zulipchat.com/)
[](go.mod)
[](https://vuejs.org/)
[](https://tailwindcss.com/)
[](https://sqlite.org/)
[](https://oxc-project.github.io/docs/guide/usage/linter.html)
[](https://pre-commit.com/)
[](https://12factor.net/)
[](https://web.dev/progressive-web-apps/)
[](https://postmarkapp.com/inbound-email)
[](docs/email-setup.md)
[](#deployment-excellence)
[](#technical-superiority)
[](https://tarzan.meysam.io)
[](https://github.com/sponsors/meysam81)
> **Transform your inbox into a publishing powerhouse with revolutionary email-powered blogging.**
Tarzan revolutionizes content creation by turning every email you send into a beautifully rendered blog post. Built with cutting-edge technology and an unwavering commitment to simplicity, Tarzan empowers creators to publish content effortlessly while maintaining complete control over their data and infrastructure.
- [β¨ Why Choose Tarzan?](#-why-choose-tarzan)
- [π― **Effortless Publishing**](#-effortless-publishing)
- [π **Complete Ownership & Privacy**](#-complete-ownership--privacy)
- [β‘ **Lightning-Fast Performance**](#-lightning-fast-performance)
- [π¨ **Stunning Visual Design**](#-stunning-visual-design)
- [π Key Features](#-key-features)
- [**π¦ Deployment Excellence**](#-deployment-excellence)
- [**π Technical Superiority**](#-technical-superiority)
- [**π Security & Authentication**](#-security--authentication)
- [**π Open Source Excellence**](#-open-source-excellence)
- [π Quick Start](#-quick-start)
- [Docker Compose (Recommended)](#docker-compose-recommended)
- [Docker](#docker)
- [Binary Download](#binary-download)
- [Kubernetes Deployment (Enterprise Ready)](#kubernetes-deployment-enterprise-ready)
- [βοΈ Configuration](#-configuration)
- [π§ Email Integration](#-email-integration)
- [π¨ Customization](#-customization)
- [π€ Community & Support](#-community--support)
- [Get Help](#get-help)
- [Support Development](#support-development)
- [π Performance & Reliability](#-performance--reliability)
- [π Migration & Vendor Freedom](#-migration--vendor-freedom)
- [π± Modern Web Standards](#-modern-web-standards)
- [ποΈ Architecture](#-architecture)
- [π License](#-license)
- [π― What's Next?](#-whats-next)
## β¨ Why Choose Tarzan?
### π― **Effortless Publishing**
Simply send an email to your configured domain, and watch as Tarzan transforms it into a polished blog post. No complex interfaces, no learning curvesβjust pure, intuitive content creation.
### π **Complete Ownership & Privacy**
Your content, your rules. Tarzan is completely self-hostable with no vendor lock-in, ensuring your valuable content remains under your complete control.
### β‘ **Lightning-Fast Performance**
Built with Go and powered by native SQLite, Tarzan delivers exceptional speed and efficiency, making your blog blazingly fast for both you and your readers.
### π¨ **Stunning Visual Design**
Experience exceptional styling and UI with beautiful colors and responsive design that adapts seamlessly across all devices and screen sizes.
## π Key Features
### **π¦ Deployment Excellence**
- **Single Binary Deployment**: Entire application packaged in one compiled binary with all batteries included
- **No Dynamic Dependencies**: Perfect for air-gapped environments and secure deployments
- **12-Factor App Compliance**: Highly configurable and cloud-native ready
- **Docker Support**: Containerized with native Docker Compose support - deploy with one command
- **PWA Ready**: Install as a Progressive Web App on any desktop or mobile device
### **π Technical Superiority**
- **Go Backend**: Ultra-fast, minimal dependencies, exceptional performance
- **Vue.js Frontend**: Modern, component-based UI compiled with Vite into minified static assets
- **SQLite Native**: Local data storage with configurable database location
- **TailwindCSS**: Future-proof styling with extensive customization capabilities
- **RSS & Sitemap**: Built-in support for content syndication and SEO
- **Oxlint Integration**: Blazingly fast ESLint alternative for superior code quality and performance
- **Pre-commit Hooks**: Comprehensive automated checks ensuring consistent code formatting, security, and maintainability
### **π Security & Authentication**
- **Basic Authentication**: Secure webhook endpoints with configurable credentials
- **Inbound Email Processing**: Seamless integration with Postmark's inbound email system
- **SEO Optimized**: Configurable SEO settings (create your own robots.txt)
### **π Open Source Excellence**
- **Apache 2.0 License**: OSI-approved permissive licensing
- **Professional CI/CD**: State-of-the-art pipeline with cosign-signed releases
- **Zero Vulnerabilities**: Kubescape security scans on every commit ensure container images & compiled binaries remain vulnerability-free
- **Exceptional Code Organization**: DRY, KISS principles with dependency injection
- **Long-term Maintainability**: Static typing, separation of concerns, modular architecture
## π Quick Start
### Docker Compose (Recommended)
Get Tarzan running in seconds with our one-command deployment:
```bash
curl -o .env https://raw.githubusercontent.com/meysam81/tarzan/main/.env.example
curl -o docker-compose.yml https://raw.githubusercontent.com/meysam81/tarzan/main/compose.yml
# modify the .env as desired
docker compose up -d
```
Your blog will be accessible at `http://localhost:8000`
### Docker
```bash
docker run -d \
--name tarzan \
-p 8000:8000 \
-v tarzan-data:/data \
ghcr.io/meysam81/tarzan:latest
```
### Binary Download
Download the latest release for your platform:
```bash
# Linux/macOS
curl -L https://github.com/meysam81/tarzan/releases/latest/download/tarzan_linux_amd64.tar.gz | tar xz
./tarzan
# Windows
# Download from GitHub releases page
```
### Kubernetes Deployment (Enterprise Ready)
Tarzan includes official Kubernetes deployment manifests that are security-hardened for production environments:
```yaml
# tarzan/kustomization.yml
resources:
- https://github.com/meysam81/tarzan//deploy/k8s?ref=v1.0.0&timeout=2m
namespace: default
```
And then apply this resource:
```shell
kubectl apply -k ./tarzan/
```
The Kubernetes deployment includes:
- **Security-hardened containers**: Non-root user, read-only filesystem, dropped capabilities
- **Health checks**: Configurable liveness and readiness probes
- **Resource management**: Optimized for efficient cluster resource usage
- **Persistent storage**: Configurable PVC for data persistence
- **Production-ready**: Rolling updates with zero-downtime deployment strategy
## βοΈ Configuration
Tarzan follows 12-factor app principles for maximum flexibility:
```bash
# Basic configuration
export TARZAN_PORT=8000
export TARZAN_BASE__URL=https://yourdomain.com
export TARZAN_AUTH_USERNAME=your-username
export TARZAN_AUTH_PASSWORD=your-secure-password
# Advanced options
export TARZAN_DIR_DB=/path/to/database.db
export TARZAN_DIR_STORAGE=/path/to/attachments
```
## π§ Email Integration
Configure your domain's MX record to point to Postmark's inbound servers:
1. **Set MX Record**: Point your domain to `inbound.postmarkapp.com`
2. **Configure Webhook**: Set your Tarzan instance as the webhook endpoint
3. **Start Publishing**: Send emails to your domain and watch them become blog posts
_For detailed setup instructions, visit our [Email Integration Guide](docs/email-setup.md)_
## π¨ Customization
Tarzan's beautiful interface is built with TailwindCSS, making customization straightforward:
- Modify color schemes and typography
- Adjust responsive breakpoints
- Customize component layouts
- Add your brand identity
## π€ Community & Support
### Get Help
- **Community Chat**: Join our [Zulip Server](https://developer-friendly.zulipchat.com/) for real-time support
- **Issues**: Report bugs or request features on GitHub
### Support Development
Love Tarzan? Consider supporting continued development:
[](https://github.com/sponsors/meysam81)
Your support helps maintain this project and develop new features that benefit the entire community.
## π Performance & Reliability
- **Sub-millisecond Response Times**: Go's efficiency meets SQLite's speed
- **Minimal Resource Usage**: Runs efficiently on modest hardware
- **Air-Gap Compatible**: No external dependencies
- **Automated Testing**: Comprehensive CI/CD with release automation
- **Production Ready**: Battle-tested in real-world deployments
## π Migration & Vendor Freedom
Tarzan believes in data portability and vendor freedom:
- Export your content in multiple formats
- SQLite database ensures easy data access
- No proprietary formats or lock-in mechanisms
- Migrate to/from other platforms effortlessly
## π± Modern Web Standards
- **Progressive Web App**: Install and use like a native application
- **Responsive Design**: Perfect experience across all device types
- **Accessibility**: WCAG compliant with screen reader support
- **Modern JavaScript**: ES6+ with optimal browser compatibility
## ποΈ Architecture
Tarzan's architecture prioritizes maintainability and extensibility:
```
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β Vue.js SPA β β Go HTTP Server β β SQLite Databaseβ
β (TailwindCSS) βββββΊβ βββββΊβ (Local File) β
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β β β
β βΌ β
β ββββββββββββββββββββ β
βββββββββββββββΊβ Static Assets βββββββββββββββ
β (Embedded) β
ββββββββββββββββββββ
```
## π License
Tarzan is proudly open source under the [Apache License 2.0](LICENSE). This OSI-approved license ensures maximum freedom for both personal and commercial use while maintaining attribution to the original creators.
## π― What's Next?
- **Plugin System**: Extensible architecture for community contributions
- **Multi-language Support**: Internationalization for global audiences
- **Advanced Theming**: Visual theme marketplace and customization tools
- **Enhanced Analytics**: Detailed insights into content performance
---
**Ready to revolutionize your blogging experience?**
[π **Start Your Journey**](https://tarzan.meysam.io) | [π **Read the Docs**](docs/) | [π¬ **Join Community**](https://developer-friendly.zulipchat.com/)
_Built with β€οΈ by [@meysam81](https://github.com/meysam81) and the open source community_