Giới thiệu
Chào mừng bạn đến với bài viết về Compact Midnight IDE, một môi trường phát triển web hoàn chỉnh giúp các lập trình viên có thể viết, biên dịch và kiểm tra các hợp đồng thông minh Compact trực tiếp trên trình duyệt. Giải pháp này giúp loại bỏ quá trình thiết lập phức tạp thường thấy trong phát triển Midnight và cung cấp giao diện trực quan cho việc thử nghiệm với tính năng bảo mật lập trình.
Tính năng chính
- 🌐 IDE trên trình duyệt với trình chỉnh sửa giống Visual Studio Code và hỗ trợ ngôn ngữ Compact
- 🔨 Biên dịch thời gian thực sử dụng máy chủ backend của Midnight
- 📝 Trình chỉnh sửa hai ngăn cho các tệp hợp đồng (.compact) và chứng kiến (.ts)
- 🎯 Phát hiện lỗi thông minh với báo cáo lỗi chi tiết từng dòng
- 📊 Bảng điều khiển có thể thay đổi kích thước cho bố cục không gian làm việc tùy chỉnh
- 🚀 Biên dịch chỉ bằng một cú nhấp chuột và xây dựng hợp đồng
- 📚 Ví dụ tích hợp (Hợp đồng Counter, Voting, Message Board)
Demo
🔗 Demo Trực Tiếp: Xem tại đây
Cách tôi sử dụng công nghệ Midnight
Tích hợp Midnight cốt lõi
- Ngôn ngữ Compact: Hỗ trợ đầy đủ cho phát triển hợp đồng thông minh Compact với tô sáng cú pháp và hoàn thành tự động
- Thời gian chạy Compact: Khả năng tạo chứng kiến và xây dựng hợp đồng
Xử lý lỗi thông minh
IDE thực hiện việc phân tích lỗi để trích xuất phản hồi có ý nghĩa từ biên dịch viên Midnight:
Exception: bboard.compact dòng 7 ký tự 8:
phải khai báo khả năng tiết lộ giá trị chứng kiến nhưng không được khai báo:
Cải thiện trải nghiệm dành cho nhà phát triển
Trước: Quy trình thiết lập phức tạp
Phát triển Midnight truyền thống yêu cầu:
- Cài đặt Node.js, npm/yarn
- Thiết lập git clone
- Cấu hình biên dịch viên Compact
- Hiểu cấu trúc không gian làm việc
- Quản lý nhiều phiên terminal
- Đối phó với các thông báo lỗi phức tạp
Sau: Phát triển ngay lập tức
Với Compact Midnight IDE:
- ✅ Không cần cài đặt - hoạt động trên bất kỳ trình duyệt hiện đại nào
- ✅ Khởi động ngay lập tức - bắt đầu lập trình ngay lập tức
- ✅ Phản hồi trực quan - tô sáng lỗi thời gian thực
- ✅ Ví dụ hướng dẫn - học từ các hợp đồng hoạt động
- ✅ Quy trình tích hợp - biên dịch và xây dựng trong một giao diện
Cải tiến chính
- Khả năng tiếp cận: Loại bỏ rào cản kỹ thuật cho người mới
- Học tập trực quan: Tô sáng cú pháp và hoàn thành thông minh
- Rõ ràng về lỗi: Chuyển đổi các lỗi biên dịch khó hiểu thành phản hồi có thể thực hiện
- Xác thực nhanh chóng: Kiểm tra ý tưởng mà không cần thiết lập môi trường cục bộ
- Giá trị giáo dục: Các ví dụ tích hợp thể hiện các phương pháp tốt nhất
Triển khai kỹ thuật
Kiến trúc Frontend
- Trình chỉnh sửa giống VScode (Monaco) với định nghĩa ngôn ngữ Compact tùy chỉnh
- Axios cho giao tiếp API với backend
- Bảng điều khiển có thể thay đổi kích thước cho không gian làm việc đáp ứng
- Trích xuất lỗi thời gian thực với hiển thị thân thiện với người dùng
Dịch vụ Backend
- Máy chủ Express.js với hỗ trợ CORS
- Quản lý không gian làm việc cho các thao tác hệ thống tệp
- Tích hợp biên dịch viên Compact với thực thi quy trình
- Phân tích lỗi và phản hồi định dạng
- Thực thi chức năng hợp đồng với phát hiện tự động
Ví dụ về hợp đồng thông minh
compact
// Hợp đồng ví dụ Counter
contract Counter {
private var count: u32 = 0;
public fun increment(): u32 {
count += 1;
return count;
}
}
Cơ sở hạ tầng triển khai
- Frontend: Triển khai trên Vercel
- Backend: Được lưu trữ với Docker containerization (Dokploy)
Hướng dẫn thiết lập / Tutorial
Bắt đầu nhanh (Khuyến nghị):
Truy cập Compact Midnight IDE và bắt đầu lập trình ngay lập tức!
Thiết lập phát triển cục bộ:
# Clone repo
git clone https://github.com/kaleababayneh/midnight-playground
cd midnight-playground
git switch local # chuyển sang nhánh địa phương
# Cài đặt các phụ thuộc của máy chủ
cd server
npm install
# Cài đặt các phụ thuộc của client
cd ../client
npm install
Chạy các máy chủ:
# Terminal 1: Backend
cd server && npm start
# Terminal 2: Frontend
cd client && npm start
Truy cập http://localhost:3000
để xem phiên bản IDE cục bộ của bạn.
Cải tiến trong tương lai
- 🔐 Tích hợp ví cho việc ký và triển khai giao dịch
- 📱 Hỗ trợ di động cho phát triển trên máy tính bảng và điện thoại
Tác động đến hệ sinh thái Midnight
IDE này giảm thiểu rào cản gia nhập cho phát triển Midnight bằng cách:
- Dân chủ hóa quyền truy cập: Ai cũng có thể thử nghiệm với lập trình không biết
- Tăng tốc quá trình học tập: Phản hồi thời gian thực giúp rút ngắn chu kỳ phát triển
- Thúc đẩy việc áp dụng: Onboarding dễ dàng thu hút nhiều lập trình viên hơn
- Khuyến khích đổi mới: Giúp nhanh chóng xác thực và khám phá sáng tạo
Kho lưu trữ: Xem tại đây
Dự án này được thực hiện bởi @0xkaleab