1 Nov 2026
The site now runs an MCP (Model Context Protocol) server, and it works as a Claude connector. AI agents can now read and manage the site's content directly, without going through the web UI.
All bodies are GitHub-flavoured Markdown, with math and fenced code supported. The same character limits as the web editor apply. Write operations remain restricted to admins.
Most of my release notes for the NowQuant projects are drafted alongside coding agents anyway. Now the agent can publish them straight to the forum, which keeps the project pages up to date with much less copy-pasting.
This announcement, and its banner, were published through the connector itself.
Cheers, Zhouzhou
20 Oct 2026

Announce a new member in NowQuant Project family: NowQuant Book (Beta)!
NQBook is a next-generation high-performance orderbook designed for Agentic Harness. It is fully plugin-able where agents are able to write 2 kind of plugins that either receives the feed (Adapter) or computes features (Feature).
We introduce dynamic loading into the core engine, with a C-ABI SDK: NQCPPSDK. Powered by this SDK, Agents can even write plugin using Python or Rust, without the need to recompile the core engine, thus you don't even need to copy the source code.
You can custom your plugin to adapt to whatever feed source: either live api, or history file such as Parquet, and compute whatever features you need: incremental, snapshot, cumulative, and more!
NQBook is an important part of the NowQuant Project. It provides the fundamental of feature engineering. I have released the beta version on Github and only works on MacOS. Expect to find more in the following days. Meanwhile, another project NowQuant Lake is being actively developed, which will work closely with NQBook! We will announce it shortly.
1 Sept 2026

<FileImportButton>, next to each form's submit) loads a .md file as editor text; for admins it also accepts a .html file (max 1MB) whose raw text becomes the body — shown as an attachment card (<HtmlDocCard>) in place of the editor, since HTML is never hand-written or previewed. Wired into the thread forms and the Posts/Blogs managers; announcements untouched.<Content> renders markdown through react-markdown, and an html body by injecting it as-is — the backend only accepts the format from admins, so the page trusts what it reads. Forum snippets and meta descriptions strip tags (and style/script blocks) from HTML bodies; thumbnails read the first <img>.Post/Blog carry an optional format field ("markdown" | "html"), sent with every create/edit.27 Aug 2026

Changed
updated_at now means "last activity", not "row last edited". POST /api/post and PUT /api/post stamp the parent project through the new ProjectRepository.Touch, so /api/project?sort=updated ranks projects by their newest discussion and the frontend's "New" badge lights for projects the forum has been busy in. One single-column write per post, instead of the project list joining posts and taking a MAX(updated_at) per row on every request.internal/post declares the one-method ProjectToucher interface rather than importing internal/project, and registerPostRoutes now takes the project repository.?page= stays inside the same route segment, so app/loading.tsx never fired. <PendingList> (src/components/list/) now swaps the list for the shared <Spinner> while a pager link is in flight — on Forum, Projects, Blog and a project's Discussions — driven by Next 16's useLinkStatus() reported from each <Chip>.updated_at on every thread post or edit, which sorting, the badge and <MarkSeen> already read.Added
ProjectRepository.BackfillActivity(), run once at boot next to the existing fan-verification migration. It lifts any project whose newest discussion is more recent than its own updated_at, so existing rows rank correctly from the first deploy. Idempotent — once caught up the WHERE matches nothing, and a project edited after its last post is left alone rather than rolled back.<SortControls>, <Pagination> and <Chip> are plain links, so everything works without client JS, and the forum's project filter round-trips to the backend as ?project= so the pager counts the filtered set. URL helpers live in src/lib/query.ts.seen_<kind> cookie holds a unix-seconds updated_at watermark and isFresh() lights anything changed within 3 days after that mark; an edited thread, project or post lights up again. Old id-valued cookies are ignored.sort=updated&order=desc&page_size=1 lookup (Blog reuses /api/blog/recent), so an A–Z or page-2 view never badges the wrong row. Projects join Blog and Forum with <MarkSeen kind="projects"> and a header dot.14 Aug 2026

.svg file uploading..jpg, .jpeg, .png.1920x at most.Try upload an image when making posts :).
6 Aug 2026

4 Aug 2026

Hi all,
The number of members has just reached 21! Thanks for you registration. I have recently released the version 1.1 of this site. You can now experience the refactored UI and a brand new "forum" section where anyone can send message and interact. Blog section will be adding more tutorials!
Cheers, Zhouzhou
22 Mar 2026

This website is officially embracing its 1.0 version. Welcome join the community and discover our future opportunites.