=== Sitebix StoryMode ===
Contributors: sitebix
Donate link: https://sitebix.com
Tags: stories, video, shortcode, social, media
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 8.1
Stable tag: 3.1.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Fullscreen stories for WordPress with circle or grid layouts, optional Bunny Stream or Amazon S3 delivery, and a creator studio shortcode.

== Description ==

Sitebix StoryMode lets visitors browse story rings, tap to watch fullscreen slides (images and video), and resume from the first unseen slide when logged in.

* **Viewer:** `[sitebix_stories layout="circle"]` or `[sitebix_stories layout="shorts"]`
* **Creator studio:** `[sitebix_story_studio]` for allow-listed users
* **Access:** public, logged-in-only, or passcode-protected slides
* **Video:** WordPress Media Library by default. Optionally deliver through Bunny Stream (HLS) or Amazon S3 / CloudFront
* **Appearance:** per-shortcode color controls in settings
* **Analytics:** unique viewers per story in the admin dashboard

No dependency on WooCommerce, WPGraphQL, or other Sitebix plugins.

**Developer:** [K. Young](https://profiles.wordpress.org/sitebix/) · **Brand:** [Sitebix](https://sitebix.com) · **Support:** support@sitebix.com

== Installation ==

1. Upload `sitebix-storymode` to `/wp-content/plugins/`
2. Activate the plugin
3. Visit **StoryMode → Docs** for shortcodes and where to get Bunny / Amazon keys
4. Add `[sitebix_stories]` to a page

== Frequently Asked Questions ==

= Is Bunny Stream or Amazon S3 required? =

No. Uploads always go to the WordPress Media Library first. Bunny Stream and Amazon S3 are optional delivery providers you can turn on under **StoryMode → Settings → Media delivery**.

= Which third-party services does this plugin use? =

None by default. If you enable optional delivery:

* **Bunny Stream** (Bunny Way d.o.o.) encodes and serves HLS video. You need a Bunny account. Terms: https://bunny.net/tos/ — Privacy: https://bunny.net/privacy/
* **Amazon S3** and optional **CloudFront** (Amazon Web Services) store and serve media files. You need an AWS account. Terms: https://aws.amazon.com/service-terms/ — Privacy: https://aws.amazon.com/privacy/

API keys and secrets are stored in the WordPress database as options and are never sent to the public REST API or frontend scripts.

= How long do stories stay visible? =

Configurable under **StoryMode → Settings** (story lifetime in hours).

= Can I match my theme colors? =

Yes. **Settings → Appearance** has color pickers for the stories shortcode and the studio shortcode. Generated CSS uses `!important` so theme styles cannot override them.

= How do I remove all data on uninstall? =

Enable **Delete all plugin data on uninstall** under Settings → Advanced before deleting the plugin.

= Is FFmpeg required? =

No. If FFmpeg is installed on the server, optional video trim before ingest may be available.


== External services ==

By default this plugin does **not** call any third-party service. Media stays in the WordPress Media Library.

If a site owner enables optional media delivery under **StoryMode → Settings → Media delivery**, the plugin may connect to:

**Bunny Stream** (Bunny Way d.o.o.) — encodes and serves HLS video via `https://video.bunnycdn.com` when Bunny is selected.
* What data is sent and when: the site owner's Bunny library ID and API AccessKey; video file bytes on upload/ingest; video GUIDs for status/delete when stories use Bunny. Requests happen only after Bunny credentials are saved and Bunny delivery is enabled (admin uploads, ingest, webhook/status checks).
* Terms of Service: https://bunny.net/tos/
* Privacy Policy: https://bunny.net/privacy/

**Amazon S3** and optional **CloudFront** (Amazon Web Services) — store and serve media when S3 delivery is selected (`*.s3.amazonaws.com` / `*.s3.<region>.amazonaws.com`, and a user-configured CloudFront hostname when set).
* What data is sent and when: the site owner's AWS access key ID and secret (SigV4 signed requests); media object bytes and keys on upload/delete/list when S3 is enabled. No AWS traffic occurs until S3 credentials and a bucket are configured and S3 delivery is enabled.
* Service Terms: https://aws.amazon.com/service-terms/
* Privacy Policy: https://aws.amazon.com/privacy/

API keys and secrets are stored as WordPress options and are not exposed to public REST responses or frontend scripts.

== Screenshots ==

1. StoryMode Dashboard with active stories, viewers, and slide actions.
2. Stories list in wp-admin with poster and publish details.
3. Settings: story lifetime, slide timing, and viewer layout.
4. Shortcodes and docs for embedding story rings and the creator studio.

== Changelog ==

= 3.1.1 =
* WordPress.org review: remove freeform custom CSS; prefix legacy shortcode; harden public REST feed privacy; fix activation hook on main plugin file

= 3.1.0 =
* Media delivery: WordPress Media is the default; Bunny Stream and Amazon S3 / CloudFront are optional
* Per-shortcode appearance color controls
* Dashboard and Stories list show who posted each story
* Bunny webhook signing secret is required when using Bunny callbacks
* WordPress.org readiness: trademark copy, GPLv2 license file, hls.js attribution

= 3.0.0 =
* Complete rewrite: custom viewer, REST API, analytics, optional Bunny, creator studio, passcode gates.

== Credits ==

Developed by **K. Young** for **Sitebix**.
