Home
Softono
g

gauthiernelkinsky

Professional software vendor delivering innovative solutions on the Softono platform. Specialized in both open-source and proprietary software development.

Total Products
1

Software by gauthiernelkinsky

ShipShipShip
Open Source

ShipShipShip

# ๐Ÿšข ShipShipShip A modern, self-hostable changelog and roadmap platform with emoji reactions, custom themes, and automated newsletters. ![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg) ![Go Version](https://img.shields.io/badge/go-1.21-blue.svg) ![Node Version](https://img.shields.io/badge/node-20+-green.svg) ![Docker](https://img.shields.io/badge/docker-ready-blue.svg) <img width="1280" height="832" alt="SSSBanner" src="https://github.com/user-attachments/assets/cc286bff-7838-4b35-b065-44ef3c99bc50" /> ## ๐Ÿ”— Links - **๐Ÿ“‹ [Website](https://shipshipship.io/)** - **๐Ÿ”— [Live Demo](https://demo.shipshipship.io/admin)** (Login: `demo` / `demo`) - **๐Ÿณ [Docker Hub](https://hub.docker.com/r/nelkinsky/shipshipship)** ## โœจ Features - ๐Ÿ“‹ **Rich Event Management** - TipTap editor with markdown support, tags, and media uploads - ๐Ÿ˜Š **Emoji Reactions** - 8 reaction types (๐Ÿ‘โค๏ธ๐Ÿ”ฅ๐ŸŽ‰๐Ÿ‘€๐Ÿ’ก๐Ÿค”๐Ÿ‘Ž) for community feedback - ๐Ÿ—ณ๏ธ **Voting System** - Let users vote on proposed features - ๐Ÿ“Š **Kanban Board** - Drag-and-drop interface with customizable statuses - ๐ŸŽจ **Theme System** - Install custom themes with manifest-based configuration - ๐Ÿ“ง **Newsletter Automation** - Auto-send emails when events change status - ๐Ÿ“ฎ **Email Templates** - Customizable templates for different event types - ๐Ÿ”ง **Admin Dashboard** - Full-featured SvelteKit admin panel - ๐Ÿ”Œ **RESTful API** - Complete API for integrations ## ๐Ÿ—๏ธ Tech Stack **Admin:** SvelteKit 2 ยท Svelte 5 ยท TailwindCSS ยท shadcn-svelte ยท TipTap **Backend:** Go 1.21 ยท Gin ยท SQLite ยท GORM **Deploy:** Docker (AMD64 & ARM64) ## ๐Ÿš€ Quick Start > ๐Ÿ”‘ Admin Panel: `/admin` > Visit http://localhost:8080/admin (or https://your-domain/admin) right after installation to complete setup. ### Docker (Recommended) ```bash docker run -d \ -p 8080:8080 \ -e ADMIN_USERNAME=admin \ -e ADMIN_PASSWORD=changeme \ -e JWT_SECRET=your-secret-key \ -e BASE_URL=https://changelog.yourdomain.com \ -v shipshipship_data:/app/data \ nelkinsky/shipshipship:latest ``` ๐Ÿ”‘ **Admin Panel:** http://localhost:8080/admin ### Docker Compose ```yaml version: "3.8" services: shipshipship: image: nelkinsky/shipshipship:latest ports: - "8080:8080" environment: - ADMIN_USERNAME=admin - ADMIN_PASSWORD=changeme - JWT_SECRET=your-secret-key - BASE_URL=https://changelog.yourdomain.com - GIN_MODE=release volumes: - shipshipship_data:/app/data restart: unless-stopped volumes: shipshipship_data: ``` ๐Ÿ”‘ **Admin Panel:** http://localhost:8080/admin ### Local Development ```bash git clone https://github.com/GauthierNelkinsky/ShipShipShip.git cd ShipShipShip # Start backend + admin dev server ./start-dev.sh # Or backend only ./quick-start.sh ``` **Dev URLs:** - Backend: http://localhost:8080 - Admin Dev: http://localhost:5173 ## โš™๏ธ Configuration | Variable | Default | Description | |----------|---------|-------------| | `ADMIN_USERNAME` | `admin` | Admin username | | `ADMIN_PASSWORD` | `admin` | Admin password | | `JWT_SECRET` | `your-secret-key-change-in-production` | JWT signing key | | `BASE_URL` | _(auto-detected)_ | Base URL of your instance (e.g., `https://changelog.yourdomain.com`) - used for email unsubscribe links | | `PORT` | `8080` | Server port | | `GIN_MODE` | `debug` | `debug` or `release` | | `DB_PATH` | `./data/changelog.db` | Database path | ## ๐ŸŽจ Theme System ShipShipShip separates the admin interface from the public-facing changelog through installable themes: 1. **Install Theme:** Upload via `/admin/customization/theme` 2. **Configure:** Customize theme settings (colors, layout, etc.) 3. **Map Statuses:** Connect your event statuses to theme categories 4. **Publish:** Your themed changelog appears at the root URL Without a theme, the root URL shows the admin interface for initial setup. ## ๐Ÿ“ง Newsletter Setup 1. Go to `/admin/newsletter/settings` 2. Configure SMTP settings (Gmail, Outlook, SendGrid, etc.) 3. Test configuration 4. Enable automation for status-based triggers 5. Customize email templates **Automation:** Automatically send newsletters when events move to specific statuses (e.g., "Released"). ## ๐Ÿ› ๏ธ Development ```bash # Full dev mode (hot reload) ./start-dev.sh # Rebuild everything ./start-dev.sh --rebuild # Backend only ./quick-start.sh ``` ### Project Structure ``` admin/ # SvelteKit admin panel (SPA) โ”œโ”€โ”€ src/routes/admin/ โ”‚ โ”œโ”€โ”€ events/ # Kanban board โ”‚ โ”œโ”€โ”€ newsletter/ # Email management โ”‚ โ””โ”€โ”€ customization/ # Themes & branding โ””โ”€โ”€ build/ # Static output (served by backend) backend/ # Go API server โ”œโ”€โ”€ handlers/ # API endpoints โ”œโ”€โ”€ models/ # Database models โ”œโ”€โ”€ services/ # Business logic (email, automation) โ””โ”€โ”€ main.go # Server entry point data/ # SQLite + uploads + themes ``` ## ๐Ÿ“– API Examples **Public:** ```bash # Get public events curl http://localhost:8080/api/events # Add reaction curl -X POST http://localhost:8080/api/events/1/reactions \ -H "Content-Type: application/json" \ -d '{"reaction_type":"thumbs_up"}' # Subscribe to newsletter curl -X POST http://localhost:8080/api/newsletter/subscribe \ -H "Content-Type: application/json" \ -d '{"email":"[email protected]"}' ``` **Admin (requires JWT):** ```bash # Create event curl -X POST http://localhost:8080/api/admin/events \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{"title":"New Feature","status":"Proposed","content":"..."}' ``` ## ๐Ÿค Contributing Contributions welcome! Fork the repo, create a feature branch, and submit a PR. ## ๐Ÿ“ License Apache 2.0 - see [LICENSE](LICENSE) ## ๐Ÿ’ฌ Support - **Issues:** [GitHub Issues](https://github.com/GauthierNelkinsky/ShipShipShip/issues) - **Website:** [shipshipship.io](https://shipshipship.io/) - **Demo:** [demo.shipshipship.io](https://demo.shipshipship.io/) --- **Built with โค๏ธ and shipped with ShipShipShip** ๐Ÿšข

Gantt & Roadmaps Product Management
290 Github Stars