编程资源收集

527 阅读21分钟

社区&资料:

项目资源

  • 开源项目

    • [airflow] airflow是airbnb家的基于DAG(有向无环图)的任务管理系统, 最简单的理解就是一个高级版的crontab。它解决了crontab无法解决的任务依赖问题。
    • [Hercules] 功能:线下机器学习、离线或在线HQL、用户登陆、指令级操作与脚本级操作
    • [Jupyter Notebook] Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。简书
    • [PrestoDB] Presto不是数据库,定位是查询引擎. Presto语法查询
    • [Flink] Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。
    • [flowable] Flowable是一个使用Java编写的轻量级业务流程引擎。Flowable流程引擎可用于部署BPMN 2.0流程定义(用于定义流程的行业XML标准), 创建这些流程定义的流程实例,进行查询,访问运行中或历史的流程实例与相关数据,等等。 中文文档 springboot集成项目
    • jodd 一组以极简为原则的 Java 服务框架和实用工具的项目。这不是一个介绍 Java 项目的集合,而是把经常会用到的功能,用尽可能少的代码实现并封装成库,供开发人员选择使用。当你要用 Java 快速实现一些功能的时候,从而不需要引入繁重的库就可以快速实现功能。一个功能一个库,灵活使用、极简实用,便于学习和理解
    • hutool
      • Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。
      • Hutool中的工具方法来自于每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;
      • Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug。
  • 笔记工具

  • 网络代理

    • [whistle] - 基于Node实现的跨平台web调试代理工具 [docs]
    • [Wireshark] - 网络数据包分析软件,网络协议栈的各个层的数据都可以很方便地查看。
    • [Termshark] - 「终端版」的 Wireshark
    • [Charles] - 一款老牌 HTTP/HTTPS 抓包调试工具
    • [Fiddler] - 又一款免费的 Web 调试工具
    • [mitmproxy] - 一款开源免费的交互式的 HTTPS 代理 [docs] [mitmdump] [mitmweb]
    • youzan/zan-proxy 该项目集成了 HTTP 请求转发、模拟响应数据、自定义 DNS 解析等功能。使得可以本地代码调试线上页面,环境再也不是问题。对于处于开发环境“恶劣”的开发者来说是种福音和解脱。
  • 代码补丁

    [Linux patch命令] [patch-package]

  • 前端工程

    • 构建工具

      [Webpack] [rollup] [Fls3] [Browsersync] [Grunt] [Gulp] [Npm] [Bower]

      [flow]

    • npm库-终端

      • [Xterm.js] Xterm.js是用TypeScript编写的前端组件,它允许应用程序在浏览器中为用户带来功能齐全的终端。它被应用于VS Code, Hyper, Theia等主流项目。[docs]
      • [node-pty] node-pty 提供了许多不同的终端仿真器[wiki]
      • [npm-run-all] 用于并行或顺序运行多个NPM脚本的CLI工具.
      • [cross-env] 运行跨平台设置和使用环境变量的脚本。
      • [terminal-in-react] 一个渲染终端的小部件
    • npm库-网络

      • [superagent] SuperAgent是一个轻量级、灵活的、易读的、低学习曲线的客户端请求代理模块,使用在NodeJS环境中。
      • [letsencrypt] Certbot是EFF的工具,用于从服务器上加密和(可选)自动启用HTTPS获得证书。它还可以充当使用ACME协议的任何其他CA的客户端。
      • [httpx] http(s) module with power.
      • [node-fetch] 将 fetch 引入了 node 环境,配合了 node 强大的 http 模块。做到了在不同的 JS 环境中使用一致的API。fetch API 是代替 XMLHttpRequest 的一种全新的解决方案,其简化了 XHR 的复杂步骤,采用了 Promise。
      • [postwoman] 一款基于 Node.js 的免费开源、便捷美观的 API 调试工具。它是调试接口的利器,能够尽快的发现问题提高开发效率。
      • [Playwright] Playwright 是微软开源的,跨浏览器的 Web 自动化测试的 Node 库,可通过单个 API 创建浏览器实例,打开页面,然后对其进行操作。支持 Chromium,WebKit 和 Firefox 等 3 个浏览器。根据 repo 作者所述,相比 Puppeteer,Playwright 支持更多的浏览器,更易于测试,更加原生。
      • [filepond] 一个 JavaScript 文件上传库。可以上传拖入的任何内容,具有体积小、上传快、方便的文件管理等特点,从而让用户享受‘丝滑’般的文件上传体验
      • [anyupload] 该项目是一款上传插件,使用方便、简单。支持多文件上传、上传速率动态控制、真实进度监控 kb/s、分块生成 MD5、分块上传、MD5 校验、暂停、取消等功能。
    • npm库-音视频

      • [Clappr] clappr是一个开源的Web网页播放器,支持大部分现代浏览器,拥有丰富的扩展插件,如进度条缩略图、标记、播放速率、水印广告、360度视角等。
      • [xgplayer] 由字节跳动西瓜视频开源的带解析器、能节省流量的 HTML5 视频播放器。可以作为 H5 组件、Vue、React 组件单独使用。它根据组件化的原则设计了一个独立的、可分离的 UI 组件。更重要的是,它不仅在 UI 层具有灵活性,而且在功能上也很大胆:它摆脱了视频加载、缓冲和格式支持。在播放器端加载视频、解析视频、转换格式,让不支持分段播放的 MP4 动态支持,这样就无须转换源视频的格式,服务器端也无其他开销。
      • [griffith] 让流式播放变得简单。无论你视频格式是 mp4 还是 hls,Griffith 都能使用媒体源拓展(MSE)来实现分段加载等功能,提供在线视频播放。
      • [DPlayer] 可爱的弹幕视频播放器
      • [APlayer] 漂亮的 HTML5 音乐播放器
    • npm库-图像

      • [QRCode.js] QRCode.js 是一个用于生成二维码的 JavaScript 库。主要是通过获取 DOM 的标签,再通过 HTML5 Canvas 绘制而成,不依赖任何库。
      • image-compress-without-backend 一个纯前端在线图片压缩小工具。即无需上传照片到服务器,一切都在浏览器端完成,快速而高效。非常适用于图片压缩后质量要求不是很高的场景,比如:移动端图片展示等
      • picojs 200 行实现的面部识别库
      • react-image-process 图片处理的 React 组件。支持压缩、裁剪、加水印、滤镜、获取主色调等功能
    • npm库-数据库

      • [ueberDB] 支持连接操作的数据库: Couch、Crate、Dirty、Elasticsearch、Level、Mongo、MySQL (<= 5.7)、Postgres (single connection and with connection pool)、CockroachDB (use the postgres_db module)、Redis、RethinkDB、SQLite。ueberdb2
      • [Sqlite3] 是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。
      • [nedb] NeDB 是使用 Nodejs 实现的一个 NoSQL 嵌入式数据库操作模块,可以充当内存数据库,也可以用来实现本地存储,甚至可以在浏览器中使用。查询方式比较灵活,支持使用正则、比较运算符、逻辑运算符、索引以及 JSON 深度查询等。 教程
      • [lowdb] 一个基于Lodash的轻量级的本地JSON数据库
      • [node-dirty] 一个只包含磁盘日志的小型&快速 key-value 适用于 <1百万记录的应用
    • npm库-脚手架相关

      • [inquirer] 一个用户与命令行交互的工具
      • [licia] 比较实用的 JS 工具库,内置了很多可能在工程中经常会用到的工具函数。该库提供 npm 安装,可以很好的融合到现代前端工程的开发中,从而提高开发效率
      • 30-seconds/30-seconds-of-code 精选可以在 30秒 或更短的时间内理解的实用 JavaScript 代码片段集合 web
      • SVG-Skeleton 通过 SVG 元素去描述去骨骼图的占位元素。支持 JSX 让编写 SVG 无差别化、复用 SVG 片段、类组件化模式。让交互变得更加人性化,适合当下技术流行趋势,2KB 的大小根本不必担心加载问题。
    • npm库-文档操作

      • handsontable 强大的开源 HTML5 表格处理工具,适用于中后台的很多业务场景。API 方便、扩展性好、可操作性强,与Execl 等表格处理程序兼容好。并支持非常丰富的操作,如数据绑定、验证、排序及强大的上下文菜单。
      • epubjs ePub电子书解析和渲染
    • 一键分享

      [Baidu] [Bshare] [Share] [Jiathis]

    • 免费CDN资源

      [Bootcdn] [Staticfile] [Jsdelivr] [Cdnjs]

    • 字体图标

      [Fontawesome] [Iconfont] [Icomoon] [Glyphicons] [Fontello]

    • IP查询

      [ipify] [ip-api] [whatismyip] [搜狐IP地址查询接口] [太平洋网络IP地址查询Web接口] [此网站获取到的数据比较详细,推荐。] [老牌的IP查询网站] [比较知名的IP查询网站] [来自台湾的IP查询网站] [万网获取本地公网IP地址] [腾讯IP分享计划(估计要挂了,不推荐)] [360获取本机IP、地区及运营商]

  • 好玩的开源项目

    • etherpad Etherpad是一个高度定制的开源在线编辑器,提供实时协作编辑。
    • Joplin Joplin 是一个开源笔记记录和待办应用。你可以将笔记组织到笔记本中并标记它们。Joplin 还提供网络剪贴板来保存来自互联网的文章。
    • 蚁阅 免费开源的 RSS 订阅项目,服务端是 Django 写的。你可以自己部署也可以直接使用在线版,远离嘈杂的推荐、广告,专注你订阅的内容
    • incubator-dolphinscheduler 一个分布式易扩展的可视化 DAG 工作流任务调度系统。致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用。主要功能又以DAG图的方式将Task按照任务的依赖关系关联起来,实时可视化监控任务的运行状态;支持丰富的任务类型和支持工作流定时调度、依赖调度、手动调度等。
    • Hippy Hippy 是一个新生的跨端开发框架,目标是使开发者可以只写一套代码就直接运行于三个平台(iOS、Android 和 Web)。Hippy 的设计是面向传统 Web 开发者的,特别是之前有过 React Native 和 Vue 的开发者用起来会更为顺手,Hippy 致力于让前端开发跨端 App 更加容易。
    • faceai 一款优秀入门级 AI 项目以及教程,内容涵盖:人脸、视频、文字的检测和识别。他不仅包含最基本的人脸检测、识别(图片、视频)、轮廓标识、头像合成(给人戴帽子),还有表情识别(生气、厌恶、恐惧等)、视频对象提取、图片修复(可用于水印去除)、图片自动上色等等。推荐这个开源项目不是因为它的内容强大,而是它的教程写的实在太好了,真 · 入门级。手把手教你如何使用这个项目,做出上述功能来。在每篇功能文章的教程里,不仅仅写了每个功能的技术实现方案,还有具体重点关键代码的注释和解释以及具体实现,让你非常轻松的能够看懂、学习和使用。对于想要入门或者了解机器学习的初学者不能再友好了。
    • showdoc 一个非常适合IT团队的在线API文档、技术文档工具 www.showdoc.cc
    • OnlineToolsBook 在线工具秘籍,为在线工具写一本优质说明书,让在线工具造福人类 www.v2fy.com/p/readme-on…
    • myDrive MyDrive 是一个用 Node.js、React 和 MongoDB 搭建的类 Google Drive 项目,此外,MyDrive 还提供了一些内置服务器工具,比如备份数据库、还原数据库等操作,用 MyDrive 再也不怕删除东西之后说找不回来了。
    • EL-ADMIN 项目基于 Spring Boot 2.1.0 、 Jpa、 Spring Security、redis、Vue的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 RBAC,支持数据字典与数据权限管理,支持一键生成前后端代码,支持动态路由
    • 变身黑客:TheFatRat TheFatRat 是一种利用恶意软件编译具有著名负载的恶意软件,然后可以在 Linux,Windows,Mac 和Android 上执行该恶意软件。TheFatRat 提供了一种轻松创建后门和有效负载的方法,可以绕过大多数防病毒软件。
    • 安全测试伴侣:SecLists SecLists 是安全测试人员的工具箱,它收录了渗透测试资源,包括用户名、密码字典、URL、敏感数据、模糊测试 payloads、Webshell、XSS 等方面内容。
    • 安全第一:Dangerzone Dangerzone 是一个可将潜在危险的 PDF、办公文档、图片等转换为安全 PDF 发的工具,如果你不知道某个文件是否安全,可以交给 Dangerzone 它会在沙箱中将它变成安全的 PDF 文件。目前它支持的格式有 .pdf .docx .doc .xls .xlsx .pptx .ppt .odt .odp .odg .jpg .jpeg .gif .png .tif .tiff
    • pika 一个企业级开源的可持久化的大容量(百G)redis 存储服务。兼容 redis 的绝大部分接口,解决 redis 由于存储数据量巨大而导致内存不够用的容量瓶颈。并且可以像 redis 一样,通过 slaveof 命令进行主从备份,支持全同步和部分同步
    • Holer Holer是一个将局域网中的应用映射到公网访问的端口映射软件,支持转发基于TCP协议的报文。
    • 阿里 formily 一款面向企业级复杂场景的高性能表单解决方案。特性:
      • 🚀 高性能,字段分布式渲染,大大减轻 React 渲染压力
      • 💡 支持 Ant Design/Fusion Next 组件体系
      • 🎨 JSX 标签化写法/JSON Schema 数据驱动方案无缝迁移过渡
      • 🏅 副作用逻辑独立管理,涵盖各种复杂联动校验逻辑
      • 🌯 支持各种表单复杂布局方案
    • miaosha ⭐⭐⭐⭐秒杀系统设计与实现.互联网工程师进阶与分析🙋🐓
    • DBeaver DBeaver 是一个通用的数据库管理工具和 SQL 客户端,支持 MySQL、PostgreSQL、Oracle、DB2、MSSQL、Sybase、Mimer、HSQLDB、Derby 以及其他兼容 JDBC 的数据库。DBeaver 提供一个图形界面用来查看数据库结构、执行 SQL 查询和脚本,浏览和导出数据,处理 BLOB/CLOB 数据,修改数据库结构等等。
    • Waifu2x-Extension-GUI Waifu2x-Extension-GUI 是一款图片(包括 GIF) 和视频超分辨率放大工具,也支持降噪,该项目基于 Waifu2x-ncnn-vulkan 和 Waifu2x-converter 算法。
    • DoraemonKit 一款功能齐全的 iOS 、Android、微信小程序客户端研发助手。它功能强大、接入方便、便于扩展,能够让每一个 App 快速接入一些常用的辅助开发工具、测试效率工具、视觉辅助工具,而且能够完美在 Doraemon 面板中接入一些定制的辅助工具
    • alibaba/kiwi 🐤Kiwi-国际化全流程解决方案
    • Tencent/vConsole 腾讯开源的移动 H5 的控制台开发调试工具,支持查看 console 日志、网络请求、自定义插件等。
    • nginxconfig 在线生成 Nginx 配置文件网站 nginxconfig.io
    • XiaoMi/soar SQL 自动优化和改写的工具。可以自动优化 MySQL 语法族,并且给出为什么要这样优化的理由。
    • falcon 一款免费、开源的 SQL 可视化编辑器,具有查询数据、可视化等功能。 支持 Windows、Mac、Linux 操作系统,能够链接 MySQL、PostgreSQL、SQLite 等多种数据库,并把查询结果通过不同形式图表展示。
    • gods-pen 一个在线生成 H5 页面的平台。用户无需掌握复杂的编程技术,通过简单拖拽、少量配置即可快速制作精美的页面,可用于营销场景下的页面制作。同时,也为开发者提供了完备的编程接入能力,通过脚本和组件的形式获得强大的组件行为和交互控制能力
    • fiora 一个功能丰富、支持多端的在线聊天室。它界面小清新,支持基本的聊天功能的同时还有好玩的消息朗读功能。项目上基于 TypeScript + React 16.9 代码逻辑清晰、注释较为完善,适合用来学习 node.js、 TypeScript、React 等技术
    • PicGo 基于 electron-vue 实现的桌面图床工具。该工具可以帮助你高效、非常方便地上传图片到网络图床,包括了微博图床、七牛图床、腾讯云 COS、又拍云、GitHub、SM.MS、阿里云OSS、Imgur 等。只要使用快捷键或拖动就可以上传,而且上传成功的图片链接会自动复制到你的剪贴板里,支持 macOS、Windows、Linux 三大系统
    • WebTorrent 基于 JS 的流媒体种子客户端。不需要等待种子中的内容下载完毕,就可以马上播放种子中的内容,且有 Windows、Mac 和 Linux 操作系统的桌面版客户端。还在为等待下载而苦恼吗?有了它即可复制种子链接观看对应的视频内容
    • ieaseMusic 基于网易云音乐 API 开发的第三方客户端,支持 Linux、Mac OS 系统。成熟的 JS 桌面应用产品,颜值很高,音乐资源丰富
    • GoogleChromeLabs/squoosh 谷歌开源的图片压缩工具。在保证图片质量的情况下快速压缩图片,支持多种图片格式。6.63M 的图片压缩后为 2.92M,使用起来简单方便
    • makegirlsmoe_web 动漫角色图片生成工具。支持:选择发色、发型、眼睛、皮肤、微笑、风格等等特征生成二次元图片。自定义生成可爱的二次元头像,二次元界福音。
    • simpread 让你瞬间进入沉浸式阅读的扩展,还原阅读的本质,提升你的阅读体验。使用它可以为你剔除页面上无关的干扰信息,让用户专注于阅读主要的内容。通过这个项目,还可以学习如何开发 Chrome 扩展
    • tui.calendar 功能全面的 JavaScript 日程安排日历。虽然项目依赖了 jQuery,但是对于真实项目来说这样做是可以的。此项目适用于多种场景,炫酷的交互和 UI
    • Requarks/wiki NodeJS+Git+Markdown 实现轻松搭建 wiki。对于团队内部的知识分享是一个不错的选择。
    • sweetalert 纯 JS 写成的 alert 组件,很多公司都在使用的项目。源代码使用了 ES6 进行了重构,使得项目结构更加清晰。可以通过学习其项目结构可以更好的了解 JS 组件的文件结构,分析其源码可以学习如何使用原生 JS 操作 DOM 的高级技巧
    • gifify 可以选择视频文件的某一时间间隔做成 gif 动图
    • ant-design/ant-motion 阿里开源的项目,一套 React 框架动效解决方案,可以帮助开发者,更容易的在项目中使用动效。同时可以方便快捷地制作一个公司的介绍页,在线演示
    • nodeppt 这可能是迄今为止最好的网页版演示库,在线演示
    • clipboard.js 实现了点击文本内容的 JavaScript 插件,优点:最新、极小、无任依赖、使用简单方便。在线文档
    • Auto.js 不需要 ROOT 权限的类似按键精灵的自动操作软件,可以实现自动点击、滑动、输入文字、打开应用等。Auto.js 的大部分用户用它来点赞、签到、刷游戏
    • Tencent/MSEC 腾讯开源的毫秒服务引擎(Mass Service Engine in Cluster)。它是一个开源框架,适用于在廉价机器组成的集群上开发和运营分布式后台服务。毫秒服务引擎集 RPC、名字发现服务、负载均衡、业务监控、灰度发布、容量管理、日志管理、key-value 存储于一体,官网介绍
    • vuepress-theme-vdoing 基于VuePress的知识管理&博客主题,一个面相程序员的知识管理工具,让你的知识海洋像一本本书一样清晰易读。这次升级使整体更加的简洁高效,并编写了完整的使用文档。在线演示
    • rrweb rrweb 是 'record and replay the web' 的简写,旨在利用现代浏览器所提供的强大 API 录制并回放任意 web 界面中的用户操作。目前 rrweb 已经解决了许多录制与回放中的难点问题,但在 1.0 版本 release 之前数据结构仍有可能发生变化,请谨慎用于生产环境中。
  • 轮子参考

    • DoraCMS 基于 Nodejs + eggjs + Mongodb 编写的内容管理系统。项目结构清晰、易于拓展,适合前端开发工程师做二次开发
    • vue2-elm node-elm 基于 vue2 + vuex 构建一个大型单页面应用,此项目大大小小共 45 个页面,涉及注册、登录、商品展示、购物车、下单等等,是一个完整的流程
    • vue-admin-beautiful vue-admin-beautiful是一款绝佳的前端开发框架(同时支持电脑,手机,平板),长期更新维护
    • sparrowjs 🎉场景化低代码(LowCode)搭建工作台

持续更新中...