Chuyển đến nội dung chính

Bolt.new: Hướng dẫn thực tiễn về cách tạo ứng dụng không cần viết mã

Tìm hiểu cách tạo và xuất bản ứng dụng tập gym bằng Bolt.new với kế hoạch tập luyện thích ứng.
· 8 phút đọc

Khám phá cùng AI

Bolt.new là một công cụ AI chuyển văn bản thành ứng dụng mới. Tương tự Lovable, công cụ này cho phép người dùng xây dựng ứng dụng chỉ bằng cách nhập prompt. Trong hướng dẫn này, tôi sẽ giới thiệu công cụ và chúng ta sẽ thử tạo một ứng dụng Tập luyện Gym bằng nó.

Nếu bạn muốn tìm hiểu thêm về các công cụ kiểu này, tôi khuyên bạn nên xem hướng dẫn về Lovable của chúng tôi.

Bolt.new là gì?

Bolt.new là một công cụ chuyển văn bản thành ứng dụng, cho phép nhà phát triển lập tức khởi tạo ứng dụng full-stack với các framework, thư viện và tích hợp hiện đại đã được thiết lập sẵn. 

Thay vì bắt đầu từ con số 0 hoặc tốn hàng giờ cấu hình bộ khung dự án, bạn có thể gõ một prompt như “tạo một trang đích SaaS có đăng nhập và thanh toán qua Stripe”, và Bolt sẽ dựng khung một dự án hoạt động chỉ trong vài giây.

Giao diện của Bolt.new.

Ý tưởng chính là rút ngắn khoảng cách giữa ý tưởng và sản phẩm chạy thực tế. Với Bolt.new, bạn không cần tự tay ghép nối các dependency, định tuyến, quản lý trạng thái hay thư viện tạo kiểu; những lựa chọn đó được công cụ xử lý tự động. Nó được thiết kế để tuân thủ các thực hành tốt ngay từ đầu, nên mã nguồn tạo ra có cấu trúc và sẵn sàng cho sản xuất chứ không chỉ là một bản thử nghiệm vứt đi.

Bolt.new cho phép bạn xuất bản dự án chỉ với một cú nhấp, giúp dự án truy cập công khai trên web. Tuy nhiên, tại thời điểm viết bài, các tính năng quan trọng như cơ sở dữ liệu và xác thực vẫn đang ở giai đoạn beta, khiến nó khá hạn chế cho ứng dụng thực tế.

Bắt đầu với Bolt.new như thế nào

Để bắt đầu, hãy truy cập trang web của họ và tạo tài khoản. Nếu không đăng ký gói trả phí, bạn có giới hạn 1M token mỗi tháng và giới hạn 150K token mỗi ngày.

Chi tiết giá của Bolt.new.

Gói miễn phí cho phép bạn dùng thử, nhưng đừng kỳ vọng có thể lặp lại nhiều lần trên ứng dụng. 

Tôi đã thử lách giới hạn token bằng cách mô tả cực kỳ chi tiết mọi tính năng ngay trong prompt ban đầu, nhưng tôi thấy thường nó chỉ tạo ra ý tưởng chính của ứng dụng, đòi hỏi những lần lặp tiếp theo và vì thế tốn nhiều token hơn.

Cách xây dựng ứng dụng với Bolt.new: Ứng dụng Huấn luyện Gym

Để thử Bold.new, chúng ta sẽ thử xây dựng một ứng dụng huấn luyện gym. Ý tưởng cơ bản của ứng dụng là mỗi ngày nó sẽ lên kế hoạch bài tập và giúp chúng ta theo dõi tiến độ. Sau đó, nó tạo kế hoạch dựa trên dữ liệu trước đó.

Đây là prompt ban đầu tôi đã dùng:

Tôi muốn xây dựng một ứng dụng theo dõi bài tập cho phòng gym. Mỗi ngày ứng dụng nên đưa cho tôi một bộ bài tập. Mỗi bài tập chỉ định một máy, một mức tạ và số lần lặp. Ứng dụng cần cho phép tôi đánh dấu, với mỗi bài tập, tôi đã thực hiện bao nhiêu lần lặp và liệu nó khó, bình thường hay dễ. Sau đó dữ liệu đó được dùng để lập kế hoạch cho các ngày tiếp theo. 

Prompt ban đầu dùng cho ứng dụng huấn luyện gym.

Sau khi gửi prompt, công cụ đã tạo một dự án React và bắt đầu triển khai chức năng cơ bản. Nó cung cấp danh sách đầy đủ tất cả các tệp được tạo trong bảng log:

Nhật ký chat của Bolt.new khi tạo ứng dụng.

Một lúc sau, ứng dụng đã chạy. Đây là giao diện ở giai đoạn này:

Giao diện ứng dụng ban đầu.

Khi tạo một buổi tập mới, tôi nhận được như sau:

Buổi tập đầu tiên được tạo bằng ứng dụng.

Đây không hoàn toàn là điều tôi nghĩ tới vì mỗi bài tập chỉ gồm một hiệp, nhưng cũng khá sát ý. Công bằng mà nói, prompt ban đầu của tôi chưa thật sự rõ về điểm này. Đây là lúc hiểu về kỹ thuật thiết kế prompt tỏ ra hữu ích. 

Về token, prompt ban đầu này đã dùng hết 97K trong giới hạn 150K mỗi ngày. Điều này cho thấy với gói miễn phí, chúng ta khó có thể đẩy ý tưởng đi xa.

Số token đã dùng sau prompt ban đầu.

Yêu cầu thay đổi ứng dụng

Ý tưởng chính đằng sau các công cụ AI chuyển văn bản thành ứng dụng là chúng ta có thể hiện thực hóa ý tưởng mà không cần biết lập trình, chỉ bằng cách trò chuyện với AI và yêu cầu thay đổi.

Để kiểm nghiệm tuyên bố vibe-coding đó, tôi yêu cầu mỗi bài tập phải gồm nhiều hiệp.

Yêu cầu thay đổi ứng dụng.

Bolt.new đã thực hiện thay đổi; tuy nhiên, khi thử render lại ứng dụng, nó gặp lỗi.

Ví dụ lỗi của Bolt.new.

Giao diện nhận biết lỗi và cho phép tự động thử sửa lỗi.

Sửa lỗi với Bolt.new

Đôi khi công cụ có thể xác định trực tiếp lỗi và tự sửa. Tuy nhiên, trong trường hợp này, các thay đổi mới lại kéo theo lỗi khác:

Khắc phục sự cố với Bolt.new

Sau vài vòng sửa lỗi, chúng tôi đã có một phiên bản hoạt động, trong đó mỗi buổi tập có nhiều bài tập, mỗi bài tập có nhiều hiệp (số lần lặp). Với mỗi hiệp, chúng ta có thể theo dõi số lần lặp đã làm, sau đó đưa phản hồi về mức độ khó mà mình cảm nhận.

Kế hoạch tập luyện được cải thiện

Dữ liệu phản hồi sẽ được dùng để lập kế hoạch cho các phiên tập sau. Tôi muốn trò chuyện để hỏi chi tiết về cách dữ liệu này được sử dụng, nhưng lúc đó tôi đã hết lượt dùng trong ngày. 

Một vấn đề tôi thường gặp khi tạo các ứng dụng kiểu này là chúng ta ít có quyền kiểm soát những gì diễn ra bên dưới. Ta có thể quan sát khi dùng thử ứng dụng, nhưng không phải lúc nào cũng đủ để hiểu đầy đủ cách mọi thứ được triển khai.

Hết token với Bolt.new

Xem mã nguồn của Bolt.new

Nếu bạn biết lập trình, bạn có thể hiểu cách ứng dụng hoạt động bằng cách xem mã. Trái với Lovable, Bolt.new giúp việc xem mã ngay trong giao diện web trở nên rất dễ dàng.

Kiểm tra mã trong một ứng dụng Bolt.new.

Khi mở trình soạn thảo mã, chúng ta có thể thấy tất cả tệp dự án, và nhấp vào một tệp sẽ mở nó trong trình soạn thảo để xem cách hoạt động và chỉnh sửa trực tiếp trên trình duyệt. 

Ở đó, tôi thấy một tệp tên là workoutGenerator.ts, cái tên cho thấy nó chứa logic tạo bài tập mới.

Trình soạn thảo mã của Bolt.new

Vì đã hết lượt, tôi sao chép và dán mã vào ChatGPT và nhờ giải thích. Đây là tóm tắt cách hoạt động:

Ứng dụng tạo một bài tập mới cho bạn mỗi ngày bằng cách xem những gì bạn đã làm. Nó theo dõi số buổi tập bạn hoàn thành và luân phiên qua các loại như thân trên, thân dưới hoặc toàn thân để cơ bắp được rèn luyện cân bằng theo thời gian. Với mỗi loại buổi tập, nó ngẫu nhiên chọn một số bài tập phù hợp nhóm cơ, để bạn không luôn lặp lại cùng động tác.

Nó cũng chú ý đến mức độ bạn hoàn thành trong các buổi tập trước. Nếu một bài tập cảm thấy dễ và bạn thường xuyên thành công, nó sẽ tăng nhẹ mức tạ hoặc thêm lần lặp để bạn tiếp tục được thử thách. Nếu một bài tập quá khó, nó sẽ giảm tạ để phù hợp hơn. Cách này giúp bài tập điều chỉnh theo tiến bộ của bạn và giúp bạn cải thiện với tốc độ hợp lý mà không quá sức. Với tôi, điều này hợp lý, đặc biệt cho phiên bản đầu tiên của sản phẩm.

Xuất bản ứng dụng Bolt.new

Để xuất bản ứng dụng, chỉ cần nhấp nút "Publish" ở góc trên bên phải.

Xuất bản ứng dụng với Bolt.new

Khi xuất bản xong, chúng ta nhận được một URL trong khung chat để mở ứng dụng.

Kết quả xuất bản ứng dụng với Bolt.new

Chúng ta có thể dùng ứng dụng trên trình duyệt và chia sẻ với người khác. Chúng ta cũng có thể cài đặt trên điện thoại. Nhưng vì đây là ứng dụng web, chúng ta không cài qua cửa hàng ứng dụng; mà thực hiện từ trình duyệt bằng cách:

  1. Mở liên kết trên điện thoại.
  2. Nhấn menu tùy chọn trong trình duyệt.
  3. Nhấn tùy chọn "Add to Home screen".

Cài đặt ứng dụng trên điện thoại.

Đáng tiếc, Bolt.new không biến ứng dụng thành progressive web app (PWA) sẵn. Điều này có nghĩa là khi cài trên điện thoại theo cách vừa nêu, nó chỉ tạo một liên kết trên màn hình chính, nên trải nghiệm không khác nhiều so với dùng trên trình duyệt.

Tôi đã yêu cầu chuyển ứng dụng thành PWA để nó hoạt động như ứng dụng native, nhưng không suôn sẻ. Bolt.new bắt đầu ổn khi tạo các tệp cần thiết, nhưng một yêu cầu của PWA là có logo hình ảnh. Đáng tiếc, nỗ lực tạo ảnh của Bolt.new bằng cách ghi byte hình ảnh không chỉ có thể tạo ra ảnh vô nghĩa mà còn ngốn hết token.

Thiết lập tên miền tùy chỉnh

URL chúng ta nhận cho ứng dụng được tạo tự động, không lý tưởng cho môi trường sản xuất. Với sản phẩm thực tế, chúng ta cần mua và cấu hình tên miền riêng. Có thể thực hiện điều này trên trang "Domains & Hosting" trong cài đặt dự án.

Cấu hình tên miền tùy chỉnh trên Bolt.new.

Phiên bản hiện tại của ứng dụng không lưu dữ liệu trong cơ sở dữ liệu. Do đó, nếu chúng ta mở ứng dụng trên máy tính rồi trên điện thoại, sẽ không thấy cùng dữ liệu. Có lưu trữ cục bộ trên thiết bị, nên nếu bạn dùng cùng thiết bị, dữ liệu sẽ được lưu cục bộ. Vì vậy, nếu làm mới ứng dụng, chúng ta sẽ không mất kế hoạch tập hiện tại và các buổi tập trước.

Điều này chấp nhận được cho nguyên mẫu, nhưng hoàn toàn không phù hợp cho sản phẩm thương mại. Hiện tại, xác thực và cơ sở dữ liệu vẫn đang beta. Bạn có thể truy cập bằng cách đăng ký tham gia chương trình beta riêng của họ.

Tham gia beta riêng trên Bolt.new

Kết luận

Tôi tin rằng Bolt.new là công cụ tuyệt vời để nhanh chóng dựng nguyên mẫu và kiểm chứng ý tưởng sản phẩm. Tuy nhiên, AI có xu hướng triển khai tính năng ở mức bề mặt, nghĩa là các ứng dụng có chiều sâu đòi hỏi lặp đi lặp lại rất nhiều. 

Ngay cả khi cung cấp prompt ban đầu chi tiết, kết quả chỉ chạm bề nổi của đặc tả đầy đủ, và giới hạn token của gói miễn phí khiến gần như không thể xây dựng điều gì có ý nghĩa nếu không đăng ký trả phí.

Hơn nữa, với các dịch vụ cốt lõi như xác thực và hỗ trợ cơ sở dữ liệu vẫn đang beta, tôi khuyên nên đợi đến khi phát hành đầy đủ trước khi cố xây dựng ứng dụng sẵn sàng cho sản xuất. 

Tổng thể, Bolt.new hoạt động khá giống các đối thủ, nhưng điểm nổi bật là khả năng xem và chỉnh sửa mã nguồn trực tiếp trong giao diện web; một lợi thế quan trọng giải quyết một trong những bức xúc lớn tôi gặp ở các nền tảng như Lovable.

François Aubry

Tác giả

François Aubry

Kỹ sư full-stack & nhà sáng lập tại CheapGPT. Giảng dạy luôn là niềm đam mê của tôi. Từ những ngày còn là sinh viên, tôi đã háo hức tìm kiếm cơ hội kèm cặp và hỗ trợ các bạn học khác. Niềm đam mê đó đã thôi thúc tôi theo học tiến sĩ, nơi tôi cũng đảm nhiệm vai trò trợ giảng để hỗ trợ con đường học thuật của mình. Trong những năm ấy, tôi tìm thấy sự mãn nguyện lớn lao trong môi trường lớp học truyền thống, xây dựng kết nối và thúc đẩy việc học tập. Tuy nhiên, với sự ra đời của các nền tảng học trực tuyến, tôi nhận ra tiềm năng thay đổi của giáo dục số. Thực tế, tôi đã trực tiếp tham gia phát triển một nền tảng như vậy tại trường đại học của chúng tôi. Tôi tận tâm kết hợp các nguyên tắc giảng dạy truyền thống với những phương pháp số đổi mới. Đam mê của tôi là tạo ra các khóa học không chỉ hấp dẫn và giàu thông tin mà còn dễ tiếp cận với người học trong thời đại số này.

Chủ đề

Liên quan