Seeridia Blog
website·Indexed 32 days ago
https://seeridia.top/A personal technical blog by a software engineering student featuring articles on frontend development, system architecture, and design. Topics include GitHub Actions automation, Vercel deployment, Cloudflare One and EasyTier networking, natural language image retrieval, and the OKRamp color scale tool.
What's inside Seeridia
- StatusHub is a self-hosted platform that monitors external service status pages and sends notifications based on configured rules. It solves the problem of fragmented status pages by aggregating dependencies into one workbench, normalizing incident data into a consistent timeline, and alerting teams only when specific change rules are met. The workbench consists of seven main areas: Overview, Services, Events, Notification Rules, Notification Channels, Delivery Records, and Settings.
Overview of StatusHub service status monitoring
StatusHub is a self-hosted platform that monitors the status of external dependencies (e.g., cloud platforms, AI APIs, CDNs) by collecting data from their public status pages. It consolidates fragmented status updates into a unified workbench, allowing teams to track incidents, determine impact, and receive automated notifications based on configured rules.Overview of StatusHub Service Status Monitoring
StatusHub is a self-hosted platform that aggregates public status pages from multiple external service providers into a single workbench. It identifies the status engine used by a provider, collects incidents and component states, and sends notifications based on user-defined rules. The platform is designed to answer three core questions: which dependencies are failing, whether the failure affects the team, and if the corresponding notifications were delivered.Overview of OKLCH for color scale generation
OKLCH (a cylindrical representation of OKLAB) is preferred for generating color scales because it provides a perceptually uniform way to control color attributes independently. Unlike sRGB or HSL, it ensures that changes in lightness (L) appear stable and changes in chroma (C) do not shift the perceived hue (h). This makes it ideal for creating UI themes where consistent visual distance between steps is required.Understand Domain Name hierarchy and ownership
A domain name acts as a human-readable address that maps to a server's IP address. It is managed globally by ICANN and sold through registrars (e.g., Alibaba Cloud, Tencent Cloud, Namecheap).
Domain Hierarchy:
- Top-Level Domain (TLD): The highest level, such as
.com,.cn, or.top. - Second-Level Domain: The unique name registered under a TLD, e.g.,
seeridia.top. - Subdomain: Additional levels created by the owner, e.g.,
api.seeridia.toporcdn.seeridia.top. Each level can be configured with its own DNS resolution settings.
- Top-Level Domain (TLD): The highest level, such as
Understand the difference between sRGB and CMYK for printing
sRGB is an additive color model (Red, Green, Blue) used by digital screens and devices. CMYK is a subtractive color model (Cyan, Magenta, Yellow, Key/Black) used in printing. Because the sRGB color gamut is larger than the CMYK gamut, converting from RGB to CMYK often results in color loss. This is most noticeable in vibrant blues, greens, purples, and oranges, which may appear duller when printed.Implement adaptive status providers in StatusHub
StatusHub utilizes a hybrid architecture for data collection: a 'General Provider' for common status page engines and 'Independent Adapters' for unique sources. For example, GitHub, Cloudflare, OpenAI, and Anthropic all use Atlassian Statuspage and share similarsummary.jsonand incident API structures, allowing them to be handled by a single general provider. In contrast, AWS uses a proprietary format (including UTF-16 JSON) and requires a dedicated independent adapter.Understand OKRamp color scale output and diagnostics
The
generateColorScalefunction returns more than just a list of colors. Each step (stop) includes metadata about its generation and gamut status.source:generatedmeans the color was naturally within sRGB;gamut-mappedmeans the chroma was reduced to fit sRGB while keeping lightness and hue.inGamut: Boolean indicating if the final color is safely displayable in sRGB.diagnostics: Provides warnings such asGAMUT_MAPPEDif colors were adjusted to fit the sRGB gamut.
{ "recommendedIndex": 6, "stops": [ { "index": 5, "label": "6", "color": "#327aff", "oklch": { "l": 0.61, "c": 0.2112, "h": 261.35 }, "inGamut": true, "source": "gamut-mapped" } ], "diagnostics": { "valid": true, "messages": [ { "code": "GAMUT_MAPPED", "severity": "info", "message": "Some stops required OKLCH chroma reduction to fit sRGB.", "stopIndexes": [0, 1, 2, 3, 4, 5, 8] } ] } }Use OKRamp for generating perceptually uniform color scales
OKRamp is a tool designed to generate, compare, and export perceptually uniform color scales and semantic themes driven by the OKLCH color space. It addresses the need to automatically expand a single seed color into a full 10-level scale (from light backgrounds to deep text emphasis) while maintaining natural transitions and supporting dark mode and neutral color generation.Interactive Tool: https://okramp.seeridia.top GitHub: https://github.com/seeridia/okramp
StatusHub Architecture Evolution
The StatusHub project evolved from a rapid prototype to a deployable version with the following infrastructure migrations to improve reliability and scalability:
- Database: Migrated from SQLite to PostgreSQL.
- Messaging/Pipeline: Evolved from in-process links to an Outbox pattern with NATS JetStream.
- Notifications: Transitioned to an independent pipeline capable of tracking retries and delivery results.
Implement adaptive status providers in StatusHub
StatusHub uses a hybrid architecture for data collection: a 'General Provider' for common status page engines and 'Independent Adapters' for unique sources. For example, GitHub, Cloudflare, OpenAI, and Anthropic all use Atlassian Statuspage and share similarsummary.jsonand incident API structures, allowing them to be handled by a single Statuspage Provider. In contrast, AWS uses a proprietary format (including UTF-16 JSON) and requires a dedicated independent adapter.Understand the difference between sRGB and CMYK for printing
sRGB is an additive color model (Red, Green, Blue) used by digital screens and devices. CMYK is a subtractive color model (Cyan, Magenta, Yellow, Key/Black) used in printing. Because the sRGB color gamut is larger than the CMYK gamut, converting from RGB to CMYK often results in 'color loss,' where vibrant colors—specifically bright blues, greens, purples, and oranges—become dull or muted when printed.