Pretty social media preview thumbnails on the edge

Overview

pretty-grauniad-thumbnails

Created for the Guardian Fastly Hack day. I aimed to improve the rendering of our social media post sharing thumbnail images. Namely, I wanted to add some details about the article content to the image itself to make it clearer to users what they are clicking on.

Project link


The project runs on Fastly’s Compute@Edge

Useful commands:

  • fastly compute serve --skip-verification --watch
  • fastly compute deploy

It also uses the excellent image and imageproc libraries for rust to do the image manipulation.

The content is served through the Guardians' CAPI (content api) infra.

Here's what they look like now:

the current guardian thumbnail format, with the logo on the bottom right

And the result of the hack:

Top alignment

the output from this program, adding a newer version of the logo as well as the article title and short description

Bottom alignment

the output from this program, adding a newer version of the logo as well as the article title and short description

Dark mode

the output from this program, adding a newer version of the logo as well as the article title and short description

You might also like...
A distributed, cryptographically-verifiable blog / social network

FeoBlog FeoBlog is a distributed blogging platform. It takes a lot of its inspiration from Mastodon and Scuttlebutt. It aims to solve a couple of prob

Fixes macOS Preview garbled annotations

PDF Annotation Fixer macOS Preview sometimes 'forgets' about annotations that were added to a PDF file. This can be particularly frustrating after pro

Asset-Pool is a decentralized lending protocol and enables users to lend through their social networks

Run If you need to, set up your Substrate development environment . Then, build and run a development chain: $ cargo run -- --dev --tmp Once the node

A preview of the integration between Bitcoin and the Internet Computer.

Bitcoin Integration Developer Preview Overview The integration between the Internet Computer and Bitcoin will enable developers to build canisters tha

Bevy plugin to simulate and preview different types of Color Blindness.
Bevy plugin to simulate and preview different types of Color Blindness.

Bevy Color Blindness Simulation Bevy plugin to simulate and preview different types of Color Blindness. This lets you ensure that your game is accessi

VoceChat is a superlight rust written social server. Easy integration to your site/app.

Re-decentralized the Internet through personal cloud computing. VoceChat is the lightest chat server prioritizes private hosting! Easy integratation t

Preview Image in CLI.
Preview Image in CLI.

PIC 📷 PIC (Preview Image in CLI ) is a lightweight Rust tool to preview images in your terminal! With support for various image protocols (Kitty, Six

[PoC] An all-in-one preview window for the furries

previuwu An all-in-one preview window for the furries. Uses egui to render the preview window. STATUS: Proof of Concept ( ⚠️ heavy work in progress).

runs init, preview and apply on pulumi stacks right in your Github Actions. Inspired from Atalantis for Terraform

pulumi-actions runs init, preview and apply on pulumi stacks right in your Github-Actions. Inspired from Atlantis for Terraform PREVIEW Release Curren

Peer-to-Peer, incentive social feed application on Linera
Peer-to-Peer, incentive social feed application on Linera

ResPeer: Peer-to-Peer content publishing application on Linera ResPeer on Linera ResPeer is a Peer-to-Peer content publishing application on Linera. R

Tiny cross-platform webview library for C/C++/Golang. Uses WebKit (Gtk/Cocoa) and Edge (Windows)

webview A tiny cross-platform webview library for C/C++/Golang to build modern cross-platform GUIs. Also, there are Rust bindings, Python bindings, Ni

WebAssembly on Rust is a bright future in making application runs at the Edge or on the Serverless technologies.
WebAssembly on Rust is a bright future in making application runs at the Edge or on the Serverless technologies.

WebAssembly Tour WebAssembly on Rust is a bright future in making application runs at the Edge or on the Serverless technologies. We spend a lot of ti

Interface definitions for the Compute@Edge platform in witx.

🔗 compute-at-edge-abi This repository contains witx definitions for the Compute@Edge platform ABI. About witx The witx file format is an experimental

Viceroy provides local testing for developers working with Compute@Edge.
Viceroy provides local testing for developers working with Compute@Edge.

Viceroy provides local testing for developers working with Compute@Edge. It allows you to run services written against the Compute@Edge APIs on your local development machine, and allows you to configure testing backends for your service to communicate with.

Automate device security provisioning with edge intelligence.

UNiD Automate device security provisioning with edge intelligence Features Decentralized PKI(DPKI), DIDs, DKMS, and Credential Management End-to-End E

s3d is an S3 daemon for the Edge written in Rust
s3d is an S3 daemon for the Edge written in Rust

s3d is an S3 daemon for the Edge written in Rust The goal of s3d is to provide a daemon for edge platforms (e.g. factory servers 🏭 planes 🛩 ships 🚢

Rust implementation of the Edge IoT framework

A Rust-based implementation of Edge-rs for the Raspberry Pi Pico Getting started For more details see the following article on getting started for get

Emulates an Edge hardware-based room sensor client purely as a CLI application

ambi_mock_client Usage You must have Rust installed to build ambi_mock_client. You can find documentation on installing Rust here. Using cargo run c

Provides a mock Ambi client that emulates real sensor hardware such as an Edge client

ambi_mock_client Provides a mock Ambi client that emulates real sensor hardware such as an Edge client. Usage You must have Rust installed to build am

Owner
Oliver Barnwell
moving through life one pull request at a time. engineer @guardian
Oliver Barnwell
CLI and utilities for converting media files (images/videos) to ascii outputs (output media file or print to console)

CLI and utilities for converting media files (images/videos) to ascii outputs (output media file or print to console). Supports most standard image formats, and some video formats.

Michael 30 Jan 1, 2023
Thumbnailer - This crate can be used to create thumbnails for all kinds of files.

Thumbnailer This crate can be used to create thumbnails for all kinds of files. Usage use thumbnailer::{create_thumbnails, Thumbnail, ThumbnailSize};

Julius Riegel 4 Oct 30, 2022
Image processing proxy and API, created to allow faster media delivery for the Holaplex storefront.

Description imgopt is an image processing proxy with a very simple API, created to download and dynamically scaledown, convert, and cache different me

Holaplex 5 Nov 3, 2022
Generates preview thumbnails for 3D model files

Generates preview thumbnails for 3D model files. Provide a Windows Explorer extensions that adds preview thumbnails for 3D model files.

EYHN 244 Dec 27, 2022
Test social media cards locally

Share Preview Test social media cards locally Description Preview and debug websites metadata tags for social media share. Third Party Packages Distri

Rafael Mardojai CM 65 Dec 25, 2022
Memory.lol - a tiny web service that provides historical information about social media accounts

memory.lol Overview This project is a tiny web service that provides historical information about social media accounts. It can currently be used to l

Travis Brown 317 Jul 12, 2023
Social media style compact number formatting for rust.

prettty-num Format integers into a compact social media style format, similar to using Intl.NumberFormat("en", { notation: "compact" }); as a number f

null 5 Aug 17, 2024
CLI and utilities for converting media files (images/videos) to ascii outputs (output media file or print to console)

CLI and utilities for converting media files (images/videos) to ascii outputs (output media file or print to console). Supports most standard image formats, and some video formats.

Michael 30 Jan 1, 2023
Media Cleaner is a simple CLI tool to clean up your media library based on your Overseerr requests and Tautulli history, written in Rust.

Media Cleaner Media Cleaner is a simple CLI tool to clean up your media library based on your Overseerr requests and Tautulli history, written in Rust

Felix Bjerhem Aronsson 21 Mar 22, 2023
Thumbnailer - This crate can be used to create thumbnails for all kinds of files.

Thumbnailer This crate can be used to create thumbnails for all kinds of files. Usage use thumbnailer::{create_thumbnails, Thumbnail, ThumbnailSize};

Julius Riegel 4 Oct 30, 2022