โลโก้ที่จัดทำโดย @ramyashreeshetty
Chitchatter เป็นเครื่องมือสื่อสารฟรี (ทั้งในราคาและอิสระ) ออกแบบมาเพื่อเป็นวิธีที่ง่ายที่สุดในการเชื่อมต่อกับผู้อื่นเป็นส่วนตัวและปลอดภัยคือ:
Chitchatter ใช้ Vite เครือข่ายที่ปลอดภัยและเวทมนตร์สตรีมมิ่งจะเป็นไปไม่ได้หากไม่มีทริสเทอโร ฟังก์ชั่นการถ่ายโอนไฟล์ใช้พลังงานจาก secure-file-transfer
เปิด https://chitchatter.im/ และเข้าร่วมห้องเพื่อเริ่มสนทนากับคนอื่น ๆ ที่อยู่ในห้อง โดยค่าเริ่มต้นชื่อห้องจะเป็น UUID แบบสุ่มที่สร้างฝั่งไคลเอ็นต์ ในการสื่อสารกับใครบางคนขอแนะนำให้เข้าร่วมหนึ่งในห้องที่สร้างแบบสุ่มเหล่านี้และแบ่งปัน URL (ผ่านปุ่ม "?" ที่ด้านบนของหน้า) กับใครก็ตามที่คุณต้องการสื่อสารผ่านสื่อที่ปลอดภัยของการเลือกของคุณ (เช่น Burner Note หรือ Yopass) ชื่อผู้ใช้ของคุณจะถูกนำเสนอให้คุณและมันจะเป็นการดีที่จะแบ่งปันว่าคุณจะคุยกับใครก่อนเพื่อให้พวกเขารู้ว่าพวกเขากำลังคุยกับคุณ
iframereact-markdownshift และกด enter )ไม่มีการขาดแคลนแอพแชทที่ใช้งานง่าย แต่พวกเขาพึ่งพาบริการกลางเพื่ออำนวยความสะดวกในการสื่อสาร เป็นการยากที่จะไว้วางใจบริการส่วนกลางเหล่านี้เนื่องจากผลประโยชน์เชิงพาณิชย์และแรงกดดันจากรัฐบาลสามารถบังคับให้ผู้ให้บริการทำงานเพื่อต่อต้านผลประโยชน์ที่ดีที่สุดของผู้ใช้ แม้ว่าข้อมูลผู้ใช้จะได้รับการจัดการโดยสุจริตโดยผู้ให้บริการความเป็นไปได้ยังคงอยู่ที่ข้อมูลที่เข้ารหัสที่เก็บไว้ในที่เหลืออาจถูกถอดรหัสตามความประสงค์ของผู้ใช้
Chitchatter ออกแบบรอบ ๆ ความเสี่ยงเหล่านี้ด้วยสถาปัตยกรรมเว็บตาข่าย ไม่มีผู้ให้บริการกลางบริการที่จัดเก็บหรืออาจเป็นข้อมูลการสื่อสารที่ผิดพลาด บริการบางอย่างจะต้องมีการสร้างการเชื่อมต่อเริ่มต้นระหว่างเพื่อน แต่มิฉะนั้นแอปจะใช้การสื่อสารแบบเพียร์ทูเพียร์โดยตรงสำหรับทุกสิ่ง บริการใด ๆ ที่ใช้โดย Chitchatter ไม่มีความสัมพันธ์กับโครงการและเปิดเผยต่อสาธารณะเพื่อให้ทุกคนใช้
Chitchatter เสนอโซลูชั่นส่วนตัวและปลอดภัยสำหรับ:
ฉันพิจารณาว่าคุณลักษณะที่สมบูรณ์แบบไม่สมบูรณ์มันทำทุกสิ่งที่ฉันต้องการให้ทำเป็นการส่วนตัว ฉันไม่มีแผนเฉพาะที่จะเพิ่มฟังก์ชั่นที่สำคัญในอนาคต แต่ฉันอาจทำเช่นนั้นถ้ามันดูสนุกสำหรับฉันในเวลานั้น ฉันมุ่งมั่นที่จะแก้ไขข้อบกพร่องสำคัญ ๆ ที่รายงานดังนั้นโปรดเปิดปัญหาหากคุณค้นพบหนึ่ง! นอกเหนือจากนั้น Chitchatter ยังมีประสิทธิภาพในโหมดการบำรุงรักษาสำหรับอนาคตอันใกล้
หากคุณต้องการให้มีการดำเนินการคุณลักษณะและยินดีที่จะจ่ายค่าใช้จ่ายในการพัฒนาเพื่อให้แน่ใจว่าจะเสร็จสิ้นโปรดยื่นปัญหา GitHub ที่อธิบายคุณสมบัติและระบุว่าคุณยินดีที่จะชดเชยงาน หากคุณไม่เต็มใจจ่ายโปรดเปิดปัญหา GitHub โดยไม่คำนึงถึง ฉันอาจนำไปใช้ถ้าดูเหมือนสนุกที่จะทำเช่นนั้น แต่สมาชิกคนอื่น ๆ ในชุมชนอาจก้าวขึ้นไปใช้งานผ่านคำขอดึง
ฉันจะทำตามคำขอดึงเวลาสนับสนุนจากผู้อื่นเสมอ หากคุณเต็มใจที่จะทำงานเพื่อปรับปรุง Chitchatter ฉันยินดีที่จะช่วยเหลือผู้เลี้ยงแกะที่ทำงานและส่งมัน
หากคุณไม่เห็นด้วยกับทิศทางของโครงการคุณสามารถ Fork Chitchatter และนำไปใช้ในอีกอันหนึ่ง
ฉันยินดีที่จะทำการติดตั้งที่ชำระเงินและการปรับแต่งของ Chitchatter สำหรับความต้องการของคุณ หากคุณต้องการทำสัญญาให้ฉันทำ chitchatter เวอร์ชันที่สร้างขึ้นเองสำหรับคุณโปรดส่งอีเมลถึงฉันที่ [email protected] และแจ้งให้เราทราบว่าคุณมีอะไรในใจที่จะเริ่มต้น
แกนหลักของรูปแบบความปลอดภัยของ Chitchatter คือความจริงที่ว่ามันเป็นโอเพนซอร์สอย่างสมบูรณ์ คุณเป็นอิสระ (และสนับสนุน) เพื่อตรวจสอบซอร์สโค้ดโครงการและโครงสร้างพื้นฐานของโครงการอย่างเต็มที่ ไม่เพียง แต่ซอร์สโค้ดที่มีอยู่ภายใต้ข้อกำหนดของ GPL แต่บันทึกการสร้างทั้งหมดสามารถเข้าถึงได้อย่างเปิดเผยเช่นกัน
หากคุณต้องการตรวจสอบว่าแอปโฮสต์ที่ https://chitchatter.im/ เป็นแอพที่โฮสต์บน GitHub คุณสามารถใช้ dig :
$ dig chitchatter.im
; <<>> DiG 9.18.1-1ubuntu1.1-Ubuntu <<>> chitchatter.im
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61332
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;chitchatter.im. IN A
;; ANSWER SECTION:
chitchatter.im. 231 IN CNAME jeremyckahn.github.io.
jeremyckahn.github.io. 231 IN A 185.199.111.153
jeremyckahn.github.io. 231 IN A 185.199.110.153
jeremyckahn.github.io. 231 IN A 185.199.109.153
jeremyckahn.github.io. 231 IN A 185.199.108.153
ในการตรวจสอบสินทรัพย์คงที่ที่ให้บริการแก่ผู้ใช้คุณสามารถตรวจสอบสาขา gh-pages ได้
ดูค้างคาวตั๋วเต็มรูปแบบที่นี่
คุณสามารถใช้ SDK อย่างเป็นทางการเพื่อฝังแอพเป็นส่วนประกอบของเว็บที่เรียกว่า <chat-room />
< script src =" https://chitchatter.im/sdk.js " > </ script >
< chat-room /> ส่วนประกอบ <chat-room /> รองรับคุณลักษณะทางเลือกต่อไปนี้:
room : ชื่อของห้อง chitchatter ที่ผู้ใช้ควรเข้าร่วม ค่าเริ่มต้นคือ URL ของหน้าการฝังuser-name : ชื่อที่เป็นมิตรของผู้ใช้ (ซึ่งสามารถเปลี่ยนได้)user-id : ID คงที่ของผู้ใช้ ค่าเริ่มต้นคือ UUID แบบสุ่มroot-url : URL ของอินสแตนซ์ chitchatter ที่จะใช้ ค่าเริ่มต้นคือ https://chitchatter.im/color-mode : light หรือ dark ค่าเริ่มต้นนั้น darkplay-message-sound : ไม่ว่าจะเล่นเสียงหรือไม่เมื่อผู้ใช้ได้รับข้อความในขณะที่หน้าต่างไม่ได้อยู่ในโฟกัส ค่าเริ่มต้นเป็น false เช่นเดียวกับมาตรฐาน <iframe /> ต่อไปนี้: แอตทริบิวต์:
heightwidthstylereferrerpolicysandbox สำคัญ
ปัจจุบัน Chitchatter สามารถพัฒนาได้บนระบบ *Nix เช่น Linux และ MacOS เท่านั้น หากคุณใช้ Windows คุณสามารถใช้ WSL เพื่อตั้งค่าสภาพแวดล้อม Linux
ในการเปลี่ยนแปลงการพูดคุยให้โคลนซอร์สโค้ดจาก GitHub ตรวจสอบให้แน่ใจว่าคุณติดตั้งโหนดและ NPM จากนั้นในไดเรกทอรีโครงการรัน:
npm install
สิ่งนี้จะติดตั้งการพึ่งพาทั้งหมด
ในไดเรกทอรีโครงการคุณสามารถเรียกใช้:
npm devรันสแต็กทั้งหมด (ไคลเอนต์ + ตัวติดตาม webtorrent) ในพื้นที่
npm startรันแอพส่วนหน้าในโหมดการพัฒนา ใช้ตัวติดตาม webtorrent สาธารณะ เปิด http: // localhost: 3000 เพื่อดูในเบราว์เซอร์ของคุณ
หน้าจะโหลดซ้ำเมื่อคุณทำการเปลี่ยนแปลง คุณอาจเห็นข้อผิดพลาดผ้าสำลีในคอนโซล
npm testเปิดตัวนักวิ่งทดสอบในโหมดนาฬิกาแบบโต้ตอบ
npm run build สร้างแอพสำหรับการผลิตไปยังโฟลเดอร์ dist มันรวมกันอย่างถูกต้องตอบสนองในโหมดการผลิตและปรับการสร้างเพื่อประสิทธิภาพที่ดีที่สุด
บิลด์มีขนาดเล็กและชื่อไฟล์รวมถึงแฮช
Chitchatter ได้รับการออกแบบให้ถูกแยกและโฮสต์ตัวเอง หากคุณต้องการเปลี่ยนการจับคู่หรือการกำหนดค่าเซิร์ฟเวอร์รีเลย์หรือคุณต้องการควบคุมการสร้างและเวอร์ชันของคุณเองส้อม repo นี้และทำตามขั้นตอนด้านล่าง
สำคัญ
การเชื่อมต่อเพียร์แบบ Chitchatter นั้นถูกผูกไว้กับโดเมนของอินสแตนซ์ ดังนั้นผู้ใช้ chitchatter ที่ https://chitchatter.im/ จะไม่สามารถเชื่อมต่อกับผู้ใช้อินสแตนซ์ chitchatter ในโดเมนอื่น (เช่น Fork-hosted หน้าส่วนตัวของ GitHub)
สมมติว่าคุณกำลังโฮสต์ Chitchatter ในหน้า GitHub:
homepage ใน package.json เป็น url อะไรก็ตามที่อินสแตนซ์ chitchatter ของคุณจะโฮสต์จาก นี่จะเป็นเช่น https://github_user_or_org_name.github.io/chitchatter/DEPLOY_KEY github (ที่ https://github.com/github_user_or_org_name/chitchatter/settings/secrets/actions ) ดูเอกสารสำหรับ peaceiris/actions-gh-pages สำหรับข้อมูลเพิ่มเติมbase ใน vite.config.ts นี่คือตัวอย่างของวิธีการที่อาจดู: const config = ( ) => {
return defineConfig ( {
base : '/chitchatter/' ,
build : {
...
} เมื่อโฮสต์บนหน้า GitHub และการกำหนดค่าด้านบนได้ดำเนินการสภาพแวดล้อมการผลิตจะได้รับการอัปเดตเมื่อมีการอัปเดตสาขา main ระยะไกล (เมื่อเปิดใช้งานการกระทำของ GitHub)
สร้างแอพด้วย npm run build จากนั้นให้บริการ dist Directory โซลูชันการให้บริการไฟล์แบบคงที่ใด ๆ ควรใช้งานได้หากใช้บริบทที่ปลอดภัย
สำรวจไฟล์ใน src/config เพื่อแก้ไขการกำหนดค่าการจับคู่และการกำหนดค่าเซิร์ฟเวอร์รีเลย์
Chitchatter ใช้ไลบรารีส่วนประกอบ MUI ซึ่งเป็นธีม คุณสามารถปรับแต่งรูปลักษณ์และความรู้สึกของ Chitchatter ได้โดยการปรับเปลี่ยนคำจำกัดความของธีมเชลล์
หากคุณพบปัญหาใด ๆ กับการติดตั้งแบบ chitchatter ที่กำหนดเองก่อนอื่นให้แน่ใจว่าคุณใช้รหัสเวอร์ชันล่าสุด หากคุณกำลังโฮสต์การติดตั้งของคุณด้วยหน้า GitHub ซิงค์สาขา main ของคุณและ ไม่ใช่ สาขา gh-pages ของคุณ การอัปเดตสาขา main ของคุณจะทำให้เกิดการสร้างสาขา gh-pages ที่เหมาะสม
สิ่งนี้อาจเกิดขึ้นได้ด้วยเหตุผลหลายประการ สิ่งที่เป็นไปได้มากที่สุดคือหนึ่งหรือมากกว่าเพื่อนคนหนึ่งไม่สามารถเชื่อมต่อได้โดยตรงและต้องใช้รีเลย์ที่ได้รับการกำหนดค่า/เลี้ยวเป็นทางเลือก รีเลย์มาตรฐานฟรีและไม่รับประกันระดับการให้บริการใด ๆ ดังนั้นจึงไม่สามารถใช้งานได้ในบางครั้ง (หรือไม่ทำงานเลยสำหรับผู้ใช้บางคน) มีไม่มากที่จะทำนอกเหนือจากการรอจนกว่าจะพร้อมใช้งานอีกครั้งหรืออาจลองจากอุปกรณ์หรือที่ตั้งอื่น
ตัวบล็อกโฆษณาบางตัว (เช่นแหล่งกำเนิด ublock) ป้องกันการเชื่อมต่อกับเซิร์ฟเวอร์ webtorrent บางตัว สิ่งนี้จะช่วยป้องกันไม่ให้เพื่อนร่วมงานเชื่อมต่อ ในการแก้ไขปัญหานี้คุณสามารถปิดการใช้งานตัวบล็อกโฆษณาหรือโฮสต์อินสแตนซ์ของคุณเอง
Chitchatter ทำงานบน iOS Safari แต่ข้อบกพร่องระดับเบราว์เซอร์มักจะป้องกันไม่ให้เพื่อนร่วมงานเข้าร่วมห้องเมื่อเบราว์เซอร์ถูกปิดและเปิดใหม่อีกครั้ง (ตัวอย่างเช่นเมื่อเปลี่ยนแอปพลิเคชัน) วิธีแก้ปัญหาที่แนะนำสำหรับปัญหานี้คือการรีเฟรชหน้าเพื่อเข้าร่วมห้องอีกครั้ง
ต่อ #36 ตรวจสอบ about:config และตรวจสอบให้แน่ใจว่า เปิดใช้งาน media.peerconnection.enabled
Chitchatter ใช้ Streamsaver.js เพื่ออำนวยความสะดวกในการถ่ายโอนไฟล์ขนาดใหญ่ ผู้จัดการดาวน์โหลดเช่น FDM เป็นที่รู้จักกันว่ารบกวน Streamsaver.js ดังนั้นจึงขอแนะนำให้ปิดการใช้งานผู้จัดการดาวน์โหลดดังกล่าวเมื่อพยายามรับไฟล์
Chitchatter ผ่านการตรวจสอบความปลอดภัยรายสัปดาห์เพื่อระบุและจัดการกับช่องโหว่ที่อาจเกิดขึ้น รายงานจากการตรวจสอบทั้งหมดสามารถพบได้ใน ประเด็น
โดยการใช้ Chitchatter คุณตกลงที่จะยอมรับ ความรับผิดชอบอย่างเต็มที่ สำหรับการกระทำของคุณที่เกี่ยวข้องกับการใช้งาน นอกจากนี้คุณตกลงที่จะ ไม่ ถือผู้มีส่วนร่วมใด ๆ ในโครงการ Chitchatter ที่รับผิดชอบผลการใช้งานใด ๆ ของคุณ นักพัฒนาของ Chitchatter ไม่รับรองกิจกรรมที่ผิดกฎหมาย