Skip to content

NextWeb4/NextWeb4.github.io

Repository files navigation

English 简体中文 日本語

NextWeb4 GitHub Pages

Static personal publishing, a searchable article archive, and a self-measure journal at nextweb4.github.io.

Live site Last commit Repository size Stars HTML JavaScript

Purpose and audience

This repository is the deploy-ready source for the NextWeb4 personal site. It gives readers a home page, three subject modules, an author profile, a full article archive, and local browser search without requiring a framework, package installation, or application server.

The content is primarily a Chinese-language personal publication. about.html adds a Chinese/English interface switch; the three README files provide repository documentation in English, Simplified Chinese, and Japanese.

Audited content inventory

The 2026-07-18 recursive tree audit found 654 committed files:

Area Audited files Content
article/ 562 Individual static article pages
module/ 3 Investment & Thought, Reflections, and Technology & Networking category pages
data/ 5 Article metadata, a combined search index, and three category indexes
uploads/ 74 Images referenced by published articles and site icons
Repository root 10 Entry pages, shared styles/scripts, README files, and maintenance rules

These counts describe the audited commit, not a fixed product limit. The live last-commit and repository-size badges update independently as the repository changes.

Reader experience

  • index.html presents the three content modules, article discovery, global search, and public project entry points.
  • module/ pages provide category-specific browsing while retaining the shared article search.
  • article/ pages are committed HTML documents, so article reading does not depend on a database or server renderer.
  • about.html offers an author profile and persists its Chinese/English interface selection in localStorage.
  • Search suggestions support keyboard focus and combobox/listbox semantics in the audited markup and script.
  • A daily Bing wallpaper is progressive enhancement: the site remains usable with a solid-color fallback when the request, storage, or image load fails.

Repository map

Path Responsibility
index.html Homepage, module navigation, global search, and article ranking UI
about.html Author profile and Chinese/English interface dictionary
article/ 562 committed article pages in the audited tree
module/ Three category landing pages
data/articles.json Article metadata inventory
data/search-index.json Combined browser search data
data/search-index/ Category-specific search data
uploads/ Repository-owned images used by published pages
site.css, article.css Shared site and article presentation
site.js Wallpaper request, validation, cache, and fallback behavior
article-search.js Search behavior reused by category and article pages

Local preview

No dependency installation is required. From the repository root, run:

python -m http.server 8000

Open http://localhost:8000/. Use an HTTP origin instead of file:// when testing search because the pages load committed JSON through fetch().

No build, package-manager, automated test, lint, format, or CI command was found. The checked-in HTML, CSS, JavaScript, JSON, and media are already the deployment artifacts.

Search architecture

The homepage and article search normalize the query, limit token expansion, hash tokens with the browser Web Crypto API, and rank title, module, date, and committed Bloom-filter data. Results are computed locally after fetching the same-origin search index; there is no search backend and the query is not sent to a search service.

When article content changes, keep article/, module/, data/articles.json, data/search-index.json, and the relevant data/search-index/ category file synchronized. No committed generator or validation command was found to enforce this relationship automatically.

Content and publishing workflow

  1. Add or update the article HTML under article/ and place referenced media under uploads/.
  2. Update the corresponding category page and metadata/search index records.
  3. Preview through the local HTTP server and exercise direct links, search, keyboard navigation, and narrow layouts.
  4. Check path case, URL encoding for non-ASCII titles, missing media, and UTF-8 integrity.
  5. Commit the deploy-ready files. GitHub Pages publishing is controlled by repository settings outside this tree; confirm the configured source before changing branch or deployment assumptions.

Do not bulk-regenerate article pages or indexes without a verified source mapping and a link check. The repository contains published output but no source generator that can safely reconstruct it.

Network, storage, and privacy

Normal article content, styles, scripts, images, and search data are repository-local. site.js optionally requests wallpaper metadata from https://bing.biturl.top/, omits credentials and referrer information, enforces a six-second timeout, and accepts returned images only from HTTPS bing.com hosts. It skips the enhancement on constrained connections, caches a validated daily URL in localStorage, and falls back without blocking content.

The About language choice and wallpaper cache are local browser state. No analytics dependency was found in the audited root pages and scripts. README status badges add image requests to img.shields.io; they do not change the published site's runtime.

Verification checklist

  • Open the homepage, all three category pages, the About page, and representative articles through HTTP.
  • Test empty, Chinese, English, date, no-result, keyboard, and rapid-changing search queries.
  • Confirm suggestion links resolve and untrusted query text is escaped or assigned safely.
  • Check the About language toggle, persistent state, focus styles, reduced motion, and mobile layout.
  • Simulate wallpaper API failure, invalid hosts, storage failure, and image failure; content must remain readable.
  • Verify changed article metadata, category links, indexes, and uploaded media together.

Status, limitations, and contributions

The repository was active, public, unarchived, and Pages-enabled at the 2026-07-18 audit. Its main maintenance risk is drift among generated-looking article pages and indexes because no generator or automated validation suite is committed. The media directory also increases clone and page-transfer size.

Contributions should preserve UTF-8 paths, semantic and keyboard-accessible markup, safe text handling, the non-blocking wallpaper boundary, and synchronization across all content representations. Keep changes focused; do not introduce a framework or build pipeline without documenting how existing GitHub Pages publishing, content ownership, and rollback would change.

License

No license file was detected. The published writing and uploaded media may have separate provenance and rights; public availability does not by itself grant reuse permission.

About

Personal GitHub Pages blog and self-measure journal for posts, profile pages, and public project entry points.

Topics

Resources

Stars

49 stars

Watchers

4 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors