5 điểm bởi younghyun753 2025-12-18 | 2 bình luận | Chia sẻ qua WhatsApp

Tôi đã thử làm một plugin eslint cho FSD!

Xin chào.
Trong lúc sử dụng cấu trúc Feature-Sliced Design (FSD), tôi muốn có một công cụ tự động bắt các quy tắc nên đã thử làm một plugin eslint.

Hiện tại có hai quy tắc đã được triển khai như dưới đây.

Danh sách quy tắc

no-cross-layer-import
→ Ngăn import từ layer trên xâm phạm xuống layer dưới.

segment-naming-rule
→ Bắt buộc tuân theo quy tắc đặt tên segment của FSD.

Hiện các segment được cho phép chỉ giới hạn ở:
api / ui / model / lib / config

Chi tiết hơn có trong README trên GitHub!

Vì vẫn còn ở giai đoạn đầu nên tôi mới chỉ thêm những thứ mà cá nhân tôi thấy cần thiết trong quá trình làm dự án.

Cá nhân tôi khi dùng eslint plugin thấy rằng nếu áp dụng quy tắc quá mức thì năng suất ngược lại còn giảm đi, nên tôi đã tối giản chúng! Đây cũng là lần đầu tôi làm kiểu plugin này nên muốn đăng lên để xin lời khuyên.

Nếu ai thấy hứng thú và có thể cho tôi xin feedback thì tôi sẽ thật sự rất cảm kích!!

Repo: https://github.com/kyh0726/fsd-eslint-plugin

2 bình luận

 
wlehgus78 2025-12-18

Wow.. đúng là mình đang rất cần cái này, cảm ơn bạn rất nhiều!!
Gần đây mình đã áp dụng FSD vào dự án của mình, nhưng vì khó xác định rõ các layer và segment, lại còn khó quản lý nữa nên mình đã băn khoăn khá nhiều.. Mình sẽ dùng thử rồi để lại đánh giá!!

 
younghyun753 2025-12-19

Ồ cảm ơn bạn haha, hy vọng có thể giúp ích!