SShortSingh.
Back to feed

Developer shares step-by-step guide to building a bilingual blog with MkDocs

0
·1 views

A developer has published a detailed walkthrough on building a personal blog using MkDocs Material, covering the full setup from dependency management to deployment. The blog is designed to support English and Chinese content simultaneously, using a directory-based convention and tag filtering rather than a dedicated i18n plugin. Posts are written in Markdown, with GitHub Actions automating site builds and deployments to GitHub Pages on every push. The setup incorporates features such as RSS, search with CJK tokenisation, giscus comments powered by GitHub Discussions, and Google Analytics 4. Custom styling inspired by the Atom One Dark Pro colour palette is applied via a single CSS override file, with distinct themes for dark and light modes.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Developer Builds Local AI Engine on Consumer GPU, Bypassing Cloud Frameworks

A developer is building LATIVM MatrixEngine v2.0, an open-source project designed to run AI inference locally on consumer-grade hardware rather than relying on cloud-based systems. The project uses DirectML to push tensor data directly into a GPU's VRAM, bypassing high-level AI frameworks for lower latency. This bare-metal approach treats the GPU as a dedicated mathematical processor, enabling round-trip inference times measured in milliseconds on a standard workstation. The developer is currently optimizing kernel scheduling specifically for the AMD RX 480 architecture. The project is publicly available on GitHub, and the developer is inviting others working on similar low-latency optimizations to collaborate.

0
ProgrammingDEV Community ·

Developer Builds Two-Layer AI Memory Gate to Stop False Policy Change Detections

A software developer identified a critical flaw in AI agent behavior where a model incorrectly flagged an unchanged data-export policy as a new rule, based solely on misleading inference from a verbatim quote. To fix this, the developer built a two-layer memory-authority gate combining an LLM proposer with a deterministic confirmer that cannot be overridden by persuasive language. A second version added a "relation-span clause" requiring that any cited sentence explicitly contain both a recognized change word and a relevant scope term before a rule change is accepted. The developer pre-registered predictions, pass/fail criteria, and expected failure modes in a public, timestamped repository before running any tests, ensuring results could not be retroactively adjusted. One known limitation remains: implicit contradictions between rules, where no explicit change language exists, are flagged for human review rather than handled deterministically.

0
ProgrammingDEV Community ·

MindSpark uses Markdown files as native format, not just an export option

Developer Prasad Patil built MindSpark, a mind-mapping tool that treats Markdown outlines as its core file format rather than a secondary export. Unlike most mind-mapping applications, MindSpark allows users to edit their mind maps directly in a text editor and have the changes reflected in a visual diagram. The key technical challenge was keeping a live canvas perfectly in sync with a text view, requiring solutions for issues like folding, word wrap, and syntax highlighting. The project is open source and available on GitHub.

0
ProgrammingDEV Community ·

Developer releases configurable Node.js logger that masks PII before data is written to logs

Software developer Sven Bajonczak has published an open-source Node.js module called PiiSanitizer, designed to automatically redact personally identifiable information before it reaches application log outputs. The tool intercepts log data at the boundary and masks common PII such as email addresses, phone numbers, credit card numbers, and IBAN-like values, while redacting sensitive object keys like passwords and tokens. A key design goal is configurability — teams can define custom regex and key-based rules to catch domain-specific identifiers, such as SAP personnel numbers, without modifying the core logger code. The module processes nested objects and arrays without mutating the original input, and supports both structured object records and JSON line formats. The project is available on GitHub and carries no runtime dependencies, making it lightweight to integrate into existing Node.js applications.

Developer shares step-by-step guide to building a bilingual blog with MkDocs · ShortSingh