Synaplan
Open-source AI platform for companies: self-hosted AI agents, GDPR-compliant chatbot widget, RAG knowledge base, WhatsApp and Outlook AI, MCP, multi-model routing. Docker, Kubernetes or hosted in Germ
ChemInventory is a chemical inventory management system. Track chemical inventory, orders, contacts and batch documents in one app.
BusinessTypeScript · CSSGitHub @juntotechnologiesOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Static marketing site for ChemInventory. Built with Vite, React 19 and Tailwind CSS. GitHub Pages serves it at cheminventory.co.
npm install --legacy-peer-deps
npm run dev
npm run dev binds to all interfaces and prints one tailnet link. Open that link.
| Command | What it does |
|---|---|
npm run dev | Start the dev server. Print the tailnet link only. |
npm test | Run the tests. They fail when a generated file drifts from site.json. |
npm run build | Build to dist/. Then prerender the page into dist/index.html. |
npm run preview | Serve dist/. |
npm run seo | Regenerate every file that derives from site.json. |
site.json holds the site facts. A zod schema in lib/site-schema.ts validates it once.
| Fact | Where it appears |
|---|---|
| Brand, headline, tagline, links | UI_LABELS, index.html, llms.txt, agents.txt, .well-known/agents.json, the og image |
| Feature groups (4 to 6), hero screenshot | Hero, features section, llms.txt, JSON-LD |
Theme colours (primary, highlight, shade and more) | app/color-palette.css, theme-color tags, the og image |
| Hero accent word | The hero headline, through lib/heading.ts |
| Crawlers and agent rules | robots.txt, agents.txt, .well-known/agents.json |
Generated files. Do not edit them by hand.
| File | Purpose |
|---|---|
public/robots.txt | Allow all crawlers. Name the sitemap. |
public/sitemap.xml | List the pages. |
public/llms.txt | Short summary for language models. |
public/agents.txt, public/.well-known/agents.json | What an automated agent may do, as text and as JSON. |
public/CNAME, public/404.html | Custom domain and the not-found page. |
public/og.png, public/apple-touch-icon.png, public/favicon.svg | Share image and icons. |
app/color-palette.css | Colour variables for light and dark. |
index.html (between the seo: markers) | Title, description, canonical, social tags, JSON-LD. |
To change a fact: edit site.json, run npm run seo, commit the result. The PNG files come from the SVG sources with system fonts, so run npm run seo on a Mac.
Each group in site.features has an id, a title, one statement of 20 words or fewer, and a screenshot. The hero has one screenshot too (site.hero).
{ "src": "/images/app/history.webp", "alt": "The Audit Log page.", "width": 2880, "height": 1500, "density": 2 }
| Field | Meaning |
|---|---|
src | WebP file under public/. 150 KB or smaller. |
width, height | Pixel size of the file. A test compares them with the file. |
density | Pixels per CSS pixel. A 2x file shows at half its pixel width. |
Take screenshots from the static demo. Crop out the demo banner and the page header band. Show no price, balance, email address or personal name.
docs/design.md lists each effect, its rules and the test that guards it.
tests/support/copy-rules.json lists words the site must not use. tests/claims.test.ts searches page text, generated files and the og image for them.