Javis OS
Javis OS is an Agentic AI that assists entrepreneurs in business tasks, helping them grow their work.
AI translation
Book UK-to-EU pallet shipments by chat or spreadsheet, with pre-flight error checks and a carrier recommendation.
BusinessTypeScript · CSSGitHub @harshitsinha-boopOnlineOwner 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 ↗Shiprocket for cross-border freight, with a pre-flight checker. UK sellers book pallets to Germany, France or the Netherlands by chatting or uploading a spreadsheet; every booking gets Red/Amber issues with exact fixes, a recommended carrier with the reasoning shown, a confirmation with next steps, and a draft commercial invoice.
No login. Open the site, then either Book by chat (try the clickable example, then change a detail such as "add a pallet") or Upload a file (use "Download a sample file to try", or the case template). Click any booking row to see its full detail.
chat message ──► LLM extracts fields ─┐
├─► Booking ─► runChecks() ─► recommendCarrier() ─► buildConfirmation() ─► UI + invoice
.xlsx upload ──► parse.ts (no LLM) ───┘ (R-01…R-10 (feasibility, (status, next steps)
+ DATA checks) ranking, ETA)
Both flows produce the same Booking object and go through the same pipeline (lib/rules, lib/recommend.ts, lib/confirm.ts).
All rule results and carrier maths are deterministic TypeScript (lib/rules, lib/recommend.ts). The Gemini API (server routes only; key never reaches the browser) is used only to: extract fields from chat, write friendly replies, flag dangerous goods from free text as a backstop, and suggest HS codes (always labelled "Suggested — please confirm"). In chat the reply writer is given the engine's results and told not to contradict them. If the API is down or unconfigured, uploads still work completely (keyword-only dangerous goods, no HS suggestions) and chat shows an "assistant unavailable" banner.
090111 into 90111. Exactly 5 digits → the message says so and offers the zero-padded code to confirm. HS codes are always handled as strings.DATA-xx issues (Lyon + Germany, unsupported city, no items, orphan items, duplicate IDs, non-numeric/negative values, zero pallets, unreadable dates).05-11-2026 is 5 November). "Today" is computed at request time in Europe/London./ratesA separate mode for parcels between any two addresses, using live carrier rates from Shippo (SHIPPO_API_KEY). It does not touch the case flow above.
lib/countries.ts, lib/shippoRules.ts): declared values are in the dispatch country's currency; every rate is converted into it (ECB reference rates via frankfurter.dev) and the original quote is shown too; the checks and "what usually applies" export notes follow that country (e.g. UK EORI/export declaration, US EEI above US$2,500, EU export declaration outside the EU)..xlsx only.GEMINI_API_KEY; without it chat cannot read messages (upload is unaffected)./result/[id]) are not implemented; everything works without Supabase.cp .env.example .env.local # add GEMINI_API_KEY
npm install
npm run dev # http://localhost:3000
npm test # Vitest: rules, recommender, parser, chat merge
npm run make-sample # regenerates public/sample-test-data.xlsx (dates relative to today)
Env: SHIPPO_API_KEY (live rates), GEMINI_API_KEY, GEMINI_MODEL (default gemini-3.8-flash), GEMINI_FAST_MODEL (default gemini-3.5-flash-lite).
Reference material is in docs/ (case brief and template workbook).