ชุดส่วนประกอบที่เป็นนามธรรมของระบบ Sack
libuv, libsdl, gkt, qt, ... ไม่มีเพียงสิ่งใดทั้งหมดในหนึ่งเดียว ส่วนขยายส่วนใหญ่ไปยัง C สำหรับรายการสแต็คคิวมีและไม่มีกลไกล็อค การวินิจฉัยหน่วยความจำในตัวเพื่อระบุ/underflow หรือการใช้งาน (เขียน) หลังจากฟรี; การแจ้งเตือนเหตุการณ์ระบบไฟล์ใน API มาตรฐาน, เธรดง่าย, เครือข่ายที่ใช้เหตุการณ์ซึ่งทำงานบนเธรดพื้นหลัง, HTTP, WebSocket, JSON, JSON6, JSOX Parsers, XML Parser ส่งออก; sqlite/odbc wrapper ทั่วไปที่ทำให้การเชื่อมต่อและการใช้งานฐานข้อมูลง่ายขึ้น ไลบรารีตัวเลขเศษส่วนอย่างง่ายไลบรารีเวกเตอร์ขั้นตอนและระบบการลงทะเบียนฟังก์ชั่นซึ่งสามารถลงทะเบียนทั้งฟังก์ชั่นหรือตารางอินเตอร์เฟสสำหรับโมดูลการสื่อสารระหว่างกันในห้องสมุดในระบบที่ซับซ้อน ระบบไฟล์นามธรรมและอินเทอร์เฟซระบบไฟล์เสมือนจริง
มันไม่ใช่อะไร? มันไม่ใช่ระบบปฏิบัติการ แต่ไม่มีตัวโหลดงานและการจัดสรรตัวเอง หน่วยความจำถูกร้องขอจากระบบและจัดการสำหรับรหัสหน่วยความจำอาจถูกแชร์ระหว่าง Proceses
เอกสารที่เผยแพร่จากข้อมูลเอกสารส่วนหัว - http://sack.sf.net (https://sourceforge.net/projects/sack/)
Git มักจะทันสมัยมากขึ้น GIT เป็นระบบควบคุมแหล่งกำเนิดการพัฒนาหลัก Mercurial ไม่ได้ใช้อีกต่อไป (SourceForge ล้าสมัย)
โมโนโทนน่าจะดีที่สุด แต่; อืม ... บางทีพวกเขาอาจปิดเกินไป
c แพ็คเกจต้นทางเดียว C/C ++ แหล่งที่รวบรวมได้และส่วนหัวเดียว ลิงค์ไปยังเอกสารที่เกี่ยวข้องในแต่ละโครงการ ...
เปิดเผยผ่าน interop ถึง v8 ถึง node.js ...
ทั้งสองโครงการสร้างด้วยแหล่งเดียวกัน - cmakelists แยกต่างหากใช้ในการสร้างเวอร์ชัน GUI โดยใช้กระสอบที่ดึงมาจาก GitHub; แทนที่จะรวมการควบรวมไว้
Git ไม่อนุญาตให้ประหยัดตะขอได้ดีนัก - แต่ submodules เป็นความเจ็บปวด สิ่งนี้ได้รับการอพยพเพื่อใช้ git submodules; ซึ่งเพื่อความสะดวกต้องใช้ตะขอ การตั้งค่าการกำหนดค่าสำหรับการโหลดตะขอสำหรับสิ่งนี้จะช่วยได้
ตะขอใน. githooks ในที่เก็บนี้จะพยายามที่จะห่วงโซ่กับตะขอที่มีอยู่ใด ๆ ที่คัดลอกมาจากเทมเพลตที่คุณมีการตั้งค่า
# git config --global core.hookPath .githooks
# git clone git://github.com/d3x0r/sack
# cd sack
# mkdir build # could be mkdir sack/build instead
# cd build
# cmake ../cmake_all -DCMAKE_BUILD_TYPE=Debug
### alternatively, you can just build the sack core
# cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=output
### and later build binary specifically
# cd ..
# mkdir sack-binary-build
# cd sack-binary-build
# cmake ../binary -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=output -DSACK_SDK_ROOT_PATH=../build/output
CMAKE_BUILD_TYPE (รีลีส/ดีบั๊ก/relwithDebinfo/minrel) ใช้เพื่อสร้างไดเรกทอรี _solution และ _out หากคุณใช้ 'debug' ไดเรกทอรีจะเป็น 'debug_solution' ฯลฯ แต่ละโครงการจะติดตั้งลงในโฟลเดอร์ <build_type> _out ที่เกี่ยวข้อง
ccmake หรือ cmake-gui สามารถใช้เพื่อกำหนดค่าตัวเลือกสำหรับการรวบรวม มันเป็นงานที่ยุติธรรมในการคาดเดาตามระบบ แต่บางครั้งก็มีสิ่งที่คุณต้องการเปลี่ยนแปลง
การตั้งค่าการกำหนดค่าสำหรับตัวเลือก BUILD_EXTRAS ซึ่งจะสร้างแอปพลิเคชันมากขึ้นในกระสอบที่รองรับน้อยกว่าหรือสำหรับการทดสอบหรือการพัฒนาอย่างลึกซึ้ง
การกำหนดค่าของกระสอบ ..._ โซลูชัน/โครงการหลักมีตัวเลือกมากมายเช่นว่าจะใช้ PNG/JPEG/ZLIB ฯลฯ หรือรุ่นระบบ เช่นเดียวกับ sqlite สามารถเปิดใช้งาน NO_ODBC เพื่อปิดการใช้งานการพึ่งพาของไลบรารี ODBC ... อีกมากมาย
(Linux) UNIXODBC (ตัวเลือก CMAKE โดยใช้ CCMAKE ใน Core สามารถปิดการพึ่งพานี้ได้);
(openssl?)/libressl (มี libressl 3.2.1 (ล่าสุด) รวมอยู่ด้วย)
ชิ้นส่วน GUI (ชื่อแพ็คเกจ Ubuntu อาจแตกต่างกันสำหรับระบบอื่น ๆ )
ffmpeg สามารถใช้รหัสบางส่วนเพื่อสร้างเครื่องเล่นสตรีมมิ่งวิดีโอ/เสียง โมดูลอินเตอร์เฟส FFMPEG โหลด ffmpeg.dll แบบไดนามิกซึ่งควรจะพร้อมใช้งานสำหรับ windows ในที่เก็บ หรือสามารถสร้างได้ ...
ฉันได้รับมันเพื่อสร้างด้วย WSL 2; (WSL -การติดตั้ง) และ Arch Linux Image (https://github.com/yuk7/archwsl); สมมติว่ามีการติดตั้งเครื่องมือบิล
Pacman -s สร้าง diffutils mingw-w64-gcc
และบางที MingW-W64-PKG-Config (AUR) MINGW-W64-Environment (AUR) MINGW-W64-CMAKE (AUR)
git clone https://github.com/FFmpeg/FFmpeg.git
cd FFmpeg
mkdir build
../configure --arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --prefix=output --enable-shared --disable-static
นี่คือคอลเล็กชั่นเล็ก ๆ ขนาดใหญ่ มันรวบรวมสำหรับ C/C ++ เป็นห้องสมุดที่มีโปรแกรมสนับสนุน/ยูทิลิตี้บางอย่าง นั่นคือแกนกลาง; มีแอปพลิเคชันแบบสแตนด์อโลนอีกหลายรายการ มันให้สิ่งที่เป็นนามธรรมระหว่าง Windows และ Posix และแม้กระทั่งรสชาติที่หลากหลายของ Posix เช่น Linux, Android, Mac, et al. มันคือ SDL (เรียงลำดับ) มันยุ่ง แต่ไม่จริง มันคือ GTK (sorta), มันเป็น STL (สแต็ค, รายการ, คิว, Constainers, Generics, ... ), มันสามารถพึ่งพาห้องสมุด C แทบจะไม่มีแม้แต่
ในตอนแรกมีโปรแกรมเทอร์มินัลอนุกรม DOS มันถูกเขียนขึ้นใน C. มีแน่นอนว่าภาชนะบรรจุขั้นพื้นฐานหายไปดังนั้นโดยทั่วไปทุกโครงสร้างคือการใช้งานใหม่ของสิ่งเก่า แต่มันก็กระชับและไม่มีสิ่งพิเศษที่ไม่ต้องการ 'ในกรณีของชั้นเรียนทั่วไปซึ่งอาจให้สิ่งที่ไม่ได้ใช้ยกเว้นในบางกรณี สิ่งนี้มีเธรด มันมีการเรียนการสอนหลายครั้งที่ Vairous ระบุว่ามันสามารถสละเวลาได้
มันพัฒนาเป็นระบบปฏิบัติการที่เป็นกรรมสิทธิ์ที่เรียกว่า NIPC (การสื่อสารระหว่างกระบวนการใหม่) ซึ่งไม่เพียง แต่มีเธรด แต่สามารถโหลดไฟล์ dos .exe เป็นกระบวนการลงในเธรด (ไม่ใช่แค่ไฟล์. com) การจัดสรรหน่วยความจำที่ได้รับการจัดการนี้การเข้าถึงการแสดงผลดิสก์ acceses และเวลา CPU ในรูปแบบกลมโรบิน ในตอนแรกไม่มีการนอนหลับ แต่กระทู้ต่อมาอาจนำตัวเองออกจากกำหนดการที่จะไม่ตื่น ใน 386-25 มันมีรอบ 1,500 รอบวินาที แต่งานจริงส่วนใหญ่อยู่ในการจัดการขัดจังหวะการสื่อสารกับระบบอื่น ๆ
จากนั้นก็มี Windows 3.1 ... และ NT 3.51 ในช่วงเวลาสั้น ๆ จนกระทั่ง NT4 ออกมา ดังนั้นตอนนี้การควบคุมเธรดที่กำหนดเองทั้งหมดนั้นค่อนข้างล้าสมัย แต่การจัดสรรที่ค่อนข้างดี และมีการพัฒนาจำนวนมากของท่อหน่วยความจำที่ใช้ร่วมกัน/คิว/ฯลฯ และซ็อกเก็ต มีซ็อกเก็ตใน NIPC ด้วย เขียนเป็นสแต็ก UDP/TCP/IP ไปยังการ์ดเครือข่ายที่เขียนโดยตรงถึง; API สำหรับเหตุการณ์ที่แน่นอนเพราะฉันไม่รู้วิธีการอื่นใดที่จะจัดการกับเครือข่าย แน่นอนว่ามีซ็อกเก็ต Berkley และพวกเขาบอกฉันว่าฉันควรใช้ API นั้นและมันก็ซับซ้อนมาก ... ฉันต้องนั่งรอข้อมูล?
จากนั้นก็มีอินเทอร์เน็ตมีชีวิตในฐานะฤาษีจับคู่คนที่จะไม่ถูกจับได้และปวดร้าวจากสิ่งที่เปลี่ยนล็อคและมี 'Vurt'
มีสิ่งเล็ก ๆ น้อย ๆ มากมายเกี่ยวกับสิ่งเล็ก ๆ น้อย ๆ ที่นี่ อัลกอริทึมเรขาคณิตที่สร้างสรรค์บางอย่างที่ทำงานได้ดีสำหรับของแข็งนูน ...
ดังนั้นที่นี่แกนกลางเกิดขึ้นจริง ๆ เป็นเรื่องของตัวเอง มันเป็นประเภท (ข้อความ, รายการ, สแต็ค, คิว, ... ), หน่วยความจำจัดสรร (ซึ่งมีการดำเนินการระงับ () ที่อนุญาตให้บล็อกของหน่วยความจำที่จะถูกเก็บไว้หลังจากเจ้าของปลดปล่อยมัน) ซึ่งถูกห่อหุ้มไว้ในการจัดสรรในกองหน่วยความจำที่ใช้ร่วมกันระหว่างกระบวนการ; และใช้ไฟล์ที่ได้รับการสนับสนุนเป็นหน่วยความจำถาวรที่สามารถโหลดซ้ำได้และโปรแกรมจะกลับมาทำงานในสถานะหน่วยความจำที่มีอยู่ และเครือข่ายคงที่ เปลี่ยนสิ่งที่เกิดขึ้นกับเหตุการณ์ เครือข่ายมีการพัฒนามากมายตั้งแต่วันที่เริ่มต้นของการใช้หนึ่ง WaitformuitePleBjects () หลังจากทั้งหมดไม่ใช่ 64 ซ็อกเก็ตไม่เพียงพอสำหรับทุกคน? (ไม่, ไคลเอนต์ 2000 การเชื่อมต่อมีปัญหากับความล้มเหลว 80% ทั้งหมด) ในช่วงเวลานี้เลเยอร์อินเทอร์เฟซกราฟิกเริ่มต้นขึ้น แรงบันดาลใจจาก Allegro และใช้โครงสร้าง imagefile_tag {} เริ่มต้นใช้งานเส้นทางเส้นทางสี 32 บิตโดยเฉพาะ Allegro ได้รับการสนับสนุนสำหรับพิกเซลทุกประเภทซึ่งเร็วเท่าที่เคยเป็นมาก็ยังช้าลงโดยการโทรผ่านพอยน์เตอร์ฟังก์ชั่นทางอ้อม ฉันมีชุดประกอบเวลาของชุดการคัดลอกบล็อกและเส้นบางส่วนสำหรับรสชาติ ASM และ MMX เมื่อถึงเวลาที่ SSE ออกมาคอมไพเลอร์ก็ทำงานได้ดีมากในการเพิ่มประสิทธิภาพ C และคอมพิวเตอร์ก็เร็วขึ้นว่าสิ่งที่เร็วอยู่แล้วนั้นเร็วกว่ามากที่การบำรุงรักษาของแพลตฟอร์ม/คอมไพเลอร์ต่าง ๆ เมื่อคุณมีภาพที่คุณสามารถวาดได้แล้วมันเป็นเพียงเรื่องของการทำให้ระบบแสดงให้เห็นดังนั้นอินเทอร์เฟซ Windows ก็เสร็จสิ้นโดยมีเจตนาบน Just Linux Framebuffer (ซึ่งไม่เคยเร็วมาก)
ดังนั้นเนื่องจากสิ่งนี้เป็นแพลตฟอร์ม dekware เป็นแอปพลิเคชันที่ใช้กระสอบจึงถูกฟอร์มและในที่สุดก็ปรากฏตัว; ทำหน้าที่เป็นอุปกรณ์ทดสอบสำหรับห้องสมุด
ดังนั้นจึงมีห้องสมุดภาพเดียวและห้องสมุดแสดงผลดังนั้นพวกเขาจึงบรรจุไว้ในแพ็คเกจขนาดใหญ่เดียว (CMake ยังคงมีตัวเลือก build_monolithic ซึ่งอาจจะค่อนข้างเสียในขณะนี้) ตอนนี้ฉันเล่นโคลนจำนวนมากโดยใช้ dekware (ยังสนับสนุน dekware สำหรับคนอื่นที่ทำงานบน FreeBSD ด้วย non-gnu make; ความเจ็บปวดที่เป็น ... ฉันพูดถึงตอนนั้นฉันใช้ Make และมีรสชาติมากมายของ makefiles สำหรับระบบจำนวนมาก?) ... ก่อนหน้านั้นมันเป็นเพียง 'สามัญ' หลังจากรูปแบบที่ฉันได้เรียนรู้ในงานก่อนหน้าของฉัน กระสอบเป็นถุงขนาดใหญ่ กระเป๋าสามารถถือได้ 5 ถุง แต่กระสอบสามารถถือได้เหมือน 25 ถุง กระเป๋าเป็นกลุ่มรวมพื้นฐานหรือโมดูลย่อย ... ชิ้นส่วนที่ตัวเองสามารถ ommitted และไม่ส่งผลกระทบต่อสิ่งอื่นใด และกระสอบมีกระเป๋ามากมาย
ดังนั้นจึงมีงานใหม่สร้างซอฟต์แวร์ใหม่และฉันสามารถใช้ประโยชน์จากกระสอบและสร้างแอปพลิเคชันได้อย่างรวดเร็วซึ่งจะทำงานบน Windows หรือ Linux ด้วยรหัสเดียวกันและไม่มี #ifdef's ฉันพัฒนาเลเยอร์ msgsvr โดยใช้คิวข้อความ SYSVIPC และทำไดรเวอร์การแสดงผลทั่วไปสำหรับแอปพลิเคชัน ฉันสูญเสียสิ่งนั้นมาตั้งแต่ฉันคิดว่าฉันตัดสินใจว่ามันแตกพอที่จะต้องถูกฆ่าและทำใหม่ ในเวลานั้นฉันมี OpenGL, GL2, GLES, QNX, WebSocket/HTML Canvas Display Drivers แล้ว และระบบข้อความดูดี แต่ก็ค่อนข้างแย่จริงๆ (มันยังอยู่ที่นั่นและบางสิ่งยังคงใช้มันได้ทำงาน .... ) ที่นี่ในงานใหม่นี้ฉันต้องนำเสนอห้องสมุดของฉันกับผู้อื่น ฉันไม่ได้ตระหนักว่า 'กระสอบ' อาจหมายถึงบางสิ่งบางอย่างอื่นนอกเหนือจากที่ฉันตั้งใจไว้ มันกลายเป็น espcailly ไม่ดีเมื่อฉันทำโครงการนี้ (ชุดเลย์เอาต์อินเทอร์เฟซแบบโมดูลาร์) ซึ่งขึ้นอยู่กับกระสอบของฉัน หรือมาจาก ...
เมื่อเวลาผ่านไปทั้งเพื่อวัตถุประสงค์ในการสาธิตการทดสอบและยูทิลิตี้ทั่วไปจะกลายเป็นโฟลเดอร์ 'Utils' ภายใต้ Sack ซึ่งเป็นแอพพลิเคชั่นขนาดเล็กที่ใช้กระสอบ และโฟลเดอร์ 'เกม' ที่มีสิ่งที่ใกล้เคียงกับแอปพลิเคชันมากขึ้น หากไม่มีเหตุผลอื่นนอกจากรหัสอ้างอิง
ดังนั้นจึงมีห้องสมุดคณิตศาสตร์เวกเตอร์ (กลับมาอีกครั้งสำหรับ geomtry ที่สร้างสรรค์?) ห้องสมุดคณิตศาสตร์เศษส่วนซึ่งเก็บหมายเลขจำนวนเต็มหมายเลข/ส่วน สิ่งนี้ใช้สำหรับการปรับขนาดในถุง GUI มีเสื้อคลุมสำหรับตัวจับเวลา เช่น Windows Settimer มี addtimer (); ตัวจับเวลาและเธรด (threadto () แทนที่จะเป็น pthread_create/createThread/.... )
Intershell เป็นโปรแกรมที่มีไว้สำหรับการผลิตแอพพลิเคชั่นฟังก์ชั่นแบบเต็มหน้าจออย่างรวดเร็ว (อินเทอร์เฟซคีออสก์, จอแสดงผลและป้าย) รองรับหน้าต่างที่โปร่งใสดังนั้นคุณสามารถเลเยอร์เนื้อหาแบบคงที่ผ่านเนื้อหาภาพเคลื่อนไหวที่มีอยู่เดิมบางทีอาจเล่นกับ VLC (แม้ว่าจะมียูทิลิตี้เล็ก ๆ ในการเล่นวิดีโอเพียงแค่ใช้ FFMPEG เป็นตัวควบคุมแบบดร็อปใน Intershell)
แหล่งที่มาโดยทั่วไปจะแยกจากกันซึ่งต้องใช้การพึ่งพาน้อยที่สุดของผู้อื่น สักวันนี้ควรจะหวีลงในแผนผังการพึ่งพาจริงที่สามารถใช้ประโยชน์ได้ในระดับที่สูงขึ้น
if( options/version == 1 ) option set options/version=2... option default otheroption/app/color=12344และบางแห่งที่สั่งซื้อในรีจิสทรีกระบวนการข้างต้น ... อนุญาตให้ลงทะเบียนค่าฟังก์ชั่นและประเภทสำหรับการบริโภคในภายหลัง รีจิสทรีควบคุม PSI ขึ้นอยู่กับแผนผังรีจิสทรีนี้ ชื่อในต้นไม้สามารถทิ้งได้สำหรับการเรียกดูในภายหลัง (การดีบักเช่นนั้นจบลงที่ไหน?) โมดูลนี้ยังเป็นไลบรารี deadstart ที่อ่าน interface.conf และจัดการการโหลดโมดูลเพิ่มเติมหรือการกำหนดค่านามแฝงกับอินเทอร์เฟซตามตัวเลือกที่ระบุ (สิ่งนี้สมควรได้รับอย่างน้อยทั้ง wikiPage)
12 ... n) ยูทิลิตี้เล็ก ๆ น้อย ๆ ที่เขียนด้วยห้องสมุดนามธรรมนี้ซึ่งโดยทั่วไปจะทำงานกับทุกระบบ
ฟังก์ชั่นพื้นฐานบางอย่างที่แตกต่างกัน - สร้างกระบวนการจัดการซ็อกเก็ตได้อย่างมีประสิทธิภาพระบบไฟล์ abstractions (แม้แต่ระบบไฟล์เสมือนจริงที่แสดงให้เห็นว่าคุณจะใช้อินเทอร์เฟซระบบไฟล์ของคุณเองได้อย่างไร), ping (ซ็อกเก็ตดิบ), ARP, ไดรเวอร์แบบสอบถาม WHOIS แม้แต่บริการตัวอย่างที่ใช้งานได้โดยพลการ ระบบการแปลภาษา (ไม่มีอะไรพิเศษหรือมีมนต์ขลัง)
n+1) intershell; นี่คือตัวจัดการเค้าโครงแอปพลิเคชันทั่วไป มันจัดการปลั๊กอินระดับสูงพร้อมการควบคุมทั่วไปที่สามารถวางได้อย่างง่ายดายแม้หลังจากการปรับใช้ ปลั๊กอินขนาดเล็กอาจถูกโหลดได้อย่างง่ายดายผ่านอินเทอร์เฟซที่ให้อินเทอร์เฟซเหตุการณ์ง่าย ๆ ไปยังรหัสผู้ใช้
n+10) Dekware - ทั้งหมดข้างต้น; มันสามารถโหลด intershell จากนั้นขยายปุ่มเพื่อให้สคริปต์ เทอร์มินัลยูทิลิตี้การประมวลผลสคริปต์ทั่วไป ...
ไลบรารีรูปภาพและเรนเดอร์เชื่อมต่อผ่านอินเตอร์เฟส อินเทอร์เฟซคือโครงสร้างของพอยน์เตอร์ฟังก์ชั่นที่ร้องขอตามชื่อ อินเทอร์เฟซอาจเป็นนามแฝงดังนั้นหากวิดีโอโหลดเป็น 'video.opengl' นามแฝงที่เรียกว่า 'วิดีโอ' สามารถสร้างขึ้นเพื่อเลือกว่ามีหลายรายการที่ให้ไว้โดยค่าเริ่มต้น
ภาพมีสี 32 บิต มีฟังก์ชั่นที่จะให้ DWORD ที่สั่งซื้อแพลตฟอร์มเพื่อสร้างสีจากส่วนประกอบหรือรับส่วนประกอบจากสี ภายในมีลูปแน่นเพียงไม่กี่ตัวที่ปรับให้เหมาะสมสำหรับการถ่ายโอนสีและการดำเนินการ 32 บิต ย้อนกลับไปในปี 2000 ฉันค้นหาสี '64 บิต 'ซึ่งมีอยู่ภายในบนการ์ดวิดีโอเพื่อความแม่นยำที่สูงขึ้น
Linux สนับสนุนผ่าน Navtive X Now Android สามารถใช้ GLES2 หรือ Native Framebuffer (AnativeWindow?) สามารถใช้ Win32 Windows, OpenGL, D3D (ประมาณ) ใน OpenGL, Windows/Controls ที่สร้างขึ้นกลายเป็นพื้นผิวในพื้นที่ 3 มิติ (นี่คือเหตุผลที่เลเยอร์ภาพเป็นอินเทอร์เฟซที่สามารถเสียบได้ ทั้งหมดสามารถใช้พร็อกซีซึ่งให้เครือข่าย interafce ที่เบราว์เซอร์สามารถเชื่อมต่อได้คำสั่ง DAIN จะถูกส่งไปยัง BRWSER เพื่อดำเนินการ ...
เริ่มเลเยอร์ Vulkan ซึ่งจะทำให้บางสิ่งง่ายขึ้น อินเทอร์เฟซ OpenGL Image สำหรับ Shaders สามารถใช้ Vulkan เป็นแบ็กเอนด์ได้จริง ๆ แต่ตอนนี้พวกเขาค่อนข้างยืดหยุ่น ... ดังนั้นบางทีการใช้ API ที่ลึกกว่านั้นอาจจะดำเนินการ
สิ่งนี้ใช้งานได้ดีกว่าเป็น GUI โหนด
นี่คือการสร้างห้องสมุดควบคุมบนการโทรกลับที่ลงทะเบียนของคลาสการควบคุม ห้องสมุดถูกสร้างขึ้นบนอินเทอร์เฟซรูปภาพและเรนเดอร์ ... มันติดตามสิ่งต่าง ๆ ในระดับที่สูงขึ้นเช่นแถบเลื่อนกล่องรายการปุ่มและให้ส่วนขยายที่กำหนดเองตามแต่ละคลาส
DEKWARE BUILD Product เป็นไคลเอนต์โคลน/โคลน เอกสารและการดาวน์โหลดของรุ่น prebuilt มีอยู่ที่ d3x0r.org หรือ www.d3x0r.org
Node Addon ที่เปิดเผยการสนับสนุนไลบรารีหลักไปยัง JavaScript จัดเตรียม WebSockets, HTTP, JSON, JSOX PARSERS, อินเตอร์เฟส SQLITE/ODBC
แพ็คเกจ NPM และที่เก็บ Git
Node Addon ที่มีอินเทอร์เฟซทั้งหมดจาก Sack.vfs แต่ยังเริ่มใช้ Interfafce ไปยังระบบย่อย GUI
แพ็คเกจ NPM และพื้นที่เก็บข้อมูล GIT
ที่เก็บ Git เป็นสาขาที่รูทใน Master of Sack.vfs และเป็นเพียงส่วนเพิ่มเติมของอินเทอร์เฟซที่มีอยู่ แม้ว่ามันจะเปลี่ยนจากการใช้ sack.cc amaglamation แต่ก็ใช้โครงการภายนอก CMake เพื่อดาวน์โหลดพื้นที่เก็บข้อมูลกระสอบจาก GitHub