Situs dokumentasi untuk bahasa pemrograman DART, dibangun dengan Eleventy dan di -host di Firebase.
Kami menyambut semua jenis kontribusi! Untuk mengatur situs secara lokal, ikuti pedoman di bawah ini tentang membangun situs. Untuk mempelajari lebih lanjut tentang berkontribusi pada repositori ini, lihat pedoman yang berkontribusi.
Mulailah dengan mencari masalah yang menarik minat Anda, atau buat masalah dengan perubahan yang Anda usulkan. Pertimbangkan untuk menambahkan komentar untuk memberi tahu semua orang bahwa Anda sedang mengerjakannya, dan jangan ragu untuk mengajukan pertanyaan yang Anda miliki tentang masalah yang sama.
Untuk memperbarui situs ini, garpu repo, buat perubahan Anda, dan hasilkan permintaan tarik. Untuk perubahan kecil dan terkandung (seperti gaya dan kesalahan ketik), Anda mungkin tidak perlu membangun situs ini. Seringkali Anda dapat melakukan perubahan menggunakan UI GitHub. Kami dapat menggelar perubahan secara otomatis dalam permintaan tarik Anda.
Penting
Jika Anda mengkloning repositori ini secara lokal, ikuti instruksi di bawah ini tentang kloning dengan submodule -nya.
Jika perubahan Anda melibatkan sampel kode, menambahkan/menghapus halaman, atau memengaruhi navigasi, pertimbangkan untuk membangun dan menguji pekerjaan Anda sebelum mengirimkan.
Jika Anda ingin atau perlu membangun situs, ikuti langkah -langkah di bawah ini.
Untuk perubahan di luar teks sederhana dan tweak CSS, kami sarankan menjalankan situs secara lokal untuk mengaktifkan siklus edit-refresh.
Instal alat berikut untuk membangun dan mengembangkan situs:
Rilis stabil terbaru dari DART diperlukan untuk membangun situs dan menjalankan perkakasnya. Ini bisa menjadi anak panah yang termasuk dalam SDK Flutter. Jika Anda tidak memiliki DART atau perlu memperbarui, ikuti instruksi di Get the Dart SDK.
Jika Anda sudah menginstal DART, verifikasi itu di jalur Anda dan sudah versi stabil terbaru:
dart --version
Rilis stabil LTS terbaru dari Node.js diperlukan untuk membangun situs. Jika Anda tidak memiliki node.js atau perlu memperbarui, unduh versi yang sesuai komputer Anda dan ikuti instruksi dari arsip unduhan Node.js. Jika Anda lebih suka, Anda dapat menggunakan manajer versi seperti NVM, dan menjalankan nvm install dari direktori root repositori.
Jika Anda sudah menginstal node, verifikasi tersedia di jalur Anda dan sudah versi stabil terbaru (saat ini 20.14 atau lebih baru) :
node --version
Jika versi Anda ketinggalan zaman, ikuti instruksi pembaruan untuk bagaimana Anda awalnya menginstalnya.
Catatan
Repositori ini memiliki submodul Git, yang memengaruhi cara Anda mengkloningnya. Dokumentasi GitHub memiliki bantuan umum pada forking dan kloning repo.
Jika Anda bukan anggota organisasi DART, kami sarankan Anda membuat garpu repo ini di bawah akun Anda sendiri, dan kemudian mengirimkan PR dari garpu itu.
Setelah Anda memiliki garpu (atau Anda adalah anggota DART org), pilih salah satu dari teknik kloning submodule berikut:
Kloning repo dan submodulnya pada saat yang sama menggunakan opsi --recurse-submodules :
git clone --recurse-submodules https://github.com/dart-lang/site-www.git
Jika Anda sudah mengkloning repo tanpa submodule, lalu jalankan perintah ini dari root repositori:
git submodule update --init --recursive
Catatan
Kapan saja selama pengembangan Anda dapat menggunakan perintah git submodule untuk menyegarkan submodul:
git pull && git submodule update --init --recursive
Sebelum Anda terus menyiapkan infrastruktur situs, verifikasi versi DART dan Node.js yang benar diatur dan tersedia dengan mengikuti instruksi dalam mendapatkan prasyarat.
Opsional: Setelah mengkloning repo dan submodulnya, buat cabang untuk perubahan Anda:
git checkout -b <BRANCH_NAME>
Dari direktori root repositori, ambil dependensi panah situs.
dart pub get
Instal pnpm menggunakan metode instalasi pilihan Anda. pnpm adalah alternatif, manajer paket yang efisien untuk paket NPM. Jika Anda sudah memiliki pnpm , verifikasi Anda memiliki versi stabil terbaru. Kami merekomendasikan menggunakan corepack untuk menginstal dan mengelola versi pnpm , karena dibundel dengan sebagian besar instalasi node.
Jika Anda belum pernah menggunakan corepack sebelumnya, Anda harus terlebih dahulu mengaktifkannya dengan corepack enable . Kemudian, untuk menginstal versi pnpm yang benar, dari direktori root repositori, jalankan corepack install :
corepack enable
corepack install
Setelah Anda menginstal dan mengatur pnpm , ambil dependensi NPM situs menggunakan pnpm install . Kami sangat menyarankan Anda menggunakan pnpm , tetapi Anda juga dapat menggunakan npm .
pnpm install
Dari direktori root, jalankan alat dash_site untuk memvalidasi pengaturan Anda dan pelajari tentang perintah yang tersedia.
./dash_site --help
Dari direktori root, sajikan situs secara lokal.
./dash_site serve
Perintah ini menghasilkan dan melayani situs pada port lokal yang dicetak ke terminal Anda.
Lihat perubahan Anda di browser dengan menavigasi ke http: // localhost: 4000.
Perhatikan port mungkin berbeda jika 4000 diambil.
Jika Anda ingin memeriksa output dan struktur HTML yang dihasilkan, lihat direktori _site dalam penjelajah file atau IDE.
Buat perubahan Anda pada repo lokal.
Situs harus secara otomatis membangun kembali pada sebagian besar perubahan, tetapi jika sesuatu tidak memperbarui, keluar dari proses dan menjalankan kembali perintah. Perbaikan fungsi ini direncanakan. Harap buka masalah baru untuk melacak masalah ini jika ini terjadi.
Komit perubahan Anda ke cabang dan kirimkan PR Anda.
Jika perubahan Anda besar, atau Anda ingin mengujinya, pertimbangkan untuk memvalidasi perubahan Anda.
Tip
Untuk menemukan perintah tambahan yang dapat Anda jalankan, jalankan ./dash_site --help dari direktori root repositori.
Jika Anda telah membuat perubahan pada kode di /examples atau /tool Directory, komit pekerjaan Anda, lalu jalankan perintah berikut untuk memverifikasi itu terbaru dan cocok dengan standar situs.
./dash_site check-all
Jika skrip ini melaporkan kesalahan atau peringatan, maka atasi masalah -masalah itu dan rerun perintah tersebut. Jika Anda memiliki masalah, tinggalkan komentar tentang masalah Anda atau tarik permintaan, dan kami akan mencoba sebaik mungkin untuk membantu Anda. Anda juga dapat mengobrol dengan kami di saluran #hackers-devrel pada perselisihan kontributor yang berkeping!
Build yang gagal dengan Error: Some code excerpts needed to be updated! berarti satu atau lebih kutipan kode di file markdown situs tidak identik dengan daerah kode yang dinyatakan dalam file .dart yang sesuai.
Untuk menyelesaikan kesalahan ini, dari akar direktori site-www , jalankan ./dash_site refresh-excerpts .
Untuk mempelajari lebih lanjut tentang membuat, mengedit, dan menggunakan kutipan kode, lihat dokumentasi paket pembaruan kutipan.
Permintaan tarik yang dikirim dapat dipentaskan secara otomatis oleh pemelihara situs. Jika Anda ingin menggelar situs sendiri, Anda dapat membangun versi lengkap dan mengunggahnya ke Firebase.
Jika Anda belum memiliki proyek Firebase,
Arahkan ke konsol Firebase dan buat proyek Firebase Anda sendiri (misalnya, dart-dev-staging ).
Kembali ke terminal lokal Anda dan verifikasi bahwa Anda masuk.
firebase login
Pastikan proyek Anda ada dan aktifkan proyek itu:
firebase projects:list
firebase use <your-project>
Dari direktori root repositori, bangun situs:
./dash_site build
Ini membangun situs dan menyalinnya ke direktori _site lokal Anda. Jika direktori itu sebelumnya ada, itu akan diganti.
Menyebarkan situs hosting default Firebase Project yang diaktifkan:
firebase deploy --only hosting
Arahkan ke PR Anda di GitHub dan sertakan tautan versi bertahap. Pertimbangkan untuk menambahkan referensi ke komitmen yang Anda panggil, sehingga pengulas tahu jika ada perubahan lebih lanjut telah dilakukan.