@modelgrid.com/landingpage
The landing page of modelgrid chat at modelgrid.com, a chat for your models on FlexHarness, and its installer at install.modelgrid.com.
Issue Reporting and Security
For reporting bugs, issues, or security vulnerabilities, please visit community.foss.global/. This is the central community hub for all issue reporting. Developers who sign and comply with our contribution agreement and go through identification can also get a code.foss.global/ account to submit Pull Requests directly.
How it works
- The page is one web component,
<mg-landing>(ts_web/), bundled intodist_serve/withhtml/index.htmlandassets/. It is dark only; its colours and fonts are custom properties on the document (html/index.html). It loads nothing from other origins and sets no cookies. - The conversation under the hero,
<mg-chat-demo>, is modelgrid chat's own interface: thedees-harness-session-listanddees-harness-chatelements of@design.estate/dees-catalog22.7, in their dark theme, fed a scripted turn through their properties on a timer: the question with its two files, the reasoning, arun_codecall from running to done, the answer streaming, a steer waiting in the chat's queue and taken in, the steered answer with its table, and Stop and Steer, then Send, as the chat draws them. One loop takes 13 s. It is inert, labelled as an illustration and can be paused; it plays only while it is on screen and shows its last frame still when the visitor asks for reduced motion. On a phone it shows at 80 %, as a screenshot of the app would. - The code is split: the page loads
bundle.jsand two shared chunks (774 KB, 239 KB gzipped, as without the demo); the demo and the harness elements follow as their own chunk (1.75 MB, 403 KB gzipped; the server sends it brotli-compressed). The catalog's charts, terminal and code highlighting stay in chunks the demo never loads. - The installer is
install/install.sh. The server answers/ofinstall.modelgrid.comand/install.shof every host with it astext/plain; charset=utf-8, socurl -fsSL https://install.modelgrid.com | bashinstalls modelgrid chat. The script checks for Node.js 24 or later (whatmodelgridand FlexHarness declare inengines), runsnpm install -g modelgrid, or installs into~/.localwhen npm's global directory is not writable, and prints how to start it (modelgrid-chat --agl, or withMODELGRID_BACKENDS) and where its data lives. POSIX sh, no sudo, nothing piped to a shell. - The server is
@api.global/typedserver'sUtilityWebsiteServeron port 3000, with its health endpoint at/healthzon every host.www.modelgrid.comanswers every other path with a 301 to the same path and query onmodelgrid.com.
The logo
assets/logo/ holds copies of the modelgrid icon from the chat app (modelgrid.com/chat, html/logo/), which is its master: modelgrid-mark.svg in currentColor, modelgrid-app-icon.svg and favicon.svg. Change them there and copy them here. The header draws the same icon inline as a light tile (ts_web/brand.ts).
The page sets its type in Geist and Geist Mono (SIL Open Font License 1.1, assets/fonts/OFL.txt), subset to Latin and served from assets/fonts/.
Development
pnpm install
pnpm test # builds the server and the production bundle, then runs test/
pnpm run watch # rebuilds and restarts on changes, at http://localhost:3000
pnpm start # the built server
The test runs the installer against fake node and npm, starts the server, and opens the page in the system's Chrome or Chromium (google-chrome, chromium or chromium-browser).
Deployment
.smartconfig.json carries the serve.zone declaration (@git.zone/tsdeploy.deployment): the image from Dockerfile_##version## for linux/amd64 and linux/arm64, modelgrid.com, www.modelgrid.com and install.modelgrid.com routed to port 3000 with readiness at /healthz, no capabilities, no environment and built-in release evidence. The image installs its packages from verdaccio.lossless.digital (the owner's registry, read without login) and runs as uid 10001. The gitzone release has a Git target only, with pnpm test and pnpm build as preflight.
www.modelgrid.com is declared so it gets its DNS record and certificate; the server redirects it to modelgrid.com, so the page keeps one address.
License and Legal Information
This repository contains open-source code licensed under the MIT License. A copy of the license can be found in the license.md file.
Please note: The MIT License does not grant permission to use the trade names, trademarks, service marks, or product names of the project, except as required for reasonable and customary use in describing the origin of the work and reproducing the content of the NOTICE file.
Trademarks
This project is owned and maintained by Task Venture Capital GmbH. The names and logos associated with Task Venture Capital GmbH and any related products or services are trademarks of Task Venture Capital GmbH or third parties, and are not included within the scope of the MIT license granted herein.
Use of these trademarks must comply with Task Venture Capital GmbH's Trademark Guidelines or the guidelines of the respective third-party owners, and any usage must be approved in writing. Third-party trademarks used herein are the property of their respective owners and used only in a descriptive manner, e.g. for an implementation of an API or similar.
Company Information
Task Venture Capital GmbH
Registered at District Court Bremen HRB 35230 HB, Germany
For any legal inquiries or further information, please contact us via email at hello@task.vc.
By using this repository, you acknowledge that you have read this section, agree to comply with its terms, and understand that the licensing of the code does not imply endorsement by Task Venture Capital GmbH of any derivative works.