Weaviate menggunakan Docusaurus 2 untuk membangun dokumentasi kami. Docusaurus adalah generator situs web statis yang berjalan di bawah node.js. Kami menggunakan alat manajemen proyek Node.js yang disebut benang untuk menginstal Docusaurus dan untuk mengelola dependensi proyek.
Jika Anda tidak memiliki node.js dan yarn yang diinstal pada sistem Anda, instal terlebih dahulu.
Gunakan NVM Package Manager untuk menginstal Node.js. Halaman Proyek nvm menyediakan skrip instalasi.
Setelah Anda menginstal nvm , gunakan nvm untuk menginstal Node.js.
nvm install
Secara default, nvm menginstal versi terbaru dari Node.js. Juga instal versi node.js yang ditentukan dalam .github/workflows/pull_requests.yaml . Pada saat penulisan itu adalah versi 20.
nvm install 20
nvm use 20
Node.js termasuk manajer paket NPM. Gunakan npm untuk menginstal yarn .
npm install --global yarn
Untuk berkontribusi ke situs web ini, pertama -tama garpu repositori ini dan buat salinan lokal untuk dikerjakan.
Masuk ke akun GitHub Anda.
Fork The Hulu Repositori, https://github.com/weaviate/weaviate-io.
Kloning repositori ke sistem lokal Anda.
git clone [email protected]:YOUR-GITHUB-HANDLE/weaviate-io.git
Untuk detail tentang mengkloning repositori, termasuk menyiapkan kunci SSH, lihat dokumentasi GitHub.
Atur cabang pelacakan jarak jauh.
git remote add upstream https://github.com/weaviate/weaviate-io.git
Periksa remote.
git remote -v
# The output resembles:
origin https://github.com/YOUR-GITHUB-HANDLE/weaviate-io.git (fetch)
origin https://github.com/YOUR-GITHUB-HANDLE/weaviate-io.git (push)
upstream https://github.com/weaviate/weaviate-io.git (fetch)
upstream https://github.com/weaviate/weaviate-io.git (push)
Konfigurasikan cabang pelacakan.
Langkah ini memungkinkan Anda melacak perubahan hulu saat Anda mengerjakan pembaruan Anda. Saat Anda siap untuk menyumbangkan perubahan Anda, buat permintaan tarik terhadap cabang upstream/main .
Dapatkan cabang hulu.
git fetch upstream
Tambahkan upstream/main sebagai cabang pelacakan saat Anda membuat cabang proyek baru. Anda dapat menggunakan git checkout untuk mengatur cabang pelacakan, atau memilih metode alternatif yang sesuai dengan alur kerja Anda.
git checkout -b your-update-branch-name upstream/main
Setelah Anda memiliki salinan repositori lokal, Anda perlu menginstal Docusaurus dan dependensi proyek lainnya.
Beralih ke direktori proyek, lalu gunakan benang untuk memperbarui dependensi.
cd weaviate-io
yarn install
Anda mungkin melihat beberapa peringatan selama instalasi.
Saat instalasi selesai, mulailah server yarn untuk menguji build Anda.
yarn start
Ini akan membangun situs dan memulai server lokal, lalu buka http: // localhost: 3000/menunjukkan bangunan lokal. Jika Anda menutup terminal, server akan berhenti. Atau tekan Ctrl+C / Cmd+C untuk menghentikan server.
Perintah ini menghasilkan konten statis ke direktori build . Anda dapat menggunakan layanan hosting untuk melayani konten statis.
yarn build
Perintah build berguna saat Anda selesai mengedit. Jika Anda menjalankan yarn start memulai server web lokal, Anda tidak perlu menggunakan yarn build untuk melihat Anda berubah saat Anda mengedit.
Perintah build menjalankan pemeriksa tautan. Jika Anda mengalami masalah dengan tautan yang rusak sementara, Anda dapat memperbarui variabel URL_IGNORES untuk menonaktifkan pemeriksaan tautan itu.
Untuk menonaktifkan pemeriksaan tautan, tambahkan URL yang rusak ke daftar URL_IGNORES dalam skrip ini:
Periksa tautan lagi sebelum Anda mengirimkan permintaan gabungan. Jika tautan berfungsi, hapus dari daftar URL_IGNORES . Jika tautan tidak berfungsi, beri tahu kami tentang hal itu dalam permintaan tarik.
Menggunakan SSH:
USE_SSH=true yarn deploy
Tidak menggunakan ssh:
GIT_USER=<Your GitHub username> yarn deploy
Jika Anda menggunakan halaman GitHub untuk hosting, perintah ini adalah cara yang nyaman untuk membangun situs web dan mendorong ke cabang gh-pages .
Contoh kode dalam dokumentasi ada dalam salah satu dari dua format:
Di banyak file, Anda akan melihat format yang mirip dengan:
import Tabs from ' @ theme/Tabs ';
import TabItem from ' @ theme/TabItem ';
import FilteredTextBlock from ' @ site/src /components/Documentation/FilteredTextBlock';
import PyCode from '!!raw-loader!/ _ includes/code/howto/manage-data.create.py';
import TSCode from '!!raw-loader!/ _ includes/code/howto/manage-data.create.ts';
< Tabs groupId = " languages " >
< TabItem value = " py " label = " Python " >
<FilteredTextBlock
text={PyCode}
startMarker="# ValidateObject START"
endMarker="# ValidateObject END"
language="py"
/>
</ TabItem >
< TabItem value = " js " label = " JS/TS Client v2 " >
<FilteredTextBlock
text={TSCode}
startMarker="// ValidateObject START"
endMarker="// ValidateObject END"
language="tsv2"
/>
</ TabItem >
</ Tabs > Ini memanfaatkan komponen JSX FilteredTextBlock khusus kami.
Di sini, komponen FilteredTextBlock memuat garis antara startMarker dan endMarker dari skrip yang diimpor. Ini memungkinkan kita untuk menulis skrip lengkap, yang mungkin termasuk tes untuk mengurangi kejadian contoh kode yang salah.
Untuk informasi lebih lanjut tentang tes, silakan lihat readme-tests.md.
Dalam beberapa contoh kode, kode akan ditulis langsung di dalam komponen TabItem , seperti yang ditunjukkan di bawah ini.
import Tabs from ' @ theme/Tabs ';
import TabItem from ' @ theme/TabItem ';
< Tabs groupId = " languages " >
< TabItem value = " py " label = " Python " >
```python
import weaviate
client = weaviate.Client("http://localhost:8080")
```
</ TabItem >
< TabItem value = " js " label = " JS/TS Client v2 " >
```
import weaviate from 'weaviate-ts-client';
const client = weaviate.client({
scheme: 'http',
host: 'localhost:8080',
});
```
</ TabItem >
... and any other tabs
</ Tabs >IDE Anda tidak akan mengambil kesalahan apa pun dalam contoh -contoh ini, jadi pastikan untuk menguji kode di lingkungan pilihan Anda sebelum mengedit atau menambahkannya di sini.