Giter Club home page Giter Club logo

home-network-note's Introduction

🚧 Under Construction / 持续更新 🚧

Project Start in 2014 GitHub last commit GitHub

这几年积累/分享了不少实践内容,是时候把这个项目的坑填上了。

项目说明

记录搭建兼顾学习娱乐的家用网络环境的过程,折腾过的一些软硬件小经验。

目前的网络方案从 2016 年使用至今,非常稳定,整体架构几乎没有变化。(日常在线 25~40 台设备,峰值 50+ )

文档中的方案和方案中的配置会尽可能**保持简单**,确保各种服务在运行一年之后,我依旧能够对软硬件进行**轻松简单**的“维护、升级以及替换”操作。

主要场景和关键词

列举常见家用网络场景的一些核心诉求的关键词。

设备联网 备份数据 下载上传 数据同步 开发学习 游戏娱乐
核心指标 安全、稳定 安全、可靠 高速 无感知 流畅 流畅
重要因素 简单、易维护 高效 易用 准确 省心 舒适
可选因素 网速、组网模式 易用 安全 跨平台 冗余保障

场景举例

  • [1] 家庭环境中的手机、平台、电脑、NAS 等设备,均能够快速的完成数据自动同步,针对宝贵的照片或文档的备份能够高效完成。
  • [2] 网络环境能够支持各种数据的周期性备份(每日、每周),针对代码、文档、笔记能够进行额外的数据备份保护。
  • [3] 稳定的网络,能够保障日常观看在线视频、进行低延迟的游戏对战、资料的快速下载,以及开发学习相关试验诉求的数据获取和分析。
  • [4] 当数十台设备接入网络的时候,网络需要依旧保持低延迟,以及流畅的内外网交互,无须针对路由器相关网络设备或联网电子设备、智能设备、虚拟机进行额外的操作,包括并不仅限于重启、执行复杂脚本监控等。
  • [5] 内网设备和运行服务均处于相对安全的网络环境中,允许以安全的方式从外网进入开发环境网络,使用网络内的设备进行开发调试。

不完全设备列表

如果你考虑入手一些设备,比如笔电、路由、网卡、显示器、硬盘、移动和娱乐设备,或许可以从这里的到一些参考信息,节约点银子,让荷包💰保持郁郁葱葱。

设备清单(待补全) | 显示器相关 | 💣 断电不再使用的设备

屋内日常保持联网设备清单及简明方案

🏠 网络结构

🌈 宽带资源

不敢想假如家里没有稳定的网络会怎样

资源类型 明细 备注
北京联通 固网 1000M 下行 900Mbps / 上行 40Mbps
北京联通 4G 路由 备份网络,保障智能家居和监控使用,及远程维护主网络设备
北京电信 5G 主网络,用于日常上网、热点
北京联通 5G 备份网络,用于补充信号覆盖

👉 完整说明 / 简要说明 👇

  • [1] 如果没有特殊需求,建议简化不必要的多线宽带,避免策略路由带来的各种问题,以及避免使用使用软路由聚合不同类型宽带,带来后续维护上的麻烦。
  • [2] 带宽使用过程中不建议依赖任何提速软件,避免当软件不可用时,带宽质量严重受损,以及带来的额外维护“提速软件”运行环境带来的成本。
  • [3] 个人体验原因,已停用移动电话卡,取消原本无线三网接入。

⭐️ 路由网关

影响网络质量的核心设备,负责部分网络安全事务,历史设备见文档

资源类型 明细 网络 储存 开始服务
交换机 NETGEAR GS116E ^1 千兆LAN x16 - 2017
路由器 Xiaomi AIot AX 3600 ^2 2G Wi-Fi / 5G Wi-Fi(Wi-Fi6) / 千兆LAN - 2020
路由器 Newifi D2 ^3 2G Wi-Fi / 5G Wi-Fi / 千兆LAN 8G 2018
路由器 Xiaomi AC2100 ^4 5G WIFI / 千兆LAN - 2020
路由器 Xiaomi Mini 青春版 ^5 2G Wi-Fi / 百兆LAN - 2016
路由器 施耐德旅行插座 ^6 2G WIFI / 百兆LAN - 2018

👉 完整说明 / 简要说明 👇

  • [1] 八口千兆交换机,用于扩展主路由网络吞吐能力,带 Web 管理界面,带铁壳散热,最大功耗仅10w,目前感觉最超值的一个设备。
  • [2] 扩展主路由的 AP 能力,提供屋内设备以 Wi-Fi 6 模式,进行高速无线接入。
  • [3] 全千兆四口主路由(二级路由),拥有 512M 内存和铁壳散热的路由器,延续 Newifi 极高的性价比,一度使用两台相同规格的设备作为拨号路由器和二级路由。
  • [4] 偶尔在开发调试时使用,用于替换之前使用的小米路由器第一版,相比较之下,固件修改复杂度稍高一些,但是胜在全千兆。
  • [5] 功耗极低,小巧方便,适合旅游或者临时需要网络进行调试的场景,三方适配的固件功能强大,如果公司不限制使用自建路由作为调试环境,强烈建议入一台。
  • [6] 此插座自带一个简易的热点 WiFi 功能,如果你需要插上设备就自动组网,可以使用上面的设备,如果你没有自动组网等需求,那么这个能让你上网的插座,用起来体验还不错,唯一槽点,插座本身发热比较严重,或许对网络稳定性/质量有一定影响。

💻 主机资源

提供运算能力的本地设备,历史设备见文档

MacBook Pro (16-inch, 2019) Turn On:2019

目前使用最久的一台 MacBook 笔记本。

MacOS:Ventura CPU:Intel I9-9980HK GPU:AMD Radeon Pro 5500M RAM:32G Disk:2T WiFi:802.11ac

在 Apple 停止生产 Intel 芯片的 MacBook Pro 后,虽然也有使用 M1/M2 芯片的 MacBook Pro,但敲字的主力机一直是这台 Intel 设备。

这台设备在 19 年首发时入手,改良后的第一代蝶式键盘,让我告别了之前频繁去“苹果售后”清理键盘中的猫毛,恢复键盘失灵的问题。

这台设备的性能让我非常满意,实测性能比同为 16 寸,但是搭载 i7 2.6GHz CPU 的设备性能足足高了 20~30%。

ThinkPad L14 Gen 1 (AMD) Turn On:2021,2022

低成本、多核心数、高内存规格的笔记本。

Ubuntu:22.04 CPU:AMD Zen2 4750u RAM:64G Disk:2T LAN:1000M WiFi:802.11ac

之前一直在寻找核心数多、功耗低、支持 64GB 内存、相对便携的无显卡笔记本设备,以做“廉价的服务器”使用,并替代早先时候购置的 HP EliteDesk G4 800 小型工作站,直到遇到了搭载 AMD Zen2 4750u 的 ThinkPad L14。

这台设备满载仅 45w 的功耗,性能极强,核心数也非常多,特别适合长时间跑容器服务,来扩展本地的计算资源。美中不足的是,设备只有一条固态硬盘插槽可用。

2022年,设备价格进一步下降,增加了一台相同 CPU 配置的新设备作为冗余资源(32G/1TB)。

Intel NUC8i5BEH Turn On:2021

一台多面手,目前变成了一台 Apple TV。

MacOS:Ventura CPU:Intel I5-8259U RAM:64G Disk:2T LAN:1000M WiFi:802.11ac

最初的入手原因见这篇文章,随后在不断添置和更新新设备后,这台设备在职能转变为了一台安装了 ESXi 的编写虚拟机“母鸡”,支持了大量开源软件、尤其是具备分布式使用场景的软件的构建和部署测试相关的工作,极大的解放和降低了我的那台动不动就会风扇喧嚣起来的 Intel 芯片的 MacBook。

随着设备越来越多,虚拟化相关的任务不再需要它执行,目前它变回了一台 “Apple TV”,安静的放在真正的 Apple TV 旁边,为我能够看到视频网站弹幕继续做出它的贡献。

相同设计风格的、曾经用于跑多种服务的 Intel NUC7CJYH (2021 购入),已经转手群友。

2021 年,决定让群晖专注存储,将群晖上运行的容器都迁移到过这台小机器。在解决了群晖的硬盘因为跑容器,出现的勤奋运转绝不休眠的问题后,在这台机器上搭建和运行了两年个人 Wiki。

MacBook Pro M2 Turn On:2022

因为是 ARM 架构,使用比较少的设备,当然,偶尔用它来测试“模型”。

MacOS:Ventura CPU:Apple M2 RAM:16G Disk:512GB LAN:1000M WiFi:802.11ac

Dell OptiPlex 3060 Turn On:2022

重新建设中,用于获取和处理各种 RSS 信息。

ESXi:6.7u3 Ubuntu:22.04 Windows:11 CPU:Intel I3-9100T RAM:16G Disk:512GB LAN:1000M WiFi:802.11ac

重新建设中,用于获取和处理各种 RSS 信息。

Lenovo 9000K Turn On:2023

目前已重置,待重新投入使用。

Ubuntu:23.04 CPU:Intel I9-13900KF GPU:Nvidia 4090 RAM:64G Disk:2TB LAN:1000M WiFi:802.11ac

机器性能不错,用来做本地模型验证。

Mac Pro (2013) Turn On:2023

为 128GB ECC RAM、高颜值、长期密集运算准备的设备。

MacOS:Ventura CPU:Intel E5-2697v2 GPU:AMD FirePro D300 RAM:128G Disk:2T WiFi:802.11ac

ECC RAM 保障密集计算时,数据绝对正确,线程足够多即使对比前两年的设备也毫不逊色。唯一缺点,相对功耗较高。

HP EliteDesk 800G6 Turn On:2023

使用各种淘汰硬件重置的另外一台全闪存 NAS。

ESXi:7.0u3 Ubuntu:22.04 Windows:10 CPU:Intel I3-9100T RAM:32G Disk:5.5TB LAN:1000M WiFi:802.11ac

已重置,待重新投入使用。

Intel NUC9i5QNX Turn On:2023

构建桌面全闪存 NAS / DAS 的准系统主机。

ESXi:7.0u3 Ubuntu:23.04 CPU:Intel I5-9300H RAM:16G Disk:2TB LAN:2000M WiFi:6 thunderbolt:3

这台设备入手原因见这篇文章,目前正在使用它进行全闪存雷电 NAS 的搭建。

👉 完整说明 / 简要说明 👇

🚚 储存资源

用来持久化保存资料,开始服务时间从作为存储角色开始计算。历史设备见文档

资源类型 明细 网络 储存 开始服务
主力备份 Synology DS 920+ ^1 千兆LAN 17TB (8TB Raid1 / 8TB SHR / 1TB SSD) + 0.5TB SSD Cache 2020
资源冷备 硬盘若干 ^2 - - 2016 / 2018 / 2020
长期备份 Canon G3800 ^3 2G WIFI - 2019
清理备份 Deli 9920 碎纸机 ^4 - - 2017
电力保障 APC BR550G ^5 - - 2017/2019
电力保障 APC BK650M2 ^6 - - 2023

👉 完整说明 / 简要说明 👇

  • [1] 新品发布时入手的 DS920+ 四盘位机器,取代之前服役了许久的 Synology DS 718+ 和定制的 HP Gen8 MicroServer。使用3组盘来区分对待不同场景的数据,针对临时下载数据,使用 SSD 进行数据落地,对于诸如软件资源等持久性存储的一般数据使用 SHR 模式的磁盘存储,而对于宝贵的照片数据则使用 Raid 1 进行储存,并搭配 SSD Cache 对重复查询的数据进行缓存。

  • [2] 因为各种原因腾出来的闲置磁盘。

  • [3] 打印不失为一种相对稳定的持久化保存方案,之前因为放置太久坏掉过一台,迫于搬家后打印需求变多,又买了一台。价格便宜,非常好用。

  • [4] 干掉持久化的纸质存储,最靠谱的莫过于加密级别的粉碎了,尤其是相对隐私敏感的内容。

  • [5] 在所有电源都带稳流稳压作用后,添加一台UPS可以进一步防止市电闪断带来的数据损坏或者写输出脏掉的问题。在第一块使用了两年后,更换了一块电池,继续战斗,产品质量靠谱。

  • [6] 为数据备份设备单独准备的后备电源。

  • 硬件笔记:组装“固态 U 盘”的八年,从 100 块到 1000 块

📱 移动设备 & 🎮 游戏设备

强依赖网络进行交互的娱乐设备。历史设备见文档

编号 资源类型 明细 网络 储存 开始服务
1 游戏机 Switch 续航版 5G WIFI 500G 2020
2 游戏机 Switch Lite 5G WIFI 500G 2020
3 游戏机 PS4 2G WIFI 500G HDD 2017
4 游戏机 PS4 Pro 2G WIFI 500G SSD 2017
5 游戏机 PSVx2 ^2 2G WIFI 16G / 64G 2015 / 2016
6 游戏机 3DSx2 ^3 2G WIFI 64G / 64G 2014 / 2016
7 平板 iPad Air2 4G / 5G WIFI 128G (改) 2015
8 平板 iPad Pro 10' ^4 5G WIFI 256G 2018
9 平板 iPad Pro 12' ^4 5G WIFI 256G 2018
10 爪机 iPhone 14 Pro 5G / 5G WIFI 512G 2022
11 爪机 Redmi 11T Pro 5G / 5G WIFI 256G 2022
12 爪机 海信 A7cc 5G / 5G WIFI 128G 2021
13 爪机 iP3GS ^1 2G / 2G WIFI 忽略 2017

👉 完整说明 / 简要说明 👇

  • [1] 出掉了17年购置的初代后,将状态变更为一正一破,好处是可以联机的游戏,可以大号带小号玩(比如动森),另外可以做PS4手柄,玩不需要 L2R2 键的游戏体验还可以。
  • [2] 高铁候车、飞机候机、团建出门、旅游出行必备,小巧可爱,有 GBA XL 的感觉。
  • [3] 家中吃灰。
  • [4] 巫师3专用机。
  • [5] 灵魂献祭专用机。
  • [6] 塞尔达、逆转、火纹专用机。
  • [7] 电子相册专用机。
  • [8] 电子笔记 + 电脑副屏 + 王者荣耀专用机。
  • [9] 电子笔记 + 电脑副屏 + 王者荣耀专用机。
  • [10] 12Pro 的机器感觉有些卡,恰逢新版本发布,正好升级。
  • [11] 接替 K30Pro,主要作为导航机器使用。
  • [12] 微信读书阅读器,体验很棒。
  • [13] 年度最值手机,作为monitor使用,极低功耗,可以愉快跑脚本,已购两台。

🔮 智能设备 & 周边

待更新

相比较前些年的智能设备,这些年的设备的体验越来越好了。历史设备见文档

编号 资源类型 明细 网络 备注
1 网络音箱 小米音箱 Pro 2G WIFI 2019年
2 蓝牙音箱 飞利浦 TAVS700 蓝牙音响 BT 2021年
3 空气净化器 小米净化器 Pro 2G WIFI 2019年
4 网络网关 小米 x3 2G WIFI 2017年 / 2021年
5 网络插座 小米 xN 2G WIFI 2017年 / 2021年
6 传感装置 小米 xN 2G WIFI/ZigBee 2017年 / 2021年
7 网络摄像头 水滴 x3 2G WIFI 2015年、2016年、2017年、2018年
8 网络摄像头 小方等 x2 2G WIFI 2018年
9 网络盒子 小米盒子4SPro WIFI6 2021年
10 网络盒子 AppleTV 6 WIFI6 2021年

简要说明

👉 完整说明 / 简要说明 👇

  • [1] 音质尚可,在尝试过两台组网进行全屋播放后,最终还是让一台推出的服务的舞台,剩余一台作为“小爱同学”使用。
  • [2] 因为AppleTV和小爱协作音响召唤“小爱同学”,只好换了一个简单的设备。
  • [3] 拯救雾霾天和猫主子入厕后的空气质量,“手动档”挺好使,其他自动档位比较“弱鸡”,正常运行基本静音,总体点赞。
  • [4] 小米网关+空调插座,对于空间利用率很高,而且支持ZigBee/WiFi,还能网络调试。
  • [5] 小米开放局域网协议之后,把控客都换成了小米,支持编程这件事太好了。
  • [6] 门磁可以避免出门老想着有没有关好门的问题,烟雾等传感器避免检查厨房,很省心,光照传感器可以制作围绕床帏的夜灯等,简单实用。
  • [7] 2015年从小米换到360就一直使用,目前使用还好,小问题是启动音有点惊悚,4台设备经常会有一台显示离线,我所在的小区,想稳定使用需要额外提供移动热点,目前考虑替换掉。
  • [8] 小方支持自定义固件,折腾通过,计划对接群晖后替换所有360摄像头。
    • [-]控客的插座APP不是很好用,尤其是不给SDK,无法定制开发,国内版本也不支持简单DIY(需要拆+编程器),故弃用。
  • [9] 默认广告有一些多,而且遇到有趣的视频想看弹幕不能看挺遗憾的,乐播 SDK 投屏质量感觉不是很好,而且有强制广告,但是视频资源还是挺多的。
  • [10] 最强投屏盒子,支持AirPlay2,无线投屏完美使用4K。

home-network-note's People

Contributors

soulteary avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

home-network-note's Issues

请问组个家用NAS服务器有什么建议

想组一个家用服务器,但是对硬件不是太了解,请问有什么好的方案么?
需求:
1、低功耗
2、跑一些日常的代码
3、智能家居监控主机
4、虚拟化技术+黑群晖
5、下载
6、资源共享
7、方便日后升级

`Failed to create a Container Manager: mountpoint for cpu not found` at run cadvisor docker image

error info

 cadvisor.go:152] Failed to create a Container Manager: mountpoint for cpu not found

Linux version

Linux version 5.15.0-52-generic (buildd@lcy02-amd64-032) (gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #58-Ubuntu SMP Thu Oct 13 08:03:55 UTC 2022

from the issue

Try replacing image by gcr.io/cadvisor/cadvisor

I change docker image , from image: google/cadvisor:v0.33.0 to image: gcr.io/cadvisor/cadvisor.
The error is to fix

docker compose config file

新出了N3710 cpu

或者J3710 淘宝已经有对应主板了,华擎的,感觉不错,可惜能DC-ATX电源

支持作者的分享总结

看到作者能够折腾并分享出来自己的经验,特别支持且钦佩!希望有机会多交流。

why config set ` user: "472" ` but not `user: "root"` in example/monitor/grafana/docker-compose.yml

I get error

grafana  | t=2022-10-19T15:19:17+0000 lvl=info msg="Connecting to DB" logger=sqlstore dbtype=sqlite3
grafana  | t=2022-10-19T15:19:17+0000 lvl=info msg="Creating SQLite database file" logger=sqlstore path=/data/grafana.db
grafana  | Failed to start grafana. error: failed to connect to database: failed to create SQLite database file "/data/grafana.db": open /data/grafana.db: permission denied
grafana  | failed to connect to database: failed to create SQLite database file "/data/grafana.db": open /data/grafana.db: permission denied
grafana exited with code 1
grafana git:(master) ✗ ll
total 12K
drwxr-xr-x 4 root   root   4.0K Oct 19 15:23 data
drwxr-xr-x 2 root   root   4.0K Oct 19 15:21 datasources
-rw-rw-r-- 1 moitor moitor  592 Oct 19 15:21 docker-compose.yml

so I change user: "472" to user: "root" to run docker image .

the docker-compose.yml

请教一下

在v2上看到帖子,自己能力不足一直搞不定特来请教一下

环境: 一个wifi路由,下接一台pc和各种移动设备
pc安装win10,在hyper-v上创建一个虚拟机软路由作二级路由
软路由提供透明代理等功能,pc提供nas和挂游戏之类的功能
pc和其他移动设备都通过这个虚拟机上网,将虚拟机作为网关
pc上有两个网卡都设置为桥接,再创建了一个host-guest的虚拟网卡。桥接A连接到wifi路由,桥接B连到ps4
虚拟机现在有3个网卡: 桥接A(eth0)、桥接B(eth1)、host-guest的虚拟网卡C(eth2)

虚拟机安装好centos后配置完毕
eth0:自动获取
eth1:10.0.0.1/24
eth2:10.1.1.1/24
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
net.ipv4.ip_forward=1

我遇到的问题:
虚拟机本身正常上网
ps4设置10.0.0.2/24 gw10.0.0.1,正常上网
pc虚拟网卡设置10.1.1.2/24 gw10.1.1.1,能ping通虚拟机但是却不能通过虚拟机上网

其他通过wifi的移动设备如果要通过这个虚拟机上网的话虚拟机和wifi路由应该如何配置

你的网络拓扑疑问

同样是码农,我是PHPer,电脑维修经验7年,幸会幸会。
先说一下我的情况:我一直在外面工作,不是在老家,也就没有像你那么折腾,所有没有买很多硬件。毕竟家里穷,没这个胆子把工资随便浪掉。不过平时一直有研究各种IT知识,知识库还是很广泛的。MacBook、大疆、网络、Linux、树莓派、BT服务器、虚拟化等等,有机会可以加我好友 微信:maidou__xhu

我看到你有三个路由器,主路由是什么牌子的?看到你有代码机器、资源机器,为什么不用有线连接,是因为家里装修办不到么,还是你搞不定双绞线,手动大笑😁

scripts/ip-data-split.sh 好像有些问题

首先很感谢作者写出这么一篇文章手把手教我们怎么去创建一个免费的IP数据库,我看了也有很多收获,解决了一个长久困扰我的问题。
但是在尝试跟随作者的方法去对IP分类的时候,我发现在sh split.sh之后,DE和其他一些地区的CIDR出现了问题:
196.10.61.0/18.8707出现了类似于这样的错误的CIDR。

复现步骤:

sh download.sh
sh verify.sh
mkdir data
mv delegated-* data
cat data/delegated-*-latest | sort | uniq > data/all.txt
cat data/all.txt | awk '$1 ~ /^[^;#]/' > data/pure.txt
cat data/pure.txt | awk -F '|' '{print $2}' | sort | uniq | awk '{ if (length($0) == 2) print }' > data/region.txt
sh split.sh

我分别在Linux和macOS上都测试了一下,都出现了一样的问题。但实在没有找到问题出在哪里,于是来issue区向您求助。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.