diff --git a/web/.env.example b/web/.env.example new file mode 100644 index 0000000..7a550fe --- /dev/null +++ b/web/.env.example @@ -0,0 +1,9 @@ +# GEMINI_API_KEY: Required for Gemini AI API calls. +# AI Studio automatically injects this at runtime from user secrets. +# Users configure this via the Secrets panel in the AI Studio UI. +GEMINI_API_KEY="MY_GEMINI_API_KEY" + +# APP_URL: The URL where this applet is hosted. +# AI Studio automatically injects this at runtime with the Cloud Run service URL. +# Used for self-referential links, OAuth callbacks, and API endpoints. +APP_URL="MY_APP_URL" diff --git a/web/.gitignore b/web/.gitignore new file mode 100644 index 0000000..5a86d2a --- /dev/null +++ b/web/.gitignore @@ -0,0 +1,8 @@ +node_modules/ +build/ +dist/ +coverage/ +.DS_Store +*.log +.env* +!.env.example diff --git a/web/737046771_27588542340832646_2624568238884019344_n.jpg b/web/737046771_27588542340832646_2624568238884019344_n.jpg new file mode 100644 index 0000000..79b70f6 Binary files /dev/null and b/web/737046771_27588542340832646_2624568238884019344_n.jpg differ diff --git a/web/README.md b/web/README.md new file mode 100644 index 0000000..2af2984 --- /dev/null +++ b/web/README.md @@ -0,0 +1,20 @@ +
++ VietC được phát triển dựa trên 3 trụ cột kỹ thuật cốt lõi giúp tối đa hóa tốc độ, độ ổn định tuyệt đối và khả năng tương thích 100% với môi trường giả lập Linux Terminal. +
++ Sử dụng mô hình toán học Finite State Machine (FSM) tất định để phân tích tổ hợp phím gõ tiếng Việt. Mọi ký tự được tính toán rõ ràng giúp tránh tình trạng xung đột, mất từ hoặc sai vị trí đặt dấu khi gõ nhanh. +
++ Thay vì xóa trắng toàn bộ từ hoặc phát lại một loạt phím Backspace dồn dập gây giật màn hình trong Terminal, VietC tính toán sự khác biệt nhỏ nhất giữa từ đã gõ và từ mong muốn để thay thế cục bộ tức thì. +
++ Xử lý sự kiện bàn phím theo luồng độc lập dưới quyền user thông qua uinput cục bộ. VietC nói KHÔNG với kết nối Internet, đảm bảo toàn bộ mật khẩu, lệnh Terminal nhạy cảm luôn được bảo vệ an toàn tuyệt đối. +
++ Khi bạn gõ phím, VietC không lưu trữ ký tự dưới dạng văn bản tĩnh thô sơ. Hệ thống sẽ thay đổi các nút liên kết (S0, S1, S2, S3) dựa trên loại phím nhận được để tính toán cách phản hồi phím nhanh nhất. Di chuột vào các nút dưới đây để xem mô tả: +
+ ++ {stateDetails[hoveredState].desc} +
++ VietC là giải pháp nhập liệu mã nguồn mở hiện đại cho môi trường Linux, tối ưu hóa tốc độ và sự đơn giản với linh vật chú rồng con Long-kun. Không qua IBus/Fcitx5 phức tạp, giải quyết triệt để lỗi nuốt phím và lag chữ. +
+ + {/* Quick Metrics */} ++ Để đơn giản hóa tối đa việc gõ VNI trên Terminal bấy lâu nay vô cùng ‘gian khổ’ cho dân Linux, VIETC tự hào công bố đã support native gõ VNI trên Terminal. +
+ ++ Quý khách có thể tải toàn bộ các bản thiết kế 3D phím Numlock và Keycap trên website VIETC xuống. Sau đấy, tận dụng trí tưởng tượng phong phú để lắp ghép và trải nghiệm cảm giác ‘gõ như bay’ ngay trên Terminal ảo của bạn mà không cần bất kỳ phần cứng vật lý nào. +
+ ++ Như công bố chính thức, VietC không chỉ là phần mềm gõ phím, chúng tôi chia sẻ bản vẽ thiết kế 3D hoàn toàn miễn phí của Mascot Rồng Con Resin trong suốt và bộ ký tự dấu mũ tiếng Việt để bạn tự in 3D cá nhân hóa bàn phím cơ của mình! +
++ {model.desc} +
++ {toastMessage} +
++ Vì VietC là bộ gõ mức thấp (System & Application level) không phụ thuộc IBus hay Fcitx5, việc cài đặt sẽ tác động trực tiếp lên driver uinput hệ thống để đạt tốc độ gõ tuyệt đối. +
++ Các bước dưới đây hướng dẫn bạn tự biên dịch VietC từ source, chạy thử mà không cần cài đặt + system-wide. Phù hợp cho developer muốn đóng góp hoặc tùy chỉnh. +
+ ++ {step.description} +
+ + {step.command && ( ++ {step.description} +
+ + {step.command && ( ++ Hoạt động ở Application Layer qua cơ chế giao tiếp DBus phức tạp. Khi gõ trong Terminal ảo, các lệnh Backspace/Delete giả lập thường bị trễ hoặc nuốt ký tự gây lỗi nhân đôi hoặc mất chữ. +
+
+ Chặn (grab) sự kiện gốc từ bàn phím vật lý thông qua driver evdev, sau đó tự tính toán bằng State Machine và xuất ra bàn phím ảo mới thông qua uinput.
+
+ Độ trễ phản hồi phím Keystroke: 0ms và giải phóng nút <1ms. Gõ tiếng Việt gốc 100% không bị lag, không kén Terminal nào (Alacritty, Kitty, GNOME Terminal, v.v.). +
++ Hãy tự tay gõ chuỗi phím VNI hoặc chọn các mẫu gõ nhanh dưới đây để xem cách State Machine của VietC biên dịch và gửi tín hiệu trực tiếp lên Linux Terminal ảo cực mượt. +
+