Foresight Ventures: สถาปัตยกรรม DApp แบบ Crypto-Native
ผู้เขียนต้นฉบับ: msfew@Foresight Ventures
ผู้เขียนต้นฉบับ: msfew@Foresight Ventures
ชื่อระดับแรก

0. สถาปัตยกรรมแอพ Web2
เมื่อเราพัฒนาแอปพลิเคชัน toC ที่ทันสมัย ไม่ว่าจะเป็น Web App, Mobile App หรือ Desktop App สถาปัตยกรรมพื้นฐานสามารถสรุปได้ด้วยเทอร์มินัลสามรายการต่อไปนี้:
จากซ้ายไปขวาคือ:
ส่วนหน้า: เรียกอีกอย่างว่าไคลเอ็นต์ ส่วนหน้าของแอปพลิเคชันคือหน้าที่ผู้ใช้เห็นในเบราว์เซอร์หรือแอปที่ใช้ในอุปกรณ์เคลื่อนที่ ส่วนหน้าควบคุมมุมมองและการแสดงผล
ฐานข้อมูล: ตามชื่อที่แนะนำ ฐานข้อมูลมีไว้สำหรับจัดเก็บข้อมูลโดยเฉพาะ ส่วนหลังจะอ่านหรือแก้ไขเนื้อหาของฐานข้อมูล
เหตุใดซอฟต์แวร์จึงต้องการเทอร์มินัลทั้งสามนี้ เหตุใดส่วนหน้าจึงไม่เชื่อมต่อโดยตรงกับฐานข้อมูล เหตุใดจึงมีส่วนหลังอยู่ตรงกลาง มีเหตุผลหลายประการสำหรับสิ่งนี้:
ชื่อเรื่องรอง
ก) วิศวกรรม
มุมมองของนักพัฒนาซอฟต์แวร์: ส่วนหน้าของแอปพลิเคชันสมัยใหม่ไม่มีพลังงานในการจัดการกับโมเดลข้อมูลที่ซับซ้อนและการจัดการสถานะของมุมมองไปพร้อมๆ กัน จากมุมมองทางวิศวกรรม ไม่ดีสำหรับวิศวกรทุกคนที่จะรักษาระบบที่บวมด้วยทั้งหมด ความรู้และอำนาจทุกอย่าง นอกจากนี้ ตรรกะอื่น ๆ อีกมากมายไม่ต้องการให้ส่วนหน้าเข้าร่วมในการแสดงผล เช่น สินค้าคงคลังของแพลตฟอร์มอีคอมเมิร์ซ
มุมมองทางสถาปัตยกรรม: แต่ละส่วนมีกฎและภาษาของตัวเองเพื่ออธิบายข้อมูล ส่วนหน้าใช้แนวคิดที่มนุษย์เข้าใจได้ในการสร้างเพจ ส่วนหลังใช้ภาษาเชิงวัตถุเพื่อจัดการข้อมูล และฐานข้อมูลใช้ภาษาพีชคณิตเชิงสัมพันธ์เพื่อเข้าถึง หน่วยเก็บข้อมูลทางกายภาพ ไม่มีวิธีใดๆ ในการระบุชุดของกฎสากลเพื่อรวมเทอร์มินัลทั้งสามเข้าด้วยกัน ในขณะเดียวกัน เนื่องจากแต่ละภาษามีหน้าที่ของตนเอง การเน้นย้ำประสิทธิภาพจึงแตกต่างกันด้วยHasuraข) การสื่อสารODataมุมมองของโปรโตคอล: สังเกตจากรูป คุณจะเห็นว่าวิธีการเชื่อมต่อสองวิธีที่เชื่อมต่อกับเทอร์มินัลทั้งสามนั้นแตกต่างกัน โดยปกติแล้ว front-end และ back-end ของแอปพลิเคชัน toC จะสื่อสารกันโดยใช้โปรโตคอล HTTP ในขณะที่ back-end และฐานข้อมูล มีโปรโตคอลต่างกัน เช่น MySQL และ MongoDB มีโปรโตคอลต่างกัน เราสามารถส่ง thin backend (GraphQL+
) เพื่อให้บรรลุผลคล้ายกับการเชื่อมต่อโดยตรงกับฐานข้อมูลส่วนหน้า นอกจากนี้ยังมีโปรโตคอลเช่น CouchDB สำหรับการสื่อสารดังกล่าว แต่ก็ยังไม่สามารถแก้ไขข้อบกพร่องอื่น ๆ ได้
มุมมองการแมปข้อมูล: ส่วนหน้าประมวลผล UI ส่วนหลังประมวลผลออบเจ็กต์ และฐานข้อมูลประมวลผลข้อมูล การเชื่อมต่อระหว่างส่วนหน้าและส่วนหลังใช้การแมประหว่าง UI และออบเจ็กต์ และการเชื่อมต่อระหว่างส่วนหลังและ ฐานข้อมูลจะต้องมีการแมปโดยใช้ความสัมพันธ์ของวัตถุ
ค) ความปลอดภัย
มุมมองของข้อมูล: เนื่องจากปัจจุบันมีแอปพลิเคชันที่เราใช้กันมากขึ้นเรื่อยๆ เป็นแอปพลิเคชันบนเว็บ หากส่วนหน้าเชื่อมต่อโดยตรงกับฐานข้อมูล จะเป็นการยากที่จะป้องกันการรั่วไหลของข้อมูลและการแฮ็ก ในทางทฤษฎี ฐานข้อมูลสามารถควบคุมการมองเห็นข้อมูลผ่าน วิธีการรับรองความถูกต้องที่หลากหลาย แต่ความสำคัญอีกอย่างของการมีอยู่ของแบ็กเอนด์คือเพื่อให้แน่ใจว่าทำงานในสภาพแวดล้อมที่เชื่อถือได้และในลักษณะที่ออกแบบไว้ และไม่รวมคำถามรักษาความปลอดภัยที่ทราบ
ชื่อเรื่องรอง
d) การตรัสรู้ของสถาปัตยกรรมแอปพลิเคชัน Web2 สู่ DApp
จากสามมุมมองข้างต้น เราได้วิเคราะห์ว่าเหตุใดแอปพลิเคชัน Web2 จึงมีสถาปัตยกรรมแบบสามเทอร์มินัล และสิ่งนี้ยังทำให้เรามีความคิดบางอย่างเกี่ยวกับ DApps ของบล็อกเชน:
การสื่อสาร: สอดคล้องกับกลไกฉันทามติต่างๆ ของเครือข่าย blockchain กลไกที่แตกต่างกันเหล่านี้ยังทำให้การสื่อสารระหว่างกันของ blockchain เป็นปัญหาที่ยากลำบาก แต่ยังมีโปรโตคอลการทำงานร่วมกันเช่น Cosmos และ Polkadot ซึ่งพยายามเชื่อมโยงเครือข่ายทั้งหมด แต่จากมุมมอง ของแอปพลิเคชัน Web2 โดยทั่วไป นี่ไม่ได้หมายความว่าเป็นโซลูชันที่ดีที่สุด การทำแผนที่ข้อมูลสามารถสอดคล้องกับรูปแบบการออกแบบที่เน้นบัญชีหรือ UTXO ซึ่งทั้งสองอย่างนี้มีข้อดีและข้อเสียในแง่ของประสิทธิภาพ ความเป็นส่วนตัว และความซับซ้อนในการพัฒนา
ความปลอดภัย: สอดคล้องกับการกระจายอำนาจของ blockchain และแนวคิดของ Verify, Not Trust ความปลอดภัยมีความสำคัญมากกว่าในฟิลด์ blockchain ดังนั้นจึงจำเป็นต้องมีวิธีการตรวจสอบที่โปร่งใสและเปิดเผยอย่างสมบูรณ์สำหรับการประมวลผลข้อมูลและการปรับการมองเห็นข้อมูลเพื่อให้บรรลุ DeFi ที่โปร่งใสและไร้สิทธิ์, NFT แบบเปิดและเป็นกรรมสิทธิ์ และองค์ประกอบที่สำคัญที่สุดของ DApp

ชื่อระดับแรก
สถาปัตยกรรม Web3 DApp
Web3 DApp ส่วนใหญ่ใช้สถาปัตยกรรมต่อไปนี้:
แอปพลิเคชั่นที่เรียบง่าย (ข้อมูลออนไลน์แท้และการโต้ตอบที่ไม่ซับซ้อน) ตัวอย่างเช่น โครงการ Uniswap และโครงการ NFT บนเครือข่ายล้วน ๆ
ส่วนหน้าไม่แตกต่างจาก Web2 App
Blockchain เป็นฐานข้อมูล
Web3 DApp ส่วนใหญ่ใช้สถาปัตยกรรมต่อไปนี้:
ชื่อเรื่องรองa) องค์ประกอบการปรับแต่ง Web3 DApp:
โดยเฉพาะอย่างยิ่งเวิร์กโฟลว์ของ Web3 DApp ที่สมบูรณ์นั้นเกี่ยวข้อง
ส่วนประกอบเพิ่มเติม
ส่วนหน้า: เบราว์เซอร์ กระเป๋าเงิน หน้า
การสื่อสารส่วนหน้าและส่วนหลัง: ผู้ให้บริการโหนด, โปรโตคอลดัชนี
การสื่อสารฐานข้อมูลส่วนหลัง: ผู้ให้บริการโหนด เกตเวย์เครือข่ายการจัดเก็บข้อมูล

ฐานข้อมูล: Smart Contract State และ Decentralized Storage Network
ชื่อเรื่องรองb) Web3 DApp ไม่มีแบ็กเอนด์ได้อย่างไร,การมีอยู่ของสัญญาอัจฉริยะทัวริงที่สมบูรณ์บนเครือข่ายบล็อกเชน

ทำให้บล็อกเชนเป็นแพลตฟอร์มไร้เซิร์ฟเวอร์ที่ดีที่สุด
หรือเรียกได้ว่าเป็น World Computer of Trustware ข้อมูลและลอจิกแบ็คเอนด์ของแอปพลิเคชันสามารถนำไปใช้ในสัญญาอัจฉริยะ
เมื่อเทียบกับฟังก์ชันแบบไร้เซิร์ฟเวอร์ สัญญาอัจฉริยะจะดีกว่า และยังสร้างสถาปัตยกรรมและรูปแบบที่ดีกว่าแอปพลิเคชัน Web2:
วิธีการชำระเงิน: โดยปกติแล้ว นักพัฒนาซอฟต์แวร์จะจ่ายฟังก์ชันไร้เซิร์ฟเวอร์ ในขณะที่ค่าใช้จ่ายส่วนใหญ่ในการโต้ตอบของสัญญาอัจฉริยะจะจ่ายโดยผู้ใช้ และผู้ใช้ยินดีจ่ายสำหรับพื้นที่บนเชน
สภาพแวดล้อมการดำเนินการ: ฟังก์ชันแบบไร้เซิร์ฟเวอร์มีสภาพแวดล้อมการดำเนินการที่ยืดหยุ่นมาก ในขณะที่สภาพแวดล้อมการดำเนินการของสัญญาอัจฉริยะมีตัวเลือกน้อย แต่มีน้ำหนักเบามาก
สภาพแวดล้อมการปรับใช้: ฟังก์ชันไร้เซิร์ฟเวอร์ถูกปรับใช้บนแพลตฟอร์มบริการคลาวด์แบบรวมศูนย์ ในขณะที่ สัญญาอัจฉริยะถูกปรับใช้บนเครือข่ายแบบกระจายอำนาจแบบกระจายอำนาจและไร้สิทธิ์ นอกจากนี้ ต้นทุนการดำเนินงานของเครือข่ายยังถูกโอนจากแพลตฟอร์มแบบรวมศูนย์ไปยังนักขุดและเศรษฐกิจ ระบบจะเป็นอิสระมากขึ้น
อย่างไรก็ตาม สำหรับแอปพลิเคชันที่สมบูรณ์อย่างแท้จริง เป็นไปไม่ได้ที่จะบรรลุฟังก์ชันที่สมบูรณ์ผ่านสัญญาอัจฉริยะเป็นแบ็กเอนด์เท่านั้น ดังนั้น จึงจำเป็นต้องมีส่วนประกอบอื่นๆ เช่น เครือข่าย Keeper หรือเครื่อง Oracle
2. สถาปัตยกรรม Web3 Crypto-native DAppในความเป็นจริง แอปพลิเคชันที่ซับซ้อนของ Web2 นั้นมากกว่าเทอร์มินัลสามรายการที่เราได้ร่างไว้ก่อนหน้านี้ และต้องการการปรับให้เป็นโมดูล เลเยอร์กลาง และการขยายในแนวนอนจำนวนมาก.

แยกสถาปัตยกรรม
ชื่อเรื่องรอง

ก) ส่วนหน้า ⇒ โอเพ่นซอร์ส + ส่วนหน้าที่โฮสต์เอง
สำหรับการพัฒนาส่วนหน้าของ Web3 ฉันคิดว่ามีแนวโน้มสำคัญสองประการ:web3-reactและCenter.devทางเลือกของเฟรมเวิร์ก: ในบรรดาเฟรมเวิร์กส่วนหน้าทั้งสองของ React และ Vue นั้น React ครองตำแหน่งที่โดดเด่นใน Web3 ส่วนใหญ่เป็นเพราะการสะสมของระบบนิเวศน์และส่วนประกอบต่างๆ เช่นและแต่โดยส่วนตัวแล้วฉันรู้สึกว่าการครอบงำของโครงการ React นั้นอยู่ในมือของ Meta เสมอการเปลี่ยนแปลงใบอนุญาตโอเพ่นซอร์สก็ยังทำให้เกิดข้อถกเถียงอยู่หลายครั้ง ดังนั้น หากคุณมีโอกาสใช้ Vue framework อยู่บ้าง
พึ่งพาน้อยที่สุดสำหรับการพัฒนา front-end ก็ยังดีกว่า Reactฟรอนต์เอนด์โฮสติ้ง: ฟรอนต์เอนด์ถูกแฮ็ก DApp (การจี้หรือแทรกสคริปต์ที่เป็นอันตราย) และเซ็นเซอร์ (ทั้งในซอร์สโค้ดของ Uniswap และ Flashbots)บัญชีดำของ OFAC; ) ของเขตที่โดนหนักที่สุด ปีเงินต้นมากสนับสนุนให้ผู้ใช้โฮสต์ส่วนหน้าของ DApp เองTrustless.fiโฮสต์ส่วนหน้าบนเครือข่ายการจัดเก็บข้อมูลถาวรเช่น Arweaveนอกจากนี้ยังสามารถรับประกันได้ว่าส่วนหน้าของแต่ละเวอร์ชันจะไม่ถูกลบและสามารถเข้าถึงได้อย่างถาวร,นอกจากนี้ยังมีการเสนอแนวคิดของ front-end Marketplace ซึ่งช่วยให้ผู้ใช้สามารถเลือกจาก front-end ที่โฮสต์โดยชุมชนหลายแห่ง ซึ่งสามารถรับประกันความเป็นกลางและ "ความหลากหลายของ front-end" เบราว์เซอร์ blockchain อื่น ๆ เช่น Etherscan ได้รับการพิจารณาจริง ๆokcontractผู้ใช้สามารถโต้ตอบได้โดยตรง หรือมีแอปพลิเคชันเฉพาะสำหรับการสร้างสัญญาส่วนหน้า เช่นcodeisspeechและtheshakeเมื่อเร็ว ๆ นี้ Tornado ถูกเซ็นเซอร์และมีหลายชุมชน (เช่น

และ) ในส่วนหน้าที่โฮสต์โดยธรรมชาติ,ส่วนหน้ามีความต้านทานการเซ็นเซอร์

ปรับปรุงความปลอดภัยโดยรวมและการกระจายอำนาจของ DApp อย่างมาก
ชื่อเรื่องรอง
b) แบ็กเอนด์ ⇒ ZKP + สัญญาอัจฉริยะ
กระบวนการวิวัฒนาการของสถาปัตยกรรมแอพจะเป็นดังนี้:
แอปพลิเคชัน Web2: ส่วนหน้า ⇒ ส่วนหลัง ⇒ ฐานข้อมูล

แอปพลิเคชัน Web3 อย่างง่าย: ส่วนหน้า ⇒ สัญญาอัจฉริยะ
แอปพลิเคชัน Web3 ที่ซับซ้อน: ส่วนหน้า ⇒ ZKP ⇒ สัญญาอัจฉริยะ
แต่ก็เป็นดาบสองคมในการใช้สัญญาอัจฉริยะบนเครือข่ายแบบเปิดเพื่อประมวลผลลอจิกของแอปพลิเคชัน ข้อมูลและโค้ด เปิดเผยต่อสาธารณะซึ่งรับประกันความโปร่งใส ตรวจสอบได้ และเรียบเรียงได้ แต่ยังเปิดเผยความเสี่ยงด้านความเป็นส่วนตัวและความปลอดภัยอย่างสมบูรณ์ และต้นทุนของพื้นที่และการคำนวณบนห่วงโซ่นั้นสูงมาก
ZKP จะกลายเป็น RSA ของยุค Web3 โดยขจัดข้อบกพร่องของการรักษาความปลอดภัยการสื่อสารแอปพลิเคชันและการกระจายอำนาจ และทำให้ DApps ที่เชื่อถือได้และไม่ไว้วางใจอย่างแท้จริง
การเพิ่ม ZKP เป็นชั้นกลางและวิธีการสื่อสารระหว่างส่วนหน้าและส่วนหลังได้แสดงข้อดีสองประการได้เป็นอย่างดีอีกครั้ง:
ความเป็นส่วนตัว: ในแอปพลิเคชัน Web2 ความเป็นส่วนตัวเป็นตัวเลือกเริ่มต้นเสมอ แต่ธรรมชาติของเครือข่ายบล็อกเชนช่วยให้ DApps มี "ความเป็นส่วนตัว" เสมือนเสมอ ZKP สามารถประมวลผลข้อมูลที่ละเอียดอ่อนนอกเชนเพื่อแก้ปัญหานี้ได้ ในฐานะเลเยอร์กลาง
การขยายตัว: พื้นที่บนเชนมีจำกัด ดังนั้น อัลกอริธึมที่ซับซ้อนจำนวนมากในแอปพลิเคชัน Web2 ไม่สามารถนำมาใช้ได้ ZKP สามารถดำเนินการอัลกอริทึมนอกเชนและตรวจสอบความถูกต้องบนเชนในขณะที่รับประกันความน่าเชื่อถือของการคำนวณ
ความเป็นไปได้ในการคำนวณ: ประเภทของการคำนวณ ZKP มีจำกัด และ ZKP ไม่สามารถแก้ไขการคำนวณได้ทั้งหมด
การปรับให้เหมาะสม: เมื่อความซับซ้อนของการดำเนินการเพิ่มขึ้น เวลาและพื้นที่ในการคำนวณจะเพิ่มขึ้นอย่างมาก ซึ่งต้องการการปรับแต่งซอฟต์แวร์และฮาร์ดแวร์จำนวนมาก ในขณะเดียวกัน ในหลายกรณี ทรูพุตสามารถปรับปรุงได้อย่างมากเท่านั้น และโอเวอร์เฮดของ การพิสูจน์โดยรวมเป็นเรื่องยากที่จะลด
ชื่อเรื่องรอง
c) ฐานข้อมูล ⇒ บริการโหนดแบบกระจายอำนาจ
ก่อนหน้านี้เราได้อธิบายวิธีที่ DApp ใช้บล็อกเชนเป็นแบ็กเอนด์และฐานข้อมูล ในการเชื่อมต่อ DApp กับเครือข่ายบล็อกเชน จำเป็นต้องมีบริการโหนด
ปัจจุบัน DApps มักใช้ใน NaaS แบบรวมศูนย์ เช่น Alchemy และ Infura ในวิสัยทัศน์ของฉัน มีสามทิศทางที่ดีกว่าในอนาคต:
NaaS แบบหลายศูนย์กลางโดยใช้ NaaS แบบรวมศูนย์หลายตัวเป็นทางเลือก (คล้ายกับ Chainlink + Uniswap ของ oracle) นี่เป็นโซลูชันที่เป็นไปได้และเชื่อถือได้มากกว่าซึ่งสามารถรับประกันการต่อต้านการเซ็นเซอร์และเวลาทำงาน

NaaS ที่โฮสต์ในตัวเอง โซลูชันที่ดีที่สุด ไม่เพียงรับประกันความน่าเชื่อถือของการเชื่อมต่อ "ฐานข้อมูล" และความเป็นส่วนตัวและการต่อต้านการเซ็นเซอร์ของข้อมูลต่างๆ เท่านั้น แต่ยังเพิ่มระดับการกระจายอำนาจของเครือข่ายด้วยฟรอนต์เอนด์ที่โฮสต์เอง , DApp ทั้งหมดจะมีการเปลี่ยนแปลงการกระจายอำนาจอย่างมาก
ชื่อเรื่องรองTornado.cashd) อินสแตนซ์ DApp ดั้งเดิมของ Crypto
เพิ่งได้รับการอนุมัติ
(โดยเฉพาะอย่างยิ่ง BossBen) เป็น DApp ที่ใช้การเข้ารหัสลับ ซึ่งตรงตามคำจำกัดความของเราหลายประการ:
ส่วนหน้าใช้ Vue framework ของ NuxtJS แทน React framework ที่ใช้กันทั่วไปดำเนินการอย่างสมบูรณ์โดยใช้วงจร ZK และสัญญาอัจฉริยะในโค้ดส่วนหน้า โดยไม่มีโค้ดฝั่งเซิร์ฟเวอร์.
รหัสเป็นโอเพ่นซอร์สอย่างสมบูรณ์
โฮสต์ใน IPFSTornado.cashฉันเชื่อว่าจะมีแอปพลิเคชันเพิ่มเติมในอนาคต
3. Web3 Infra
นี่คือสถาปัตยกรรมแอปพลิเคชัน Web3 แบบกระจายอำนาจที่สมบูรณ์แบบที่สุดในความคิดของฉัน

ชื่อระดับแรกด้านบนเป็นเพียงสถาปัตยกรรมแบบง่าย ๆ ต่อไปนี้เป็นสถาปัตยกรรมเฉพาะเจาะจงมากขึ้นของแอปพลิเคชัน DeFi จริง::
ประกอบด้วยบริการอื่นๆ นอกเหนือจากโหนด
โครงสร้างพื้นฐานเสริม
ตัวสร้างดัชนี: กราฟทางด้านซ้าย ไม่มีวิธีใดๆ ในการสืบค้นข้อมูลบนห่วงโซ่ได้อย่างง่ายดาย ดังนั้น ตัวสร้างดัชนีจึงมีความจำเป็นในการรวบรวมข้อมูลที่เกี่ยวข้องกับสัญญา
Oracle: Chainlink ที่มุมขวาล่าง Chain ต้องการรับข้อมูล เช่น สัญญาหรือราคาภายนอกเครือข่าย ดังนั้น จึงจำเป็นต้องป้อนราคาบน Chain (Uniswap TWAP) หรือ Oracle นอกเครือข่าย (Chainlink)

Keeper: Keep3r Network ที่มุมล่างขวา Smart Contract นั้นไม่มีความสามารถในการเรียกใช้งานโดยอัตโนมัติดังนั้นจึงจำเป็นต้องมีทริกเกอร์ภายนอกเพื่อขอความช่วยเหลือ
โครงสร้างพื้นฐานเหล่านี้มีความสำคัญในการสร้าง DApp และเราจะแนะนำปัญหาและโอกาสในการสร้างสรรค์นวัตกรรมของ Oracle และ Indexer โดยละเอียดในบทความต่อๆ ไป
เกี่ยวกับ Foresight Ventures
เกี่ยวกับ Foresight Ventures
Foresight Ventures เดิมพันกับนวัตกรรมของสกุลเงินดิจิทัลในอีกไม่กี่ทศวรรษข้างหน้า บริษัทจัดการกองทุนหลายแห่ง: กองทุน VC, กองทุนการจัดการรองที่ใช้งานอยู่, FOF หลายกลยุทธ์, กองทุน S วัตถุประสงค์พิเศษ "Foresight Secondary Fund l" โดยมีขนาดการจัดการสินทรัพย์รวมเท่ากับ มากกว่า 4 หนึ่งร้อยล้านเหรียญสหรัฐ Foresight Ventures ยึดมั่นในแนวคิด "ไม่ซ้ำใคร เป็นอิสระ ก้าวร้าว ระยะยาว" และให้การสนับสนุนอย่างกว้างขวางสำหรับโครงการผ่านพลังทางนิเวศวิทยาที่แข็งแกร่ง ทีมงานมาจากบุคลากรอาวุโสจากบริษัทการเงินและเทคโนโลยีชั้นนำ เช่น Sequoia China, CICC, Google, Bitmain เป็นต้น
Website: https://www.foresightventures.com/
Twitter: https://twitter.com/ForesightVen
Medium: https://medium.com/@foresightventures-zh
Substack: https://foresightventures.substack.com
Discord: https://discord.com/invite/jYtyfxfB
Linktree: https://linktr.ee/foresightventures
Related Links
0:
https://learnblockchain.cn/article/4338
https://www.zhihu.com/question/457087098
0a:
https://www.zhihu.com/question/457087098/answer/1864992254
https://www.zhihu.com/question/457087098/answer/1863665807
0b:https://www.zhihu.com/question/457087098/answer/1911173154
0c:
https://www.zhihu.com/question/457087098/answer/1864258142
https://www.zhihu.com/question/457087098/answer/1910852580
1:
https://medium.com/iearn/self-hosting-web3-services-299306b706ee
1a:
https://twitter.com/suhailkakar/status/1555894207570513920
1b:
https://www.informit.com/articles/article.aspx?p=3006828
2:
https://mp.weixin.qq.com/s/1h6yqCWyzYLM8WPGlGdtVA
2a:
https://twitter.com/ChainLinkGod/status/1562125152506195969
https://github.com/Uniswap/web3-react
https://www.codemag.com/article/1701041/Legal-Notes-What’s-the-Deal-with-ReactJS’s-Licensing-Scheme
https://twitter.com/paulmillr/status/1558578060940791809
https://github.com/Nemusonaneko/projects-with-restrictions/
https://medium.com/iearn/self-hosting-web3-services-299306b706ee
https://twitter.com/samecwilliams/status/1561127191106158592
https://twitter.com/forgivenever/status/1556820240993882112
https://okcontract.com/whitelist
https://twitter.com/lickitungxbt/status/1558477975292715016
https://twitter.com/DotTheShake/status/1557703404574707717
https://twitter.com/mallowsxyz/status/1560655467613143040
2b:
https://twitter.com/LeopoldSayous/status/1515982366635966466
2c:
https://ethereum.org/en/developers/docs/nodes-and-clients/nodes-as-a-service/
2d:
https://mp.weixin.qq.com/s/USa7y6IZRjYXa8mWK4t2Lg
https://ipfs.io/ipfs/QmTFnDJbfZLbopwjowmwNE9LFvK599sxhktAArQUvH7Tex
3:
https://www.preethikasireddy.com/post/the-architecture-of-a-web-3-0-application
https://mp.weixin.qq.com/s/ifaVkhdgmh41zxDKVE68Kw
https://www.usv.com/writing/2018/10/the-myth-of-the-infrastructure-phase/


