Notes

Capture flow đầu tiên cho Snapix

Ghi lại các quyết định nhỏ khi thiết kế một screenshot tool nhanh, gọn, ít làm phiền.

Khi xây dựng Snapix, câu hỏi lớn nhất là: Làm sao để quá trình chụp màn hình không gây gián đoạn luồng làm việc?

Thử nghiệm 1: Global Shortcut

Sử dụng phím tắt là bắt buộc. Nhưng phím tắt nào không bị trùng với các app khác? Tôi đang thử nghiệm với Cmd/Ctrl + Shift + S.

Thử nghiệm 2: Sau khi chụp thì làm gì?

Đa số các tool sẽ hiện lên một cửa sổ chỉnh sửa to đùng. Tôi muốn Snapix khác:

  1. Chụp xong.
  2. Tự động copy vào Clipboard.
  3. Hiện một toast nhỏ thông báo.
  4. Nếu user click vào toast mới mở Editor.

Code snippet tham khảo (Electron)

globalShortcut.register('CommandOrControl+Shift+S', () => {
  console.log('Capture starting...');
  // Logic capture ở đây
})

Luồng này giúp việc feedback UI diễn ra cực nhanh mà không cần rời mắt khỏi editor.