Javis OS
Javis OS는 기업가를 돕는 에이전시 AI로, 업무를 지원하고 함께 성장합니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
KIMS Parking — Web Portal (Doctors & Staff)
React + TypeScript (Vite) web version of the KIMS Parking mobile app, for
doctor and staff logins only. It talks to the exact same deployed backend over the same REST endpoints
and the same socket.io real-time sync — no backend changes, no data changes.
Any other role (valet / driver / admin) is rejected at login and directed to
the mobile app.
What's ported (1:1 with the mobile app)README 전문 보기 ↗React + TypeScript (Vite) web version of the KIMS Parking mobile app, for
doctor and staff logins only. It talks to the exact same deployed backend
(https://kims-parking-backend-2.onrender.com) over the same REST endpoints
and the same socket.io real-time sync — no backend changes, no data changes.
Any other role (valet / driver / admin) is rejected at login and directed to
the mobile app.
npm install
npm run dev # http://localhost:5173
npm run build # production bundle in dist/
src/theme/).@mdi/font (the same font family the RN vector-icons package uses).PATCH /users/me.task:upsert socket deltas, trip progress/ETA from computeTrip.public/manifest.webmanifest + generated icons + public/sw.js (app-shell
caching, offline fallback). An Install App button appears on the login
footer and in Settings whenever the browser allows installing.notification:new events ring the same siren. Browser
tray notifications fire too.public/sw.js doubles as the FCM background worker — the
backend already pushes data-only FCM messages to every token registered
via /notifications/register-device, and web tokens land in the same
table. One-time setup in the Firebase console (project
cloud-messaging-a085d, the same one in google-services.json):
appId..env.example to .env and fill in VITE_FIREBASE_APP_ID +
VITE_FCM_VAPID_KEY (plus the other VITE_FIREBASE_* values from the
Firebase console). .env is gitignored — never commit real values or
hardcode them in source. public/sw.js can't read Vite env vars (it's a
static file), so swRegistration.ts passes the same config to it via
the service-worker registration URL's query string.
Until then push init silently no-ops (exactly like the mobile app before
google-services.json existed) — sockets still cover every open-tab case.
The backend needs FIREBASE_SERVICE_ACCOUNT set (already how mobile push
works) — no backend code changes.ReleaseNotesModal reads the same /app/version endpoint as the mobile
UpdateModal. Bump latestVersionCode + notes in
kims-parking-backend/src/config/appVersion.js when releasing features, and
every web user sees a "What's New" popup on the login screen before they log
in (dismissed once per version, remembered in localStorage).
Same as mobile: one WebSocket per session (socket.io, websocket transport
only), full fetch on connect/reconnect, then per-entity deltas
(task:upsert, slot:patch, notification:new) patch state in place.
Conditional-GET ETag caching on REST polls is ported too. Browser
notifications stand in for the mobile tray notifications.