Skip to content

Lindocode-Digital/digital-hub

Repository files navigation

Lindocode Digital

INNOVATE · BUILD · SCALE

Premium web, mobile, and backend systems built with clarity, performance, and real-world purpose.


Studio · Digital Hub · Contact




Digital Hub

Next.js React TypeScript Tailwind CSS Oracle Cloud Tests


Home


Overview

Digital Hub is the public-facing portfolio and link-safety platform for Lindocode Digital. It does two things:

  1. Project showcase — a Cover Flow carousel that lets visitors browse and deep-dive into Lindocode's work. Each card opens a full-screen overlay with project details, live screenshots, and direct links.

  2. Link Safety Scanner — paste any URL and get an instant trust score. The scanner checks HTTPS, TLS certificate validity, redirect chains, security headers (HSTS, CSP, X-Frame-Options, Referrer-Policy, Permissions-Policy), URL structure signals (IP addresses, shorteners, punycode, subdomain depth), and site reachability — then surfaces a scored, human-readable report.


Features

  • Cover Flow carousel — GSAP-powered card browsing with active-state interactions and full-screen project overlays
  • Link Safety Scanner — real-time URL analysis with a trust score, signal breakdown, and redirect chain visualization
  • Live site preview — iframe preview of scanned URLs with bot-protection and reachability detection
  • Upstream API fallback — scanner tries a hosted analysis API first; falls back to full local analysis (network probe + TLS check + header analysis) when unavailable
  • Responsive — optimized for mobile and desktop
  • 131 passing tests — unit, integration, and API route tests with CI enforcement on every PR

Project Structure

app/
├── api/
│   ├── scan/route.ts          # Link safety analysis (upstream fallback + local)
│   └── validate/route.ts      # URL reachability check with redirect chain
├── globals.css
├── layout.tsx
├── not-found.tsx
└── page.tsx

components/
├── common/
│   ├── Banner.tsx
│   ├── CompanyName.tsx
│   ├── Footer.tsx
│   └── logo/Logo.tsx
└── landing/
    ├── LandingPage.tsx
    ├── LinkChecker.tsx
    ├── carousel/
    │   ├── CarouselShell.tsx
    │   ├── CoverFlow.tsx
    │   └── CoverFlowCard.tsx
    └── overlay/
        └── ProjectOverlay.tsx

lib/
└── projects.ts                # Project data and description helpers

__tests__/                     # 131 tests across 12 suites
.github/workflows/test.yml     # CI: blocks merges when tests fail

Tech Stack

Layer Technology
Framework Next.js 16 App Router, React 19
Language TypeScript 5
Styling Tailwind CSS v4, custom CSS
Animation GSAP
Testing Jest + Testing Library (131 tests)
CI GitHub Actions — blocks merge on failure
Infrastructure Oracle Cloud VM
Media Cloudflare Workers (image delivery)

API Routes

POST /api/scan

Scores a URL for safety. Tries an upstream hosted API first; on failure runs local analysis:

  • Phase 1 — URL signals: HTTPS, IP address, URL shortener, punycode, subdomain depth, query parameter count
  • Phase 2 — Network probe: reachability, HTTP status, redirect chain, cross-domain redirects
  • Phase 3 — TLS: certificate validity and expiry
  • Phase 4 — Security headers: HSTS, CSP, X-Frame-Options, Referrer-Policy, Permissions-Policy

Returns a score (0–100), level (good / caution / high_caution), full signals array, redirect_chain, and scanned_at timestamp.

GET /api/validate?url=

Fast reachability check with redirect chain following. Returns isWorking, statusCode, finalUrl, responseTime, and friendly status text for bot-blocked codes (401, 403, 406, 429).


Author

Lindocode Digital
Trading as Lazy Apps


License

All rights reserved © Lindocode Digital



Terms · Privacy

© Lindocode Digital · South Africa

About

Digital Hub is a unified platform designed to present digital products, experiences, and capabilities through a refined, high-performance interface.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors