Mantequilla-Soft – Weekly Progress Report #3

in Snapie2 months ago (edited)

▶️ Watch on 3Speak


image.png

Welcome to another Mantequilla-Soft Weekly Report!

This week, we made many updates, especially on 3Speak, both on the backend and the frontend. You can preview the changes at https://preview.3speak.tv/. We are still testing and gathering feedback before pushing to production.

Below is a detailed report summarizing all the changes and updates. If you are interested, we invite you to read it, but better yet, we invite you to test it on the apps. Some of the new features include shorts and playlists, along with UI improvements and optimizations. @kesolink and @tibfox worked on the frontend, and @meno on the backend. We have also attached the videos and/or posts from the Mantequilla-Soft team. We invite you to ask questions and share feedback.

Apps that were updated this week:


Summary of updates by contributors:

@tibfox

3Speak Video Player Improvements - https://play.3speak.tv/

Several playback and switching improvements landed in the video editor:

  • Added fit-to-width video support with correct aspect ratio handling.

  • Introduced iframe preloading for near-instant switching:

    • 7 iframes on mobile
    • 9 iframes on desktop
  • Switched to stable iframe IDs and opacity: 0 buffering to improve HLS performance.


Samsung Tizen TV Mode Support - https://tv.3speak.tv/?tv=true

This release introduces full Samsung Tizen TV remote-control support for 3Speak, enabling a true lean-back TV experience with TV-first navigation, controls, and layouts.

Core TV Mode

  • Automatic TV mode detection (?tv=1 or Tizen environment).
  • Focus management for sidebar and content areas.
  • Exit confirmation dialog to prevent accidental app closure.

Remote Navigation

  • Full D-pad navigation throughout the app.
  • Clear visual focus indicators for all interactive elements.
  • Sidebar open/close behavior mapped to remote controls.
  • Smart grid navigation on the homepage with row and column tracking.

Watch Page – TV Player Controls

  • TV-optimized controls overlay:

    • Play/pause via Enter
    • Seek ±10 seconds with arrow keys
    • Progress bar with visual seek indicator
  • Fullscreen toggle designed for remote usage.

  • Context menu (long-press Enter or Menu key):

    • Upvote
    • Tip creator
    • Toggle fullscreen
    • Open in browser

TV Social Overlays

  • TV upvote overlay with vote weight controls.
  • TV tipping overlay for HIVE/HBD with memo support and formatted memos.
  • On-screen keyboard for search, memos, usernames, and comments.

TV UI and Performance

  • Dedicated TV layout (WatchTV.jsx).
  • Larger thumbnails and fonts.
  • TV-friendly browsing for feeds and profiles.
  • Full remote navigation for comments, including nested replies.

Playlists and Viewing Features - https://preview.3speak.tv/profile?tab=playlists

  • Watch Later playlist with automatic creation.

  • Watched history tracking with a paginated history page.

  • Autoplay next video in playlist mode.

  • Profile UI refinements (header, cover image, avatar behavior).

  • Batch loading optimizations for performance.

  • API URLs moved to environment variables:

    • VITE_HIVE_API_URL
    • VITE_PLAYLISTS_API_URL

Link to the post: https://peakd.com/hive-181335/@tibfox/346182c2


UI Polish, Navigation, and Configuration Cleanup - https://preview.3speak.tv/

Additional quality-of-life improvements were made across navigation, watch pages, and configuration.

Sidebar and Navigation

  • Sidebar now defaults to closed and persists its state via localStorage.
  • Widened the collapsed sidebar and aligned the burger menu visually.
  • Added title tooltips to sidebar icons in collapsed mode.

Watch History and Playlists

  • Added delete controls and a tracking toggle to the Watch History page.
  • Added a Remove from Watch Later button next to playlist controls.

Visual Consistency

  • Styled community labels as dimmed badges on the watch page.
  • Standardized duration badges using semi-transparent white across all views.
  • Fixed section header SVG icons to use currentColor instead of hardcoded red.
  • Updated home section headers to use foreground color while keeping “View All” links red.

Configuration Cleanup

  • Removed development proxy fallbacks.
  • Switched fully to environment variables.
  • Cleaned up Vite configuration by removing commented-out proxy blocks.

3Speak Player Update

  • Removed lazy loading to fix iframe preloading and also centered landscape videos on mobile.

@kesolink

Shorts UX, Navigation, and Performance (3Speak) - https://preview.3speak.tv/shorts

Shorts received a significant round of refinement focused on speed, smoothness, and mobile-first usability.

Full-Screen Mobile Experience

  • Hid the navigation component on mobile for a true full-screen layout.
  • Added a back button for clearer mobile navigation.
  • Ensured the iframe fully covers its parent container on mobile.

Loading and Playback

  • Implemented thumbnail preloading with a loading spinner during initialization.
  • Added video loop functionality for automatic replay.
  • Tracked per-player ready state to hide thumbnails reactively.

Preloading and Scrolling

  • Implemented scroll direction prediction to preload relevant content.

  • Increased preload range:

    • 5 videos ahead by default
    • 7 videos ahead during fast scrolling
  • Kept 2 videos behind for smoother back navigation.

  • Added lazy loading for non-active iframes.

Pagination Improvements

  • Increased initial load from 10 to 20 videos.
  • Triggered data fetching earlier, when 8 videos remain.
  • Added a floating “Loading more shorts…” indicator.

Link to the post: https://peakd.com/hive-181335/@kesolink/9f83bb37


@meno

Shorts Feed Deduplication and Randomization (Pancreas API)

The /shorts feed was improved to eliminate repeated content and create a more varied browsing experience.

Changes

  • Deduplicated shorts using owner + thumbnail_url.

  • Randomized feed order using Fisher–Yates shuffle.

  • Tightened content filters:

    • processed: true
    • embed_url must exist and not be null
    • Limited to the last 7 days

Results

  • Example dataset reduced from 448 shorts to 117 unique entries.
  • Users see more variety and less repetition.

Homepage Feeds Implementation (Pancreas API – Production)

The 3Speak homepage feeds were migrated away from legacy REST and GraphQL indexers. All feeds are now served directly from MongoDB via the Pancreas API.

Feeds

  • Recommended (/feeds/recommended) – admin curated
  • New (/feeds/new) – recent uploads from established creators
  • Trending (/feeds/trending) – recalculated every 15 minutes
  • First Uploads (/feeds/firstUploads) – first-time creators

Trending Automation
Trending scores are recalculated every 15 minutes using weighted engagement signals from the last 7 days.


Dual-Daemon IPFS Architecture Migration

A major infrastructure upgrade was completed to address severe memory spikes and instability caused by the legacy IPFS repository (~81.6TB).

Problem

  • Single daemon handling reads and writes caused RAM spikes exceeding 120GB.
  • FlatFS datastore and mixed workloads were not sustainable.

Solution

  • Introduced a new “fresh” IPFS daemon using pebbleds for new uploads.

  • Retained the old daemon as a tamed, read-only archive with:

    • Limited connections
    • DHT disabled
    • Reduced background overhead
  • Routed all traffic through Nginx to prevent direct daemon access.

  • Resolved follow-up issues related to stuck disk operations, GC flags, and bitswap flooding.

Results

  • RAM usage stabilized (example: 90GB spike reduced to ~21GB).
  • Correct upload routing restored.
  • Playback and hot node backups stabilized.

Node Banning System Fix

An issue allowing banned nodes to receive encoding jobs was resolved.

Fixes

  • Moved ban checks earlier in the job assignment flow.
  • Added a second ban validation inside acceptJob as a fail-safe.

Posts and videos by Meno related to these topics:

Link to the post: https://peakd.com/hive-178315/@meno/3aeabc21


Link to the post: https://peakd.com/hive-178315/@meno/ec4fb06f


Link to the post: https://peakd.com/hive-178315/@meno/af2b5f7b


image.png

Link to the post: https://peakd.com/hive-178315/@meno/decentralized-videos-finding-the-sweet-spot


@eddiespino

Admin Panel Updates (Internal Tooling)

The internal Admin Hub was updated to improve safety, stability, and day-to-day usability.

  • Connected and secured the repository for internal use.

  • Wired the UI to the CSV workflow; the admin hub now reads 3SpeakAdminHub.csv via /api/tools.

  • Added MongoDB-based category filtering.

  • Improved UI stability with better animations and stable list keys.

  • Hardened the repository against secret leaks:

    • Added .gitignore and .env.example
    • Implemented a password gate using ADMIN_PASSWORD
  • Updated the README for internal usage and pushed changes to GitHub.

Update on the beneficiary rewards website - https://bene.aliento.blog/

Goal:

  • Users needed to see their liquid HIVE rewards.

Fix/Solution:

  • Implemented functionality to display liquid HIVE rewards.

MantequillaC.png

YouTube Mirror


Join our Discord Communities:

3SpeakSnapieProyecto Aliento


Support our Witnesses:

ThreespeakSnapieAliento


https://www.mantequilla-soft.com/

https://github.com/orgs/Mantequilla-Soft/repositories


▶️ 3Speak

Sort:  

So much progress - I love working with you guys!

It's great having you on the team!

Congratulations @mantequilla-soft! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

You received more than 1750 upvotes.
Your next target is to reach 2000 upvotes.
You distributed more than 500 upvotes.
Your next target is to reach 600 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out our last posts:

Our Hive Power Delegations to the January PUM Winners

Mantequilla ,because it gets melted very quick?

Mantequilla because we create Butter-Smooth Apps and tools.

Why don't you run ads on 3speak ?

The idea has been brought up... it might happen in the future.