A collection of awesome web development resources.
Show some ❤️ and star the repo to support the project.
- Awesome Web Development
- Table of Contents
- Guidelines
- Some Reading List
- Framework
- Prototypes sites
- Web Workers
- Utilities
- Designer
- Machine Learning & AI
- Chart & Data Visualization
- File
- Loader
- Icon
- Notification
- Alert
- Authentication
- Animations
- Images
- Font
- Datetime & Step
- UI Kits
- Input
- Modal
- Popper
- Drag and Drop
- Menus
- Editor
- Highlight
- Clipboard
- Respond page
- Touch
- 3D
- Scroll & Parallax
- Search
- Slider|Swiper
- Color
- Conversational
- Tweening Engine
- QRCode
- Emoji
- New Feature Introduction
- Typography Stylesheet
- Compatibility
- Sheet
- Fingerprinting
- Math
- Tools
- Mock
- Test
- CDN
- HTTP Client/Request
- Compile & Pack
- Static Sites
- Audio & Video
- Push Notifications
- Universal
- Store
- Polyfill
- Gestures
- Screenshots
- AR & VR
- Regex
- Figerprint
- Validation
- Boilerplate
- Dropload
- Game && Engine
- Functional
- Record and replay
- Router
- Math
- WebAssembly
- Admin
- No/Low Code
- Node
- Open Source Apps
- Landing page templates
- Commerce Apps
- Contribution
- License
-
mdo code guide Standards for developing flexible, durable, and sustainable HTML and CSS.
-
Auto Lab @JingDong: Front-End Coding Guidelines, HTML, CSS, JavaScript, Images, Names
-
browser-2020 - This repo contains a non-exhaustive list of less-known features implemented in browsers today.
This list isn't intended for a technical audience; instead it wants to be a "I didn't know we could do that in a browser!" list.
In many cases, listed features aren't yet part of the standard, and may only be available on certain browsers or configurations.
- OWASP Cheat Sheet Series: the official repository for the Open Web Application Security Project® (OWASP) Cheat Sheet Series project. The project focuses on providing good security practices for builders in order to secure their applications.
In order to read the cheat sheets and reference them, use the project official website. The project details can be viewed on the OWASP main website without the cheat sheets.
- The JavaScript Way: A modern introduction to an essential language.
- What the f*ck JavaScript? A list of funny and tricky JavaScript examples. JavaScript is a great language. It has a simple syntax, large ecosystem and, what is most important, a great community. At the same time, we all know that JavaScript is quite a funny language with tricky parts. Some of them can quickly turn our everyday job into hell, and some of them can make us laugh out loud.
- httpbin: A tool to feeling RESTFul API.
-
sveltejs: a new way to build web applications. It's a compiler that takes your declarative components and converts them into efficient JavaScript that surgically updates the DOM.
- sveltejs/kit - The Fastest Way to Build Svelte Apps
- 💨 Blazing-Fast Production Sites
- 🛠️ SSR, SPA, SSG, and In-Between
- ⚡️ Instantly Visible Code Changes
- 🔩 Existing Universe of Plugins
- 🔑 Fully Typed APIs
-
blitz - The Fullstack React Framework: "Zero-API" Data Layer — Built on Next.js — Inspired by Ruby on Rails
“Zero-API” data layer lets you import server code directly into your React components instead of having to manually add API endpoints and do client-side fetching and caching.
New Blitz apps come with all the boring stuff already set up for you! Like ESLint, Prettier, Jest, user sign up, log in, and password reset.
Provides helpful defaults and conventions for things like routing, file structure, and authentication while also being extremely flexible.
-
mitt - Tiny 200b functional event emitter / pubsub.
-
Microscopic: weighs less than 200 bytes gzipped
-
Useful: a wildcard "*" event type listens to all events
-
Familiar: same names & ideas as Node's EventEmitter
-
Functional: methods don't rely on this
-
Great Name: somehow mitt wasn't taken
Mitt was made for the browser, but works in any JavaScript runtime. It has no dependencies and supports IE9+.
-
- ReactiveX - An API for asynchronous programmingwith observable streams
- Cycle.js - A functional and reactive JavaScript framework for predictable code
-
Partytown is a lazy-loaded 6kb library to help relocate resource intensive scripts into a web worker, and off of the main thread. Its goal is to help speed up sites by dedicating the main thread to your code, and offloading third-party scripts to a web worker.
-
Miniflare is a simulator for developing and testing Cloudflare Workers.
- 🎉 Fun: develop workers easily with detailed logging, file watching and pretty error pages supporting source maps.
- 🔋 Full-featured: supports most Workers features, including KV, Durable Objects, WebSockets, modules and more.
- ⚡ Fully-local: test and develop Workers without an internet connection. Reload code on change quickly.
It's an alternative to wrangler dev, written in TypeScript, that runs your workers in a sandbox implementing Workers' runtime APIs.
See https://miniflare.dev for more detailed documentation.
-
tailwindcss: Rapidly build modern websites without ever leaving your HTML. A utility-first CSS framework packed with classes like flex, pt-4, text-center and rotate-90 that can be composed to build any design, directly in your markup.
- daisyui - Tailwind CSS Components: Adds component classes like btn, card and more to Tailwind CSS
-
Normalize.css - A modern, HTML5-ready alternative to CSS resets. Normalize.css makes browsers render all elements more consistently and in line with modern standards. It precisely targets only the styles that need normalizing.
-
sanitize.css is a CSS library that provides consistent, cross-browser default styling of HTML elements alongside useful defaults. It is developed alongside normalize.css, which means every normalization is included, and every normalization and opinion are clearly marked and documented.
-
Windi CSS: Next generation utility-first CSS framework. If you are already familiar with Tailwind CSS, think about Windi CSS as an on-demanded alternative to Tailwind, which provides faster load times, fully compatible with Tailwind v2.0 and with a bunch of additional cool features.
-
💗❤️clay.css - Micro CSS util class for applying inflated fluffy 3D claymorphism styles to elements. Fully customizable and extensible with CSS variables. SASS mixin is also included for even more styling options.
-
neumorphism.io: CSS code generator for a new popular design trend called Neumorphism/Soft UI. I hope this will help designers and developers experiment with it and possibly adapt it. Built with React.js
-
ui-neumorphism - 📕 React component library designed on the "new skeuomorphism" or "neumorphism" UI/UX trend.
-
tailwindcss-neumorphism - Generate soft UI CSS code using tailwindcss
CSS-in-JS:
- emotion - The Next Generation of CSS-in-JS: Emotion is a performant and flexible CSS-in-JS library. Building on many other CSS-in-JS libraries, it allows you to style apps quickly with string or object styles. It has predictable composition to avoid specificity issues with CSS. With source maps and labels, Emotion has a great developer experience and great performance with heavy caching in production.
- vueuse - Collection of essential Vue Composition Utilities.
- createjs: A suite of modular libraries and tools which work together or independently to enable rich interactive content on open web technologies via HTML5.
- SoundJS: A Javascript library for working with Audio. It provides a consistent API for loading and playing audio on different browsers and devices. Currently supports WebAudio, HTML5 Audio, Cordova / PhoneGap, and a Flash fallback.
- EaselJS: The Easel Javascript library provides a full, hierarchical display list, a core interaction model, and helper classes to make working with the HTML5 Canvas element much easier.
- PreloadJS: PreloadJS makes preloading assets & getting aggregate progress events easier in JavaScript. It uses XHR2 when available, and falls back to tag-based loading when not.
- TweenJS: A simple but powerful tweening / animation library for Javascript. Part of the CreateJS suite of libraries.
- pico.js & lploc.js
- pico.js: A face-detection library in 200 lines of JavaScript. approximately 200 lines of pure JavaScript;real-time detection demo available at https://nenadmarkus.com/p/picojs-intro/demo/
- lploc.js: A tiny JavaScript library for real-time localization of eye pupils.
- radash - unctional utility library - modern, simple, typed, powerful
- web-component-designer - A Design Framework Webcomponent, to Design HTML using Webcomponents
-
Neuro.js is machine learning framework for building AI assistants and chat-bots.
-
cube.js: Cube.js is an open-source analytical API platform. It is primarily used to build internal business intelligence tools or add customer-facing analytics to existing applications.
Cube.js was designed to work with Serverless Query Engines like AWS Athena and Google BigQuery. Multi-stage querying approach makes it suitable for handling trillions of data points. Most modern RDBMS work with Cube.js as well and can be tuned for adequate performance.
Unlike others, it is not a monolith application, but a set of modules, which does one thing well. Cube.js provides modules to run transformations and modeling in data warehouse, querying and caching, managing API gateway and building UI on top of that.
- antv: AntV 是蚂蚁金服全新一代数据可视化解决方案,致力于提供一套简单 方便、专业可靠、无限可能的数据可视化最佳实践。G2 G6 F2 L7...
- Highcharts - Interactive JavaScript charts for your web pages
- 👍mermaid - Mermaid lets you create diagrams and visualizations using text and code. It is a Javascript based diagramming and charting tool that renders Markdown-inspired text definitions to create and modify diagrams dynamically.
- echarts - An easy of adding intuitive, interactive, and highly customizable charts
- chartist-js - Simple responsive charts
- D3.js - A JavaScript library for manipulating documents based on data using HTML, SVG and CSS
- d3-flame-graph: A D3.js plugin that produces flame graphs from hierarchical data.
- NVD3 - Re-usable charts for d3.js
- c3.js - D3-based reusable chart library
- plotly.js - A high-level, declarative charting library whitch is build on top of d3.js and stack.gl
- vega - A visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. Describe data visualizations in a JSON format, and generate interactive views using either HTML5 Canvas or SVG.
- Leaflet - An open-source JavaScript libraryfor mobile-friendly interactive maps
- deck.gl - A WebGL-powered framework for visual exploratory data analysis of large datasets.
- goiojs: A Declarative 3D Globe Data Visualization Library built with Three.js
- flowchartjs: Draws simple SVG flow chart diagrams from textual representation of the diagram
- 😋 rough: Create graphics with a hand-drawn, sketchy, appearance
- revogrid: Powerful data grid component built with StencilJS. Support Millions of cells and thousands columns easy and efficiently for fast data rendering. Easy to use.
- mapbox-gl-js: Mapbox GL JS is a JavaScript library for interactive, customizable vector maps on the web. It takes map styles that conform to the Mapbox Style Specification, applies them to vector tiles that conform to the Mapbox Vector Tile Specification, and renders them using WebGL.Mapbox GL JS is part of the cross-platform Mapbox GL ecosystem, which also includes compatible native SDKs for applications on Android, iOS, macOS, Qt, and React Native. Mapbox provides building blocks to add location features like maps, search, and navigation into any experience you create. To get started with GL JS or any of our other building blocks, sign up for a Mapbox account.
- textures.js: Textures.js is a JavaScript library for creating SVG patterns. Made on top of d3.js, it is designed for data visualization.
- react-dropzone - Simple React hook to create a HTML5-compliant drag'n'drop zone for files.
- dropzonejs - an open source library that provides drag’n’drop file uploads with image previews
- jQuery File Upload Plugin
- Web Uploader - 一个以 HTML5 为主 FLASH 为辅, 各种老旧浏览器兼容性好(IE6+ Andorid 4+ IOS 6+)
- css loader - Simple loaders for your web applications using only one div and pure CSS
- Single Element CSS Spinners - Each spinner consists of a single
div
with a class ofloader
and content text of "Loading...". The text is for screen readers and can be used as a fallback state for older browsers - 👍👍 nprogress - For slim progress bars like on YouTube, Medium
- https://loading.io/
- SpinKit: A collection of loading indicators animated with CSS
- icones.js
- iconify: Unified icons framework. One library, over 100,000 vector icons. Modern replacement for icon fonts. Fast, easy to use.
- Font Awesome - The iconic font and CSS toolkit
- 👍cssicon - icon set made with pure css code, no dependencies, "grab and go" icons
- ionicons - The premium icon font for Ionic Framework
- featcher - a collection of simply beautiful open source icons. Each icon is designed on a 24x24 grid with an emphasis on simplicity, consistency and readability
- Titanic - A collection of animated icons + javascript library.
-
👍💗 motion - Tiny size. Huge performance.: A new animation library, built on the Web Animations API for the smallest filesize and the fastest performance.
-
animate.css - A cross-browser library of CSS animations. As easy to use as an easy thing
-
👍👍👍AniJS - A Library to Raise your Web Design without Coding
-
Hover.css - A collection of CSS3 powered hover effects to be applied to links, buttons, logos, SVG, featured images and so on. Easily apply to your own elements, modify or just use for inspiration. Available in CSS, Sass, and LESS.
-
Odometer - a Javascript and CSS library for smoothly transitioning numbers
-
dynamics.js: Dynamics.js is a JavaScript library to create physics-based animations
-
css-loaders - A collection of loading spinners animated with CSS
-
elevator.js: Finally, a "back to top" button that behaves like a real elevator, by adding elevator music to quietly soothe the awkwardness that can ensue when being smoothly scrolled to the top of the screen.
-
theatre - heatre.js is an animation library for high-fidelity motion graphics. It is designed to help you express detailed animation, enabling you to create intricate movement, and convey nuance.
Theatre can be used both programmatically and visually.You can use Theatre.js to:
-
👍snabbt.js - Fast animations with Javascript and CSS transforms
-
SpriteJS is a cross-platform lightweight 2D render object model. Draw graphics on a canvas through simple object-oriented dom-like API. Vue & React/Preact supported.
- watermarkjs: Watermarking for the browser
- fancyBox - A tool that offers a nice and elegant way to add zooming functionality for images, html content and multi-media on your webpages
- mo · js is a javascript motion graphics library that is a fast, retina ready, modular and open source. In comparison to other libraries, it have a different syntax and code animation structure approach. The declarative API provides you a complete control over the animation, making it customizable with ease. The library provides built-in components to start animating from scratch like html, shape, swirl, burst and stagger, but also bring you tools to help craft your animation in a most natural way. Using mojs on your site will enhance the user experience, enrich your content visually and create delightful animations precisely.
- Anime.js (/ˈæn.ə.meɪ/) is a lightweight JavaScript animation library with a simple, yet powerful API.It works with CSS properties, SVG, DOM attributes and JavaScript Objects.
- BigScreen - A simple library for using the JavaScript Fullscreen API
- :thumber imagemagick - Use ImageMagick to create, edit, compose, or convert bitmap images
- 👏 graphicsmagick - is the swiss army knife of image processing. Comprised of 267K physical lines of source code in the base package (or 1,225K including 3rd party libraries) it provides a robust and efficient collection of tools and libraries which support reading, writing, and manipulating an image in over 88 major formats including important formats like DPX, GIF, JPEG, JPEG-2000, PNG, PDF, PNM, and TIFF.
- PhotoSwipe - JavaScript image gallery for mobile and desktop
- webp2jpg-online: Online image format converter, jpeg, jpg, PNG, Gif, webp, svg, ICO, bmp files into Jpeg, PNG, webp, ICO, gif files. The conversion can be done locally without uploading the file Online picture format converter, can convert jpeg, jpg, png, gif, webp, svg, ico, bmp files into jpeg, png, webp, ico, gif files. No need to upload files, conversion can be done locally
- plaiceholder: "Plaiceholder" is a collection of Node.js helpers for creating low quality image placeholders, with several approaches to choose from: 1. CSS (recommended); 2. SVG; 3. Base64; 4. Blurehash; 5. Blurehash to CSS(Experimental 🧪)
- image-compressor - A simple JavaScript image compressor. Uses the Browser's native canvas.toBlobhttps://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/toBlob API to do the compression work. General use this to precompress a client image file before upload it.
- google-guetzli: Guetzli is a JPEG encoder that aims for excellent compression density at high visual quality. Guetzli-generated images are typically 20-30% smaller than images of equivalent quality generated by libjpeg. Guetzli generates only sequential (nonprogressive) JPEGs due to faster decompression speeds they offer.
- jquery_lazyload: Vanilla JavaScript plugin for lazyloading images
- verlok/lazyload: LazyLoad is a fast, lightweight and flexible script that speeds up your web application by loading images as they enter the viewport. It's written in plain "vanilla" JavaScript, uses IntersectionObserver, and supports responsive images. It's also SEO-friendly and it has some other notable features.
-
commitlint - Lint commit messages:
🚓 Be a good commitizen
📦 Share configuration via npm
🤖 Tap into conventional-changelog
-
LXGW WenKai / 霞鹜文楷: An open-source Chinese font derived from Fontworks' Klee One. 一款基于 FONTWORKS 的 Klee One 的开源中文字体。
-
free-font: 汉字字体制作是一个庞大的工程,不同于西文字库,汉字常用字库表就有 6763 个汉字,GBK标准中共有20902 个汉字,而新出版的 GB_18064,共有六万多个字符。而且汉字的字形相对较为复杂,一套中文字体的完成需要耗费大量专业人士的精力和时间,我们倡导大家使用正版字体,为中文字体的制作创造一个良性的环境。
然而目前国内字体的授权体系还不是那么完善,不同的厂商对不同的使用场景都不同的授权,而授权协议里不那么好理解的专业术语往往也使用户望而却步。对于哪些刚起步的创业公司或者个人来讲动辄几千的授权费用也是一笔不小的开支,这里收录了一些在网上收集整理的可以免费商用的中文字体供大家使用。
-
俐方體11號/Cubic 11 - 俐方體11號是基於 M⁺ gothic 12r 衍生的開源繁體中文點陣字型,可用於像素風格的遊戲以及美術當中。
- react-chrono - A Flexible timeline component for React.
- 🚥 Render timelines in three different modes (Horizontal, Vertical, Vertical-Alternating).
- 📺 Auto play the timeline with the slideshow mode.
- 🖼️ Display Images & Videos in the timeline with ease.
- ⌨ Keyboard accessible.
- 🔧 Render custom content easily.
- ⚡ Data driven API.
- 🎨 Customize colors with ease.
- 🎭 Use custom icons in the timeline.
- 💪 Built with Typescript.
- 🎨 Styled with emotion.
- Bootstrap - May be the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web
- Material Design
- bootstrap-material-design - Material Design for Bootstrap is a theme for Bootstrap 3 which lets you use the new [Google Material Design]in your favorite front-end framework
- bulma A modern CSS framework based on Flexbox
- Primer CSS - Primer is the CSS toolkit that powers GitHub's front-end design. It's purposefully limited to common components to provide our developers with the most flexibility, and to keep GitHub uniquely GitHubby. It's built with SCSS and available via NPM, so it's easy to include all or part of it within your own project
- Semantic-UI - A UI component framework based around useful principles from natural language.
- Muse-UI: Material Design UI library for Vuejs 2.0
- buefy: Lightweight UI components for Vue.js based on Bulma
- vux: Mobile UI Components based on Vue & WeUI
- vuesax: New Framework Components for Vue.js 2
- mint-ui: Mobile UI elements for Vue.js by Eleme
- AT-UI: A fresh and flat UI-Kit specially for desktop application, made with ♥ by Vue.js 2.0
- NutUI 2(JingDong): A light mobile Toolkit based on Vue
- element-plus: Vue 3.0 Composition API; Written in TypeScript
- chakra-ui: Chakra UI provides a set of accessible, reusable, and composable React components that make it super easy to create websites and apps.
- office-ui-fabric-react: React components for building experiences for Office and Office 365.
- evergreen: Evergreen React UI Framework by Segment
- MinUI: MinUI 是基于微信小程序自定义组件特性开发而成的一套简洁、易用、高效的组件库,适用场景广,覆盖小程序原生框架,各种小程序组件主流框架等,并且提供了专门的命令行工具
- wxapp-market: 小程序营销组件 大转盘 刮刮乐 老虎机 水果机 九宫格翻纸牌 摇一摇 手势解锁
- animatedModal.js :strong:Beautiful! - A jQuery plugin to create a fullscreen modal with CSS3 transitions
- vex - A modern dialog library which is highly configurable and easy to style
- webui-popover - A lightWeight popover plugin with jquery, enchance the popover plugin of bootstrap with some awesome new features. It works well with bootstrap, but bootstrap is not necessary!
- popper.js - A kickass library to manage your poppers
-
swapy - A framework-agnostic tool that converts any layout into a drag-to-swap one with just a few lines of code
-
vue-draggable-plus - Drag and drop sorting module, support Vue>=v3 or Vue>=2.7
-
✨🌟 react-beautiful-dnd: Beautiful and accessible drag and drop for lists with React
-
VvvebJs: Drag and drop website builder javascript library. http://www.vvveb.com/vvvebjs/editor.html
- react-flip-move: Effortless animation between DOM changes (eg. list reordering) using the FLIP technique.
-
Backlight — with collaboration between developers and designers at heart, Backlight is a very complete coding platform where teams build, document, publish, scale and maintain Design Systems.
-
WebComponents.dev — in-browser IDE to code web components in isolation with 58 templates available, supporting stories and tests.
-
CodeMirror: CodeMirror is a versatile text editor implemented in JavaScript for the browser. It is specialized for editing code, and comes with over 100 language modes and various addons that implement more advanced editing functionality. Every language comes with fully-featured code and syntax highlighting to help with reading and editing complex code. (语雀早期方案)
-
👍👍👍👍👍 Editor.js Next generation block styled editor. Free. Use for pleasure.
-
pell - pell is the simplest and smallest WYSIWYG text editor for web, with no dependencies
-
👍✨🌟💗Microsoft/monaco-editor: A browser based code editor which powers VS Code
-
PrismJS - Prism is a lightweight, robust, and elegant syntax highlighting library. It's a spin-off project from Dabblet.
-
Rete.js: JavaScript(TypeScript) framework for visual programming. Rete is a modular framework for visual programming. Rete allows you to create node-based editor directly in the browser. You can define nodes and workers that allow users to create instructions for processing data in your editor without a single line of code.
- Yoopta-Editor - Open-source rich-text editor that's truly rich. Install and use it in your project. Easy to to use and fully customizable. Just relax, we're here to solve all your challenges with rich-text editors.
- ✨✨✨✨✨❤️ stackedit: In-browser Markdown editor
- 💗 markdown-it - Markdown parser done right. Fast and easy to extend.
- SimpleMDE - Markdown Editor: A drop-in JavaScript textarea replacement for writing beautiful and understandable Markdown. The WYSIWYG-esque editor allows users who may be less experienced with Markdown to use familiar toolbar buttons and shortcuts. In addition, the syntax is rendered while editing to clearly show the expected result. Headings are larger, emphasized words are italicized, links are underlined, etc. SimpleMDE is one of the first editors to feature both built-in autosaving and spell checking.
- Vditor: Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React、Angular,提供桌面版。
- Highlight.js - Highlight.js is a syntax highlighter written in JavaScript. It works in the browser as well as on the server. It works with pretty much any markup, doesn’t depend on any framework and has automatic language detection.
- HR.js - Tiny JavaScript plugin for highlighting and replacing text in the DOM
- stack.gl is an open software ecosystem for WebGL, built on top of browserify and npm. Inspired by the Unix philosophy, stackgl modules "do one thing, and do it well". It is easy to use parts of stackgl à la carte, and because it is written from the bottom up, you can always drill down a layer. Unlike many 3D engines, stackgl emphasizes writing shader code, and provides powerful tools like glslify which bring the modularity and productivity of npm to GLSL!
- three.js - A JavaScript 3D Library which makes WebGL simpler.
- CesiumJS is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin. It uses WebGL for hardware-accelerated graphics, and is cross-platform, cross-browser, and tuned for dynamic-data visualization.:
- whs.js: Super-fast 3D framework for Web Applications 🥇 & Games 🎮. Based on Three.js
-
Parallax.js: Simple parallax scrolling effect inspired by Spotify.com implemented as a jQuery plugin
- react-color: 1. 13 Different Pickers - Sketch, Photoshop, Chrome and many more; 2.Make Your Own - Use the building block components to make your own
- TinyColor - TinyColor is a small, fast library for color manipulation and conversion in JavaScript. It allows many forms of input, while providing color conversions and other color utility functions. It has no dependencies.
- qrcodejs - just for making QRCode and no other depedencies. It supports Cross-browser with HTML5 Canvas and table tag in DOM
- qrious - Pure JavaScript library for QR code generation using canvas
- typo.css - 一致化浏览器排版效果,构建最适合中文阅读的网页排版,包括桌面和移动平台
- 中文文案排版指北
- yue.css - A typography stylesheet for readable content
- html5shiv - This script is the defacto way to enable use of HTML5 sectioning elements in legacy Internet Explorer
- es6 promise - A polyfill for ES6-style Promises
- LuckySheet: 🚀Luckysheet is an online spreadsheet like excel that is powerful, simple to configure, and completely open source.
-
supercookie - Supercookie uses favicons to assign a unique identifier to website visitors. Unlike traditional tracking methods, this ID can be stored almost persistently and cannot be easily cleared by the user.
The tracking method works even in the browser's incognito mode and is not cleared by flushing the cache, closing the browser or restarting the operating system, using a VPN or installing AdBlockers. 🍿 Live demo.
-
KaTeX - KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web.
- Fast: KaTeX renders its math synchronously and doesn't need to reflow the page. See how it compares to a competitor in this speed test.
- Print quality: KaTeX's layout is based on Donald Knuth's TeX, the gold standard for math typesetting.
- Self contained: KaTeX has no dependencies and can easily be bundled with your website resources.
- Server side rendering: KaTeX produces the same output regardless of browser or environment, so you can pre-render expressions using Node.js and send them as plain HTML.
KaTeX is compatible with all major browsers, including Chrome, Safari, Firefox, Opera, Edge, and IE 11.
KaTeX supports much (but not all) of LaTeX and many LaTeX packages.
-
wmr - The tiny all-in-one development tool for modern web apps, in a single 2mb file with no dependencies.
All the features you'd expect and more, from development to production:
🔨 No entry points or pages to configure - just HTML files with
<script type=module>
🦦 Safely import "packages" from npm without installation
📦 Smart bundling and caching for npm dependencies
↻ Hot reloading for modules, Preact components and CSS
⚡️ Lightning-fast JSX support that you can debug in the browser
💄 Import CSS files and CSS Modules (*.module.css)
🔩 Out-of-the-box support for TypeScript
📂 Static file serving with hot reloading of CSS and images
🗜 Highly optimized Rollup-based production output (wmr build)
📑 Crawls and pre-renders your app's pages to static HTML at build time
🏎 Built-in HTTP2 in dev and prod (wmr serve --http2)
🔧 Supports Rollup plugins, even in development where Rollup isn't used
-
fountainjs - One Yeoman generator for all your frontend projects
-
Sizzy - A tool for developing responsive websites crazy-fast
-
✏️codepen.io - CodePen is a social development environmentfor front-end designers and developers. 👋
-
👍json-server Mock Get a full fake REST API with zero coding in less than 30 seconds (seriously)
- quicktype: generates strongly-typed models and serializers from JSON, JSON Schema, TypeScript, and GraphQL queries, making it a breeze to work with JSON type-safely in many programming languages.
- ts-migrate is a tool for helping migrate code to TypeScript. It takes a JavaScript, or a partial TypeScript, project in and gives a compiling TypeScript project out.
- 👍👍 ✨ API Blueprint is simple and accessible to everybody involved in the API lifecycle. Its syntax is concise yet expressive. With API Blueprint you can quickly design and prototype APIs to be created or document and test already deployed mission-critical APIs.
- SLATE: Slate helps you create beautiful, intelligent, responsive API documentation.(语雀 部分功能基于此开发)
- Now — Global Serverless Deployments. Now makes serverless application deployment easy. Don’t spend time configuring the cloud. Just push your code.
- Vercel - Develop, Preview, Ship: Vercel combines the best developer experience with an obsessive focus on end-user performance. Our platform enables frontend teams to do their best work.
- Heroku: Heroku is a cloud platform as a service (PaaS) supporting several programming languages. One of the first cloud platforms, Heroku has been in development since June 2007, when it supported only the Ruby programming language, but now supports Java, Node.js, Scala, Clojure, Python, PHP, and Go. For this reason, Heroku is said to be a polyglot platform as it has features for a developer to build, run and scale applications in a similar manner across most languages. Heroku was acquired by Salesforce.com in 2010 for $212 million
- signoz - SigNoz is an open-source APM. It helps developers monitor their applications & troubleshoot problems, an open-source alternative to DataDog, NewRelic, etc. 🔥 🖥. 👉 Open source Application Performance Monitoring (APM) & Observability tool.
- openreplay - Session replay for developers: The most advanced open-source session replay to build delightful web apps.
- facebook/docusaurus - Docusaurus is a project for building, deploying, and maintaining open source project websites easily.
- docsify: A magical documentation site generator.
- documentation.js The documentation system for modern JavaScript
- Docute: Effortless documentation, done right.
- ESDoc - Good Documentation for JavaScript
- 👍👍 Make images smaller using best-in-class codecs, right in the browser. by GoogleChormeLabs
- TinyPNG client for Mac
- iconmonstr: Discover 4486+ free icons in 310 collections
- IconPark:IconPark gives access to more than 2000 high-quality icons, and introduces an interface for customizing your icons. Instead of using various SVG source files to achieve different themes, We implement a technology transforming attributes of a single SVG source file into multiple themes. Besides, we provide cross-platform components, including react-icons, vue-icons and svg-icons. So whether you are a designer or a developer, you can use them in your designs or your projects for free.
- Tabler Icons: A set of over 1250 free MIT-licensed high-quality SVG icons for you to use in your web projects. Each icon is designed on a 24x24 grid and a 2px stroke.
-
Lerna: A tool for managing JavaScript projects with multiple packages.
Splitting up large codebases into separate independently versioned packages is extremely useful for code sharing. However, making changes across many repositories is messy and difficult to track, and testing across repositories becomes complicated very quickly.
To solve these (and many other) problems, some projects will organize their codebases into multi-package repositories (sometimes called monorepos). Projects like Babel, React, Angular, Ember, Meteor, Jest, and many others develop all of their packages within a single repository.
Lerna is a tool that optimizes the workflow around managing multi-package repositories with git and npm.
Lerna can also reduce the time and space requirements for numerous copies of packages in development and build environments - normally a downside of dividing a project into many separate NPM packages. See the hoist documentation for details.
-
pnpm: Fast, disk space efficient package manager
- Fast. Up to 2x faster than the alternatives (see benchmark).
- Efficient. Files inside node_modules are linked from a single content-addressable storage.
- Great for monorepos.
- Strict. A package can access only dependencies that are specified in its package.json.
- Deterministic. Has a lockfile called pnpm-lock.yaml.
- Works everywhere. Supports Windows, Linux, and macOS.
- Battle-tested. Used in production by teams of all sizes since 2016. Source Control:
-
simple-git-hooks - A tool that lets you easily manage git hooks
-
Zero dependency
-
Small configuration (1 object in package.json)
-
Lightweight:
Package Unpacked size With deps husky v4 4.3.8
53.5 kB
~1 mB
husky v6 6.0.0
6.86 kB
6.86 kB
pre-commit 1.2.2
~80 kB
~850 kB
simple-git-hooks 2.2.0
10.1 kB
10.1 kB
-
- CodeTour 🗺️ - CodeTour is a Visual Studio Code extension, which allows you to record and play back guided walkthroughs of your codebases. It's like a table of contents, that can make it easier to onboard (or re-board!) to a new project/feature area, visualize bug reports, or understand the context of a code review/PR change. A "code tour" is simply a series of interactive steps, each of which are associated with a specific directory, or file/line, and include a description of the respective code. This allows developers to clone a repo, and then immediately start learning it, without needing to refer to a CONTRIBUTING.md file and/or rely on help from others. Tours can either be checked into a repo, to enable sharing with other contributors, or exported to a "tour file", which allows anyone to replay the same tour, without having to clone any code to do it!
- Easy-Mock - 一个可视化,并且能快速生成 模拟数据 的持久化服务。
- Mock - A simulation data generator
- faker.js: generate massive amounts of fake data in the browser and node.js
-
Cucumber.js(BBD): Cucumber is a tool for running automated tests written in plain language. Because they're written in plain language, they can be read by anyone on your team. Because they can be read by anyone, you can use them to help improve communication, collaboration and trust on your team.
Cucumber.js is the JavaScript implementation of Cucumber and runs on the maintained Node.js versions.
-
gremlins.js: A monkey testing library written in JavaScript, for Node.js and the browser. Use it to check the robustness of web applications by unleashing a horde of undisciplined gremlins.
-
k6: A modern load testing tool for developers and testers in the DevOps era. k6is a modern load testing tool, building on our years of experience in the load and performance testing industry. It provides a clean, approachable scripting API, local and cloud execution, and flexible configuration.
-
💗 WebPageTest: “WebPage Test measures web performance metrics in real browsers, is highly programmable, and could scale to test millions of sites per day.”
- axios - Promise based HTTP client for the browser and node.js
- reqwest: All over again. Includes support for xmlHttpRequest, JSONP, CORS, and CommonJS Promises A. It is also isomorphic allowing you to require('reqwest') in Node.js through the peer dependency xhr2, albeit the original intent of this library is for the browser. For a more thorough solution for Node.js, see mikeal/request.
-
👍 Parcel: Blazing fast, zero configuration web application bundler
-
esbuild: An extremely fast JavaScript bundle
-
swc: is a super-fast typescript / javascript compiler written in rust. It's a library for rust and javascript at the same time. If you are using swc from rust, see rustdoc and for most users, your entrypoint for using library will be parser.
- Happypack: Happiness in the form of faster webpack build times.
- webpack-bundle-analyzer: Webpack plugin and CLI utility that represents bundle content as convenient interactive zoomable treemap
-
tauri: Tauri is a framework for building tiny, blazing fast binaries for all major desktop platforms. Developers can integrate any front-end framework that compiles to HTML, JS and CSS for building their user interface. The backend of the application is a rust-sourced binary with an API that the front-end can interact with.
The user interface in Tauri apps currently leverages Cocoa/WebKit on macOS, gtk-webkit2 on Linux and MSHTML (IE10/11) or Webkit via Edge on Windows. Tauri uses (and contributes to) the MIT licensed project that you can find at webview and the related webview organization.
- Gatsby: Blazing fast modern site generator for React Go beyond static sites: build blogs, e-commerce sites, full-blown apps, and more with Gatsby.
- react-static: A progressive static site generator for React.
-
ffmpeg.wasm: is a pure Webassembly / Javascript port of FFmpeg. It enables video & audio record, convert and stream right inside browsers.
-
JSMpeg – MPEG1 Video & MP2 Audio Decoder in JavaScript: JSMpeg is a Video Player written in JavaScript. It consists of an MPEG-TS demuxer, MPEG1 video & MP2 audio decoders, WebGL & Canvas2D renderers and WebAudio sound output. JSMpeg can load static videos via Ajax and allows low latency streaming (~50ms) via WebSockets.
JSMpeg can decode 720p Video at 30fps on an iPhone 5S, works in any modern browser (Chrome, Firefox, Safari, Edge) and comes in at just 20kb gzipped.
-
RecordRTC: WebRTC JavaScript Library for Audio+Video+Screen+Canvas (2D+3D animation) Recording
-
SoundManager2:A JavaScript Sound API supporting MP3, MPEG4 and HTML5 audio + RTMP, providing reliable cross-browser/platform audio control in as little as 12 KB. BSD licensed.
-
DPlayer is a lovely HTML5 danmaku video player to help people build video and danmaku easily.
-
xgplayer is a web video and audio player library, designed with separate, detachable UI components. Since everything is componentized. the UI layer is very flexable. xgplayer is bold in its functionality: it gets rid of video loading, buffering, and format support for video dependence. For mp4 that does not support streaming, you can use staged loading. This means load control, seamless switching without artifacts, and video bandwidth savings. It also integrates on-demand and live support for FLV, HLS, and dash.
-
jwplayer - May be the world's most popular embeddable media player
- Push: is the fastest way to get up and running with Javascript desktop notifications. A fairly new addition to the official specification, the Notification API allows modern browsers such as Chrome, Safari, Firefox, and IE 9+ to push notifications to a user's desktop. Push acts as a cross-browser solution to this API, falling back to use older implementations if the user's browser does not support the new API.
-
localForage: localForage is a fast and simple storage library for JavaScript. localForage improves the offline experience of your web app by using asynchronous storage (IndexedDB or WebSQL) with a simple, localStorage-like API.
localForage uses localStorage in browsers with no IndexedDB or WebSQL support. See the wiki for detailed compatibility info.
-
👍👍👍 Store.js: Cross-browser storage for all use cases, used across the web.
- PouchDB is an open-source JavaScript database inspired by Apache CouchDB that is designed to run well within the browser.
- 👍👍 rxdb: A realtime Database for the Web
- AR.js: Efficient Augmented Reality for the Web - 60fps on mobile!
- MindAR - For location-based AR and marker-based AR, checkout AR.js https://github.com/AR-js-org/AR.js
MindAR is a lightweight library for web augmented reality. Highlighted features include: ⭐ Support Image tracking and Face tracking
⭐ Written in pure javascript, end-to-end from the underlying computer vision engine to frontend
⭐ Utilize gpu (through webgl) and web worker for performance
⭐ Developer friendly. Easy to setup. With AFRAME extension, you can get your app starts with only 10 lines of codes
- mathjs: An extensive math library for JavaScript and Node.js
-
emscripten: Emscripten compiles C and C++ to WebAssembly using LLVM and Binaryen. Emscripten output can run on the Web, in Node.js, and in wasm runtimes.
Emscripten provides Web support for popular portable APIs such as OpenGL and SDL2, allowing complex graphical native applications to be ported, such as the Unity game engine and Google Earth. It can probably port your codebase, too!
While Emscripten mostly focuses on compiling C and C++ using Clang, it can be integrated with other LLVM-using compilers (for example, Rust has Emscripten integration, with the wasm32-unknown-emscripten and asmjs-unknown-emscripten targets).
-
Wasmer: Wasmer enables super lightweight containers based on WebAssembly that can run anywhere: from Desktop to the Cloud and IoT devices, and also embedded in any programming language.
-
WasmEdge - WasmEdge (previously known as SSVM) is a lightweight, high-performance, and extensible WebAssembly runtime for ❗️cloud native, edge, and decentralized applications❗️. It is the fastest Wasm VM today. WasmEdge is an official sandbox project hosted by the CNCF. Its use cases include serverless apps, embedded functions, microservices, smart contracts, and IoT devices.
- vue element admin: vue-element-admin is a production-ready front-end solution for admin interfaces. It is based on vue and uses the UI Toolkit element-ui.
- grapesjs: is a free and open source Web Builder Framework which helps building HTML templates, faster and easily, to be delivered in sites, newsletters or mobile apps. Mainly, GrapesJS was designed to be used inside a CMS to speed up the creation of dynamic templates.
- luban-h5: Mobile Page Builder&Generator with Drag&Drop
- strapi: Strapi is a free and open-source headless CMS. It’s 100% JavaScript, fully customizable, and developer-first.
-
Prisma: Next generation ORM for Node.js & TypeScript
-
http-proxy-middleware: Node.js proxying made simple. Configure proxy middleware with ease for connect, express, browser-sync and many more.
Powered by the popular Nodejitsu http-proxy
-
pkg - This command line interface enables you to package your Node.js project into an executable that can be run even on devices without Node.js installed.
-
ncc - Simple CLI for compiling a Node.js module into a single file, together with all its dependencies, gcc-style.
Motivation
- Publish minimal packages to npm
- Only ship relevant app code to serverless environments
- Don't waste time configuring bundlers
- Generally faster bootup time and less I/O overhead
- Compiled language-like experience (e.g.: go)
Design goals
- Zero configuration
- TypeScript built-in
- Only supports Node.js programs as input / output
- Support all Node.js patterns and npm modules
-
cfonts - This is a silly little command line tool for sexy fonts in the console. Give your cli some love
-
MarkText - Next generation markdown editor: A simple and elegant open-source markdown editor that focused on speed and usability. Available for Linux, macOS and Windows.
-
Slidev: Presentation slides for developers 🧑💻👩💻👨💻
-
jsonvisio.com - JSON Visio is a tool that generates graph diagrams from JSON objects. These diagrams are much easier to navigate than the textual format and to make it even more convenient, the tool also allows you to search the nodes. Additionally, the generated diagrams can also be downloaded or clipboard as image.
You can use the web version at jsonvisio.com or also run it locally as Docker container.
-
AFFiNE - The Next-Gen Knowledge Base to Replace Notion & Miro.
-
tldraw: a tiny little drawing app: Try it 👉 online
-
Lepton is a lean code snippet manager powered by GitHub Gist.
-
twenty - The #1 Open-Source CRM. We’ve spent thousands of hours grappling with traditional CRMs like Pipedrive and Salesforce to align them with our business needs, only to end up frustrated — customizations are complex and the closed ecosystems of these platforms can feel restrictive.
We felt the need for a CRM platform that empowers rather than constrains. We believe the next great CRM will come from the open source community. And we’ve packed Twenty with powerful features to give you full control and help you run your business efficiently.
-
Fakeflix: a Netflix Clone built with React, Redux.
-
lotion - An open-source Notion UI built with Vue 3.
-
wappalyzer - Wappalyzer identifies technologies on websites, such as CMS, web frameworks, ecommerce platforms, JavaScript libraries, analytics tools and more.
-
microsoft/Clarity: is an open-source behavioral analytics library written in typescript, with two key goals: privacy & performance. It helps you understand how users view and use your website across all modern devices and browsers. Understanding how users navigate, interact and browse your website can provide new insights about your users. Empathizing with your users and seeing where features fail or succeed can help improve your product, grow revenue and improve user retention.
It's the same code that powers Microsoft's hosted behavioral analytics solution: https://clarity.microsoft.com. If you would like to see a demo of how it works, checkout live demo.
We encourage the community to join us in building the best behavioral analytics library, that puts privacy first and prioritizes performance.
-
chalk.ist - Create beautiful images of your source code
- Pagen AI Landing Page Template - It is built with Next.js and Shadcn UI.
- yournextstore - Modern Commerce with Next.js and Stripe as the backend.
Your contributions and suggestions are heartily welcome.
Thanks to all the people who already contributed!