<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Components on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/components/</link>
        <description>Recent content in Components on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Sun, 14 Sep 2025 15:25:34 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/components/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>folly</title>
        <link>https://producthunt.programnotes.cn/en/p/folly/</link>
        <pubDate>Sun, 14 Sep 2025 15:25:34 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/folly/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1726500087571-d3193fb2b6b3?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTc4MzQ2NTB8&amp;ixlib=rb-4.1.0" alt="Featured image of post folly" /&gt;&lt;h1 id=&#34;facebookfolly&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/folly&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;facebook/folly&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;folly-facebook-open-source-library&#34;&gt;Folly: Facebook Open-source Library
&lt;/h1&gt;&lt;a href=&#34;https://opensource.facebook.com/support-ukraine&#34;&gt;
  &lt;img src=&#34;https://img.shields.io/badge/Support-Ukraine-FFD500?style=flat&amp;labelColor=005BBB&#34; alt=&#34;Support Ukraine - Help Provide Humanitarian Aid to Ukraine.&#34; /&gt;
&lt;/a&gt;
&lt;h1 id=&#34;what-is-folly&#34;&gt;What is &lt;code&gt;folly&lt;/code&gt;?
&lt;/h1&gt;&lt;img src=&#34;static/logo.svg&#34; alt=&#34;Logo Folly&#34; width=&#34;15%&#34; align=&#34;right&#34; /&gt;
&lt;p&gt;Folly (acronymed loosely after Facebook Open Source Library) is a
library of C++17 components designed with practicality and efficiency
in mind. &lt;strong&gt;Folly contains a variety of core library components used extensively
at Facebook&lt;/strong&gt;. In particular, it&amp;rsquo;s often a dependency of Facebook&amp;rsquo;s other
open source C++ efforts and place where those projects can share code.&lt;/p&gt;
&lt;p&gt;It complements (as opposed to competing against) offerings
such as Boost and of course &lt;code&gt;std&lt;/code&gt;. In fact, we embark on defining our
own component only when something we need is either not available, or
does not meet the needed performance profile. We endeavor to remove
things from folly if or when &lt;code&gt;std&lt;/code&gt; or Boost obsoletes them.&lt;/p&gt;
&lt;p&gt;Performance concerns permeate much of Folly, sometimes leading to
designs that are more idiosyncratic than they would otherwise be (see
e.g. &lt;code&gt;PackedSyncPtr.h&lt;/code&gt;, &lt;code&gt;SmallLocks.h&lt;/code&gt;). Good performance at large
scale is a unifying theme in all of Folly.&lt;/p&gt;
&lt;h2 id=&#34;check-it-out-in-the-intro-video&#34;&gt;Check it out in the intro video
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.youtube.com/watch?v=Wr_IfOICYSs&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.youtube.com/vi/Wr_IfOICYSs/0.jpg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Explain Like I’m 5: Folly&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1 id=&#34;logical-design&#34;&gt;Logical Design
&lt;/h1&gt;&lt;p&gt;Folly is a collection of relatively independent components, some as
simple as a few symbols. There is no restriction on internal
dependencies, meaning that a given folly module may use any other
folly components.&lt;/p&gt;
&lt;p&gt;All symbols are defined in the top-level namespace &lt;code&gt;folly&lt;/code&gt;, except of
course macros. Macro names are ALL_UPPERCASE and should be prefixed
with &lt;code&gt;FOLLY_&lt;/code&gt;. Namespace &lt;code&gt;folly&lt;/code&gt; defines other internal namespaces
such as &lt;code&gt;internal&lt;/code&gt; or &lt;code&gt;detail&lt;/code&gt;. User code should not depend on symbols
in those namespaces.&lt;/p&gt;
&lt;h1 id=&#34;physical-design&#34;&gt;Physical Design
&lt;/h1&gt;&lt;p&gt;At the top level Folly uses the classic &amp;ldquo;stuttering&amp;rdquo; scheme
&lt;code&gt;folly/folly&lt;/code&gt; used by Boost and others. The first directory serves as
an installation root of the library (with possible versioning a la
&lt;code&gt;folly-1.0/&lt;/code&gt;), and the second is to distinguish the library when
including files, e.g. &lt;code&gt;#include &amp;lt;folly/FBString.h&amp;gt;&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The directory structure is flat (mimicking the namespace structure),
i.e. we don&amp;rsquo;t have an elaborate directory hierarchy (it is possible
this will change in future versions). The subdirectory &lt;code&gt;experimental&lt;/code&gt;
contains files that are used inside folly and possibly at Facebook but
not considered stable enough for client use. Your code should not use
files in &lt;code&gt;folly/experimental&lt;/code&gt; lest it may break when you update Folly.&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;folly/folly/test&lt;/code&gt; subdirectory includes the unittests for all
components, usually named &lt;code&gt;ComponentXyzTest.cpp&lt;/code&gt; for each
&lt;code&gt;ComponentXyz.*&lt;/code&gt;. The &lt;code&gt;folly/folly/docs&lt;/code&gt; directory contains
documentation.&lt;/p&gt;
&lt;h1 id=&#34;whats-in-it&#34;&gt;What&amp;rsquo;s in it?
&lt;/h1&gt;&lt;p&gt;Because of folly&amp;rsquo;s fairly flat structure, the best way to see what&amp;rsquo;s in it
is to look at the headers in &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/folly/tree/main/folly&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;top level &lt;code&gt;folly/&lt;/code&gt; directory&lt;/a&gt;. You can also
check the &lt;a class=&#34;link&#34; href=&#34;folly/docs&#34; &gt;&lt;code&gt;docs&lt;/code&gt; folder&lt;/a&gt; for documentation, starting with the
&lt;a class=&#34;link&#34; href=&#34;folly/docs/Overview.md&#34; &gt;overview&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Folly is published on GitHub at &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/folly&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/facebook/folly&lt;/a&gt;.&lt;/p&gt;
&lt;h1 id=&#34;build-notes&#34;&gt;Build Notes
&lt;/h1&gt;&lt;p&gt;Because folly does not provide any ABI compatibility guarantees from commit to
commit, we generally recommend building folly as a static library.&lt;/p&gt;
&lt;p&gt;folly supports gcc (5.1+), clang, or MSVC. It should run on Linux (x86-32,
x86-64, and ARM), iOS, macOS, and Windows (x86-64). The CMake build is only
tested on some of these platforms; at a minimum, we aim to support macOS and
Linux (on the latest Ubuntu LTS release or newer.)&lt;/p&gt;
&lt;h2 id=&#34;getdepspy&#34;&gt;&lt;code&gt;getdeps.py&lt;/code&gt;
&lt;/h2&gt;&lt;p&gt;This script is used by many of Meta&amp;rsquo;s OSS tools.  It will download and build all of the necessary dependencies first, and will then invoke cmake etc to build folly.  This will help ensure that you build with relevant versions of all of the dependent libraries, taking into account what versions are installed locally on your system.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s written in python so you&amp;rsquo;ll need python3.6 or later on your PATH.  It works on Linux, macOS and Windows.&lt;/p&gt;
&lt;p&gt;The settings for folly&amp;rsquo;s cmake build are held in its getdeps manifest &lt;code&gt;build/fbcode_builder/manifests/folly&lt;/code&gt;, which you can edit locally if desired.&lt;/p&gt;
&lt;h3 id=&#34;dependencies&#34;&gt;Dependencies
&lt;/h3&gt;&lt;p&gt;If on Linux or MacOS (with homebrew installed) you can install system dependencies to save building them:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# Clone the repo
git clone https://github.com/facebook/folly
# Install dependencies
cd folly
sudo ./build/fbcode_builder/getdeps.py install-system-deps --recursive
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If you&amp;rsquo;d like to see the packages before installing them:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;./build/fbcode_builder/getdeps.py install-system-deps --dry-run --recursive
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;On other platforms or if on Linux and without system dependencies &lt;code&gt;getdeps.py&lt;/code&gt; will mostly download and build them for you during the build step.&lt;/p&gt;
&lt;p&gt;Some of the dependencies &lt;code&gt;getdeps.py&lt;/code&gt; uses and installs are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a version of boost compiled with C++14 support.&lt;/li&gt;
&lt;li&gt;googletest is required to build and run folly&amp;rsquo;s tests.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;build&#34;&gt;Build
&lt;/h3&gt;&lt;p&gt;This script will download and build all of the necessary dependencies first,
and will then invoke cmake etc to build folly.  This will help ensure that you build with relevant versions of all of the dependent libraries, taking into account what versions are installed locally on your system.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;getdeps.py&lt;/code&gt; currently requires python 3.6+ to be on your path.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;getdeps.py&lt;/code&gt; will invoke cmake etc.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# Clone the repo
git clone https://github.com/facebook/folly
cd folly
# Build, using system dependencies if available
python3 ./build/fbcode_builder/getdeps.py --allow-system-packages build
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;It puts output in its scratch area:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;installed/folly/lib/libfolly.a&lt;/code&gt;: Library&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can also specify a &lt;code&gt;--scratch-path&lt;/code&gt; argument to control
the location of the scratch directory used for the build. You can find the default scratch install location from logs or with &lt;code&gt;python3 ./build/fbcode_builder/getdeps.py show-inst-dir&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;There are also
&lt;code&gt;--install-dir&lt;/code&gt; and &lt;code&gt;--install-prefix&lt;/code&gt; arguments to provide some more
fine-grained control of the installation directories. However, given that
folly provides no compatibility guarantees between commits we generally
recommend building and installing the libraries to a temporary location, and
then pointing your project&amp;rsquo;s build at this temporary location, rather than
installing folly in the traditional system installation directories. e.g., if you are building with CMake you can use the &lt;code&gt;CMAKE_PREFIX_PATH&lt;/code&gt; variable to allow CMake to find folly in this temporary installation directory when
building your project.&lt;/p&gt;
&lt;p&gt;If you want to invoke &lt;code&gt;cmake&lt;/code&gt; again to iterate, there is a helpful &lt;code&gt;run_cmake.py&lt;/code&gt; script output in the scratch build directory.  You can find the scratch build directory from logs or with &lt;code&gt;python3 ./build/fbcode_builder/getdeps.py show-build-dir&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;run-tests&#34;&gt;Run tests
&lt;/h3&gt;&lt;p&gt;By default &lt;code&gt;getdeps.py&lt;/code&gt; will build the tests for folly. To run them:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cd folly
python3 ./build/fbcode_builder/getdeps.py --allow-system-packages test
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;buildshbuildbat-wrapper&#34;&gt;&lt;code&gt;build.sh&lt;/code&gt;/&lt;code&gt;build.bat&lt;/code&gt; wrapper
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;build.sh&lt;/code&gt; can be used on Linux and MacOS, on Windows use
the &lt;code&gt;build.bat&lt;/code&gt; script instead. Its a wrapper around &lt;code&gt;getdeps.py&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id=&#34;build-with-cmake-directly&#34;&gt;Build with cmake directly
&lt;/h2&gt;&lt;p&gt;If you don&amp;rsquo;t want to let getdeps invoke cmake for you then by default, building the tests is disabled as part of the CMake &lt;code&gt;all&lt;/code&gt; target.
To build the tests, specify &lt;code&gt;-DBUILD_TESTS=ON&lt;/code&gt; to CMake at configure time.&lt;/p&gt;
&lt;p&gt;NB if you want to invoke &lt;code&gt;cmake&lt;/code&gt; again to iterate on a &lt;code&gt;getdeps.py&lt;/code&gt; build, there is a helpful &lt;code&gt;run_cmake.py&lt;/code&gt; script output in the scratch-path build directory. You can find the scratch build directory from logs or with &lt;code&gt;python3 ./build/fbcode_builder/getdeps.py show-build-dir&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Running tests with ctests also works if you cd to the build dir, e.g.
&lt;code&gt;(cd $(python3 ./build/fbcode_builder/getdeps.py show-build-dir) &amp;amp;&amp;amp; ctest)&lt;/code&gt;&lt;/p&gt;
&lt;h3 id=&#34;finding-dependencies-in-non-default-locations&#34;&gt;Finding dependencies in non-default locations
&lt;/h3&gt;&lt;p&gt;If you have boost, gtest, or other dependencies installed in a non-default
location, you can use the &lt;code&gt;CMAKE_INCLUDE_PATH&lt;/code&gt; and &lt;code&gt;CMAKE_LIBRARY_PATH&lt;/code&gt;
variables to make CMAKE look also look for header files and libraries in
non-standard locations.  For example, to also search the directories
&lt;code&gt;/alt/include/path1&lt;/code&gt; and &lt;code&gt;/alt/include/path2&lt;/code&gt; for header files and the
directories &lt;code&gt;/alt/lib/path1&lt;/code&gt; and &lt;code&gt;/alt/lib/path2&lt;/code&gt; for libraries, you can invoke
&lt;code&gt;cmake&lt;/code&gt; as follows:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cmake \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -DCMAKE_INCLUDE_PATH=/alt/include/path1:/alt/include/path2 \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -DCMAKE_LIBRARY_PATH=/alt/lib/path1:/alt/lib/path2 ...
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;ubuntu-lts-centos-stream-fedora&#34;&gt;Ubuntu LTS, CentOS Stream, Fedora
&lt;/h2&gt;&lt;p&gt;Use the &lt;code&gt;getdeps.py&lt;/code&gt; approach above. We test in CI on Ubuntu LTS, and occasionally on other distros.&lt;/p&gt;
&lt;p&gt;If you find the set of system packages is not quite right for your chosen distro, you can specify distro version specific overrides in the dependency manifests (e.g. &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/folly/blob/main/build/fbcode_builder/manifests/boost&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/facebook/folly/blob/main/build/fbcode_builder/manifests/boost&lt;/a&gt; ). You could probably make it work on most recent Ubuntu/Debian or Fedora/Redhat derived distributions.&lt;/p&gt;
&lt;p&gt;At time of writing (Dec 2021) there is a build break on GCC 11.x based systems in lang_badge_test.  If you don&amp;rsquo;t need badge functionality you can work around by commenting it out from CMakeLists.txt (unfortunately fbthrift does need it)&lt;/p&gt;
&lt;h2 id=&#34;windows-vcpkg&#34;&gt;Windows (Vcpkg)
&lt;/h2&gt;&lt;p&gt;Note that many tests are disabled for folly Windows builds, you can see them in the log from the cmake configure step, or by looking for WINDOWS_DISABLED in &lt;code&gt;CMakeLists.txt&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;That said, &lt;code&gt;getdeps.py&lt;/code&gt; builds work on Windows and are tested in CI.&lt;/p&gt;
&lt;p&gt;If you prefer, you can try Vcpkg. folly is available in &lt;a class=&#34;link&#34; href=&#34;https://github.com/Microsoft/vcpkg#vcpkg&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Vcpkg&lt;/a&gt; and releases may be built via &lt;code&gt;vcpkg install folly:x64-windows&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;You may also use &lt;code&gt;vcpkg install folly:x64-windows --head&lt;/code&gt; to build against &lt;code&gt;main&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id=&#34;macos&#34;&gt;macOS
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;getdeps.py&lt;/code&gt; builds work on macOS and are tested in CI, however if you prefer, you can try one of the macOS package managers&lt;/p&gt;
&lt;h3 id=&#34;homebrew&#34;&gt;Homebrew
&lt;/h3&gt;&lt;p&gt;folly is available as a Formula and releases may be built via &lt;code&gt;brew install folly&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;You may also use &lt;code&gt;folly/build/bootstrap-osx-homebrew.sh&lt;/code&gt; to build against &lt;code&gt;main&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ./folly/build/bootstrap-osx-homebrew.sh
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;This will create a build directory &lt;code&gt;_build&lt;/code&gt; in the top-level.&lt;/p&gt;
&lt;h3 id=&#34;macports&#34;&gt;MacPorts
&lt;/h3&gt;&lt;p&gt;Install the required packages from MacPorts:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;n&#34;&gt;sudo&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;port&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;install&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;boost&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;cmake&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;gflags&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;git&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;google&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;glog&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;libevent&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;libtool&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;lz4&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;lzma&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;openssl&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;snappy&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;xz&lt;/span&gt; \
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;zlib&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Download and install double-conversion:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  git clone https://github.com/google/double-conversion.git
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cd double-conversion
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cmake -DBUILD_SHARED_LIBS=ON .
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  make
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  sudo make install
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Download and install folly with the parameters listed below:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  git clone https://github.com/facebook/folly.git
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cd folly
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  mkdir _build
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cd _build
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  cmake ..
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  make
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  sudo make install
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
        </item>
        <item>
        <title>lowcode-engine</title>
        <link>https://producthunt.programnotes.cn/en/p/lowcode-engine/</link>
        <pubDate>Thu, 19 Jun 2025 15:30:24 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/lowcode-engine/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1596230003747-44ac27b05bba?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTAzMTgxMzV8&amp;ixlib=rb-4.1.0" alt="Featured image of post lowcode-engine" /&gt;&lt;h1 id=&#34;alibabalowcode-engine&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/alibaba/lowcode-engine&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;alibaba/lowcode-engine&lt;/a&gt;
&lt;/h1&gt;&lt;p&gt;packages/engine/README.md&lt;/p&gt;
</description>
        </item>
        <item>
        <title>react-bits</title>
        <link>https://producthunt.programnotes.cn/en/p/react-bits/</link>
        <pubDate>Sun, 08 Jun 2025 15:27:19 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/react-bits/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1693421385607-8f034601ad6f?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NDkzNjc1OTN8&amp;ixlib=rb-4.1.0" alt="Featured image of post react-bits" /&gt;&lt;h1 id=&#34;davidhdevreact-bits&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/DavidHDev/react-bits&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;DavidHDev/react-bits&lt;/a&gt;
&lt;/h1&gt;&lt;div align=&#34;center&#34;&gt;
	&lt;br&gt;
	&lt;br&gt;
    &lt;picture&gt;
      &lt;source media=&#34;(prefers-color-scheme: light)&#34; srcset=&#34;src/assets/logos/reactbits-gh-black.svg&#34;&gt;
      &lt;source media=&#34;(prefers-color-scheme: dark)&#34; srcset=&#34;src/assets/logos/reactbits-gh-white.svg&#34;&gt;
      &lt;img src=&#34;src/assets/logos/reactbits-gh-black.svg&#34; alt=&#34;react-bits logo&#34; width=&#34;1000&#34;&gt;
    &lt;/picture&gt;
	&lt;br&gt;
	&lt;br&gt;
&lt;/div&gt;
&lt;div align=&#34;center&#34;&gt;
  The largest &amp; most creative library of animated React components.
&lt;/div&gt;
&lt;br /&gt;
&lt;div align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://github.com/davidhdev/react-bits/stargazers&#34;&gt;&lt;img alt=&#34;GitHub Repo stars&#34; src=&#34;https://img.shields.io/github/stars/davidhdev/react-bits&#34;&gt;&lt;/a&gt;
  &lt;a href=&#34;https://github.com/davidhdev/react-bits/blob/main/LICENSE.md&#34;&gt;&lt;img alt=&#34;License&#34; src=&#34;https://img.shields.io/badge/License-MIT-cyan.svg&#34;&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;h2 id=&#34;documentation&#34;&gt;Documentation
&lt;/h2&gt;&lt;p&gt;Go to &lt;a class=&#34;link&#34; href=&#34;https://reactbits.dev/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;reactbits.dev&lt;/a&gt; to view the documentation.&lt;/p&gt;
&lt;h2 id=&#34;about&#34;&gt;About
&lt;/h2&gt;&lt;p&gt;React Bits is a large collection of animated React components made to spice up your web creations. We&amp;rsquo;ve got animations, components, backgrounds, and awesome stuff that you won&amp;rsquo;t be able to find anywhere else - all free for you to use! These components are all enhanced with customization options as props, to make it easy for you to get exactly what you need.&lt;/p&gt;
&lt;h2 id=&#34;key-features&#34;&gt;Key Features
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;60 total components (text animations, animations, components, backgrounds), growing every day&lt;/li&gt;
&lt;li&gt;All components are lightweight, with minimal dependencies, and highly customizable&lt;/li&gt;
&lt;li&gt;Designed to integrate seamlessly with any modern React project&lt;/li&gt;
&lt;li&gt;Each component comes in 4 variants, to keep everyone happy:
&lt;ul&gt;
&lt;li&gt;JS + CSS&lt;/li&gt;
&lt;li&gt;JS + Tailwind CSS&lt;/li&gt;
&lt;li&gt;TS + CSS&lt;/li&gt;
&lt;li&gt;TS + Tailwind CSS&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;cli-&#34;&gt;CLI (&lt;a href=&#34;https://jsrepo.dev&#34;&gt;&lt;img src=&#34;https://jsrepo.dev/badges/jsrepo.svg&#34; width=&#34;50&#34; alt=&#34;jsrepo&#34;&gt;&lt;/a&gt;)
&lt;/h2&gt;&lt;p&gt;React Bits uses &lt;a class=&#34;link&#34; href=&#34;https://jsrepo.dev&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;jsrepo&lt;/a&gt; for installing components via CLI. &lt;/br&gt;
The setup steps can be found on each component&amp;rsquo;s page in the &lt;a class=&#34;link&#34; href=&#34;https://reactbits.dev/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;documentation&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;how-to-contribute&#34;&gt;How To Contribute?
&lt;/h2&gt;&lt;p&gt;Contributions are welcome! Check the &lt;a class=&#34;link&#34; href=&#34;https://github.com/DavidHDev/react-bits/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Open Issues&lt;/a&gt; to see how you can help or submit ideas using the &lt;a class=&#34;link&#34; href=&#34;https://github.com/DavidHDev/react-bits/issues/new?template=2-feature-request.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Feature Request template&lt;/a&gt;.&lt;/br&gt;
Please review the &lt;a class=&#34;link&#34; href=&#34;https://github.com/DavidHDev/react-bits/blob/main/CONTRIBUTING.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Contribution Guide&lt;/a&gt; and follow our standards. Thanks for your time!&lt;/p&gt;
&lt;h2 id=&#34;contributors&#34;&gt;Contributors
&lt;/h2&gt;&lt;a href=&#34;https://github.com/davidhdev/react-bits/graphs/contributors&#34;&gt;
  &lt;img src=&#34;https://contrib.rocks/image?repo=davidhdev/react-bits&#34; /&gt;
&lt;/a&gt;
&lt;h2 id=&#34;maintainers&#34;&gt;Maintainers
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/DavidHDev&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;David Haz&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;stats&#34;&gt;Stats
&lt;/h2&gt;&lt;p&gt;&lt;img src=&#34;https://repobeats.axiom.co/api/embed/b1bf4dc0226458617adbdbf5586f2df953eb0922.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Alt&#34;
	
	
&gt;&lt;/p&gt;
&lt;h2 id=&#34;license&#34;&gt;License
&lt;/h2&gt;&lt;p&gt;Licensed under the &lt;a class=&#34;link&#34; href=&#34;https://github.com/davidhdev/react-bits/blob/main/LICENSE.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;MIT license&lt;/a&gt;.&lt;/p&gt;
</description>
        </item>
        <item>
        <title>mui-x</title>
        <link>https://producthunt.programnotes.cn/en/p/mui-x/</link>
        <pubDate>Mon, 02 Jun 2025 15:32:29 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/mui-x/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1635799944379-7c20f383d352?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NDg4NDk0MTN8&amp;ixlib=rb-4.1.0" alt="Featured image of post mui-x" /&gt;&lt;h1 id=&#34;muimui-x&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/mui/mui-x&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;mui/mui-x&lt;/a&gt;
&lt;/h1&gt;&lt;!-- markdownlint-disable-next-line --&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://mui.com/x/&#34; rel=&#34;noopener&#34; target=&#34;_blank&#34;&gt;&lt;img width=&#34;150&#34; height=&#34;133&#34; src=&#34;https://mui.com/static/logo.svg&#34; alt=&#34;MUI X logo&#34;&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;h1 align=&#34;center&#34;&gt;MUI X&lt;/h1&gt;
&lt;div align=&#34;center&#34;&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/mui/mui-x/blob/HEAD/LICENSE&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/license-MIT-blue.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;License&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-data-grid&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/npm/v/@mui/x-data-grid/latest.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;npm latest package&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-data-grid&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/npm/dm/@mui/x-data-grid.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;npm downloads&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/mui/mui-x/commits/HEAD/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/github/checks-status/mui/mui-x/HEAD&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;GitHub branch status&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://codecov.io/gh/mui/mui-x/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/codecov/c/github/mui/mui-x.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Coverage status&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://x.com/MUI_X_&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/twitter/follow/MUI_X_.svg?label=follow&amp;#43;MUI&amp;#43;X&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Follow on X&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/mui/mui-x/issues/2081&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/renovate-enabled-brightgreen.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Renovate status&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://isitmaintained.com/project/mui/mui-x&#34;  title=&#34;Average time to resolve an issue&#34;
     target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://isitmaintained.com/badge/resolution/mui/mui-x.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Average time to resolve an issue&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://opencollective.com/mui-org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/opencollective/all/mui-org&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Open Collective backers and sponsors&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://www.bestpractices.dev/projects/6293&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://www.bestpractices.dev/projects/6293/badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;OpenSSF Best Practices&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;MUI X&lt;/a&gt; is a suite of advanced React UI components for a wide range of complex use cases.
Each component provides best-in-class UX and DX, with sophisticated UX workflows for data-rich applications.
Components include the Data Grid, Date and Time Pickers, Charts, and Tree View.&lt;/p&gt;
&lt;p&gt;MUI X extends the core functionality of &lt;a class=&#34;link&#34; href=&#34;https://github.com/mui/material-ui/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Material UI&lt;/a&gt;, but the advanced components also stand on their own and can be fully customized to meet the needs of any design system.&lt;/p&gt;
&lt;p&gt;MUI X is &lt;strong&gt;open-core&lt;/strong&gt;: &lt;a class=&#34;link&#34; href=&#34;#community-plan&#34; &gt;Community&lt;/a&gt; components are MIT-licensed and free forever, while more advanced features and components require a &lt;a class=&#34;link&#34; href=&#34;#pro-plan&#34; &gt;Pro&lt;/a&gt; or &lt;a class=&#34;link&#34; href=&#34;#premium-plan&#34; &gt;Premium&lt;/a&gt; commercial license.
See &lt;a class=&#34;link&#34; href=&#34;#licensing&#34; &gt;Licensing&lt;/a&gt; for more information.&lt;/p&gt;
&lt;h2 id=&#34;documentation&#34;&gt;Documentation
&lt;/h2&gt;&lt;p&gt;Get started in the &lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/introduction/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;MUI X documentation&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/react-data-grid/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Data Grid&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/react-date-pickers/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Date and Time Pickers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/react-charts/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Charts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/react-tree-view/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Tree View&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;installation&#34;&gt;Installation
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/react-data-grid/quickstart/#installation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Data Grid installation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/react-date-pickers/quickstart/#installation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Date and Time Pickers installation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/react-charts/quickstart/#installation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Charts installation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/react-tree-view/quickstart/#installation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Tree View installation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;licensing&#34;&gt;Licensing
&lt;/h2&gt;&lt;p&gt;The MUI X team has been building MIT-licensed React components since 2014, starting with Material UI, and we&amp;rsquo;re committed to the continued advancement of our open-source libraries.
Anything we release under an MIT license will remain MIT-licensed forever.
Learn more about &lt;a class=&#34;link&#34; href=&#34;https://mui-org.notion.site/Stewardship-542a2226043d4f4a96dfb429d16cf5bd&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;our stewardship ethos&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We offer commercial licenses to developers who need the most advanced components and features that can&amp;rsquo;t reasonably be maintained by the open-source community alone.
These licenses make it possible for us to support a full-time staff of engineers.&lt;/p&gt;
&lt;p&gt;Rest assured that when we release features commercially, it&amp;rsquo;s only because we believe you won&amp;rsquo;t find a better MIT-licensed alternative anywhere else.&lt;/p&gt;
&lt;p&gt;See the &lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/introduction/licensing/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Licensing page&lt;/a&gt; for complete details.&lt;/p&gt;
&lt;h3 id=&#34;plans&#34;&gt;Plans
&lt;/h3&gt;&lt;h4 id=&#34;community-plan&#34;&gt;Community plan
&lt;/h4&gt;&lt;p&gt;The free Community version of MUI X contains components and features that we believe are maintainable by contributions from the open-source community.
It&amp;rsquo;s published under an &lt;a class=&#34;link&#34; href=&#34;https://www.tldrlegal.com/license/mit-license&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;MIT license&lt;/a&gt; and it&amp;rsquo;s &lt;a class=&#34;link&#34; href=&#34;https://mui-org.notion.site/Stewardship-542a2226043d4f4a96dfb429d16cf5bd#20f609acab4441cf9346614119fbbac1&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;free forever&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-data-grid&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-data-grid&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-date-pickers&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-date-pickers&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-charts&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-charts&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-tree-view&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-tree-view&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;pro-plan&#34;&gt;Pro plan
&lt;/h4&gt;&lt;p&gt;MUI X Pro expands on the Community version with more advanced features and functionality.
The Data Grid Pro comes with multi-filtering, multi-sorting, column resizing, and column pinning; you also gain access to the Date and Time Range Picker components, advanced Charts, and drag-and-drop reordering for the Tree View.&lt;/p&gt;
&lt;p&gt;The Pro version is available under a commercial license—visit the &lt;a class=&#34;link&#34; href=&#34;https://mui.com/pricing/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Pricing page&lt;/a&gt; for details.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-data-grid-pro&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-data-grid-pro&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-date-pickers-pro&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-date-pickers-pro&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-charts-pro&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-charts-pro&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-tree-view-pro&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-tree-view-pro&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;premium-plan&#34;&gt;Premium plan
&lt;/h4&gt;&lt;p&gt;MUI X Premium unlocks the most advanced features of the Data Grid, including row grouping and Excel exporting, as well as everything offered in the Pro plan.&lt;/p&gt;
&lt;p&gt;The Premium version is available under a commercial license—visit the &lt;a class=&#34;link&#34; href=&#34;https://mui.com/pricing/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Pricing page&lt;/a&gt; for details.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/@mui/x-data-grid-premium&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;@mui/x-data-grid-premium&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;support&#34;&gt;Support
&lt;/h2&gt;&lt;p&gt;From community guidance to critical business support, we&amp;rsquo;re here to help.
Read the &lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/introduction/support/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Support guide&lt;/a&gt; for details.&lt;/p&gt;
&lt;h2 id=&#34;contributing&#34;&gt;Contributing
&lt;/h2&gt;&lt;p&gt;Read the &lt;a class=&#34;link&#34; href=&#34;https://producthunt.programnotes.cn/CONTRIBUTING.md&#34; &gt;Contributing guide&lt;/a&gt; to learn about our development process, how to propose bug fixes and improvements, and how to build and test your changes.&lt;/p&gt;
&lt;p&gt;Contributing to MUI X is about more than just issues and pull requests!
There are many other ways to &lt;a class=&#34;link&#34; href=&#34;https://mui.com/material-ui/getting-started/faq/#mui-is-an-awesome-organization-how-can-i-support-it&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;support MUI X&lt;/a&gt; beyond contributing to the code base.&lt;/p&gt;
&lt;h2 id=&#34;changelog&#34;&gt;Changelog
&lt;/h2&gt;&lt;p&gt;The &lt;a class=&#34;link&#34; href=&#34;https://github.com/mui/mui-x/releases&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;changelog&lt;/a&gt; is regularly updated to reflect what&amp;rsquo;s changed in each new release.&lt;/p&gt;
&lt;h2 id=&#34;roadmap&#34;&gt;Roadmap
&lt;/h2&gt;&lt;p&gt;Future plans and high-priority features and enhancements can be found in the &lt;a class=&#34;link&#34; href=&#34;https://mui.com/x/introduction/roadmap/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;roadmap&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;security&#34;&gt;Security
&lt;/h2&gt;&lt;p&gt;For details on supported versions and contact information for reporting security issues, please refer to the &lt;a class=&#34;link&#34; href=&#34;https://github.com/mui/mui-x/security/policy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;security policy&lt;/a&gt;.&lt;/p&gt;
</description>
        </item>
        <item>
        <title>ant-design</title>
        <link>https://producthunt.programnotes.cn/en/p/ant-design/</link>
        <pubDate>Fri, 30 May 2025 15:30:47 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/ant-design/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1727704506402-a0ae0f909862?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NDg1OTAxMDZ8&amp;ixlib=rb-4.1.0" alt="Featured image of post ant-design" /&gt;&lt;h1 id=&#34;ant-designant-design&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;ant-design/ant-design&lt;/a&gt;
&lt;/h1&gt;&lt;div align=&#34;center&#34;&gt;&lt;a name=&#34;readme-top&#34;&gt;&lt;/a&gt;
&lt;img height=&#34;180&#34; src=&#34;https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg&#34;&gt;
&lt;h1&gt;Ant Design&lt;/h1&gt;
&lt;p&gt;An enterprise-class UI design language and React UI library.&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/actions/workflows/test.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/ant-design/ant-design/actions/workflows/test.yml/badge.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;CI status&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://codecov.io/gh/ant-design/ant-design/branch/master&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/codecov/c/github/ant-design/ant-design/master.svg?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;codecov&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://npmjs.org/package/antd&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/npm/v/antd.svg?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;NPM version&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://npmjs.org/package/antd&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/npm/dm/antd.svg?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;NPM downloads&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://bundlephobia.com/package/antd&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://badgen.net/bundlephobia/minzip/antd?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.jsdelivr.com/package/npm/antd&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://data.jsdelivr.com/v1/package/npm/antd/badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://app.fossa.io/projects/git%2Bgithub.com%2Fant-design%2Fant-design?ref=badge_shield&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://app.fossa.io/api/projects/git%2Bgithub.com%2Fant-design%2Fant-design.svg?type=shield&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;FOSSA Status&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://deepwiki.com/ant-design/ant-design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/Chat%20with-DeepWiki%20%f0%9f%a4%96-20B2AA?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;DeepWiki&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://twitter.com/AntDesignUI&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/twitter/follow/AntDesignUI.svg?label=Ant%20Design&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Follow Twitter&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/issues/32498&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/renovate-enabled-brightgreen.svg?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Renovate status&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/actions-cool&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/using-actions--cool-blue?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/umijs/dumi&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/docs%20by-dumi-blue?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;dumi&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/issues?q=is%3Aopen&amp;#43;is%3Aissue&amp;#43;label%3A%22help&amp;#43;wanted%22&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://flat.badgen.net/github/label-issues/ant-design/ant-design/help%20wanted/open&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Issues need help&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;./CHANGELOG.en-US.md&#34; &gt;Changelog&lt;/a&gt; · &lt;a class=&#34;link&#34; href=&#34;https://new-issue.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Report Bug&lt;/a&gt; · &lt;a class=&#34;link&#34; href=&#34;https://new-issue.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Request Feature&lt;/a&gt; · English · &lt;a class=&#34;link&#34; href=&#34;./README-zh_CN.md&#34; &gt;中文&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;-sponsors-and-backers&#34;&gt;❤️ Sponsors and Backers &lt;a class=&#34;link&#34; href=&#34;https://opencollective.com/ant-design#support&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://opencollective.com/ant-design/tiers/sponsors/badge.svg?label=Sponsors&amp;amp;color=brightgreen&#34;
	
	
	
	loading=&#34;lazy&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://opencollective.com/ant-design#support&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://opencollective.com/ant-design/tiers/backers/badge.svg?label=Backers&amp;amp;color=brightgreen&#34;
	
	
	
	loading=&#34;lazy&#34;
	
	
&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://opencollective.com/ant-design/contribute/sponsors-218/checkout&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://opencollective.com/ant-design/tiers/sponsors.svg?avatarHeight=72&#34;
	
	
	
	loading=&#34;lazy&#34;
	
	
&gt;&lt;/a&gt; &lt;a class=&#34;link&#34; href=&#34;https://opencollective.com/ant-design/contribute/backers-217/checkout&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://opencollective.com/ant-design/tiers/backers.svg?avatarHeight=72&#34;
	
	
	
	loading=&#34;lazy&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://user-images.githubusercontent.com/507615/209472919-6f7e8561-be8c-4b0b-9976-eb3c692aa20a.png&#34;
	
	
	
	loading=&#34;lazy&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;-features&#34;&gt;✨ Features
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;🌈 Enterprise-class UI designed for web applications.&lt;/li&gt;
&lt;li&gt;📦 A set of high-quality React components out of the box.&lt;/li&gt;
&lt;li&gt;🛡 Written in TypeScript with predictable static types.&lt;/li&gt;
&lt;li&gt;⚙️ Whole package of design resources and development tools.&lt;/li&gt;
&lt;li&gt;🌍 Internationalization support for dozens of languages.&lt;/li&gt;
&lt;li&gt;🎨 Powerful theme customization based on CSS-in-JS.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-environment-support&#34;&gt;🖥 Environment Support
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Modern browsers&lt;/li&gt;
&lt;li&gt;Server-side Rendering&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.electronjs.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Electron&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;&lt;a class=&#34;link&#34; href=&#34;https://godban.github.io/browsers-support-badges/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png&#34; alt=&#34;Edge&#34; width=&#34;24px&#34; height=&#34;24px&#34; /&gt;&lt;/a&gt;&lt;br&gt;Edge&lt;/th&gt;
          &lt;th&gt;&lt;a class=&#34;link&#34; href=&#34;https://godban.github.io/browsers-support-badges/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png&#34; alt=&#34;Firefox&#34; width=&#34;24px&#34; height=&#34;24px&#34; /&gt;&lt;/a&gt;&lt;br&gt;Firefox&lt;/th&gt;
          &lt;th&gt;&lt;a class=&#34;link&#34; href=&#34;https://godban.github.io/browsers-support-badges/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png&#34; alt=&#34;Chrome&#34; width=&#34;24px&#34; height=&#34;24px&#34; /&gt;&lt;/a&gt;&lt;br&gt;Chrome&lt;/th&gt;
          &lt;th&gt;&lt;a class=&#34;link&#34; href=&#34;https://godban.github.io/browsers-support-badges/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png&#34; alt=&#34;Safari&#34; width=&#34;24px&#34; height=&#34;24px&#34; /&gt;&lt;/a&gt;&lt;br&gt;Safari&lt;/th&gt;
          &lt;th&gt;&lt;a class=&#34;link&#34; href=&#34;https://godban.github.io/browsers-support-badges/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://raw.githubusercontent.com/alrra/browser-logos/master/src/electron/electron_48x48.png&#34; alt=&#34;Electron&#34; width=&#34;24px&#34; height=&#34;24px&#34; /&gt;&lt;/a&gt;&lt;br&gt;Electron&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Edge&lt;/td&gt;
          &lt;td&gt;last 2 versions&lt;/td&gt;
          &lt;td&gt;last 2 versions&lt;/td&gt;
          &lt;td&gt;last 2 versions&lt;/td&gt;
          &lt;td&gt;last 2 versions&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;-install&#34;&gt;📦 Install
&lt;/h2&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install antd
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;yarn add antd
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pnpm add antd
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bun add antd
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;-usage&#34;&gt;🔨 Usage
&lt;/h2&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-tsx&#34; data-lang=&#34;tsx&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kr&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;Button&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;DatePicker&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;kr&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;antd&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kr&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;default&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;&amp;lt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;Button&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;type&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;primary&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;PRESS&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;ME&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;Button&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;DatePicker&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;placeholder&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;select date&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;&amp;lt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;-links&#34;&gt;🔗 Links
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://ant.design/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Home page&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://ant.design/components/overview&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Components Overview&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;CHANGELOG.en-US.md&#34; &gt;Change Log&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://react-component.github.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;rc-components&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://x.ant.design/index-cn&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🆕 Ant Design X&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://pro.ant.design/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ant Design Pro&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://procomponents.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Pro Components&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mobile.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ant Design Mobile&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mini.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ant Design Mini&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://charts.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ant Design Charts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://web3.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ant Design Web3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://landing.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Landing Pages&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://motion.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ant Motion&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://scaffold.ant.design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Scaffold Market&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/wiki/Development&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Developer Instruction&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/wiki/%E8%BD%AE%E5%80%BC%E8%A7%84%E5%88%99%E5%92%8C%E7%89%88%E6%9C%AC%E5%8F%91%E5%B8%83%E6%B5%81%E7%A8%8B&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Versioning Release Note&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://ant.design/docs/react/faq&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;FAQ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://u.ant.design/reproduce&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Online Playground&lt;/a&gt; for bug reports&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://ant.design/docs/react/customize-theme&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Customize Theme&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/wiki/Collaborators#how-to-apply-for-being-a-collaborator&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;How to Apply for Being A Collaborator&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-development&#34;&gt;⌨️ Development
&lt;/h2&gt;&lt;p&gt;Use &lt;a class=&#34;link&#34; href=&#34;https://opensumi.run&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;opensumi.run&lt;/a&gt;, a free online pure front-end dev environment.&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://opensumi.run/ide/ant-design/ant-design&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://custom-icon-badges.demolab.com/badge/opensumi-run-blue.svg?logo=opensumi&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;opensumi.run&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Or clone locally:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ git clone git@github.com:ant-design/ant-design.git
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ &lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ant-design
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ npm install
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ npm start
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Open your browser and visit http://127.0.0.1:8001, see more at &lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/wiki/Development&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Development&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;-contributing-prs-welcome&#34;&gt;🤝 Contributing &lt;a class=&#34;link&#34; href=&#34;https://makeapullrequest.com&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;PRs Welcome&#34;
	
	
&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;table&gt;
&lt;tr&gt;
  &lt;td&gt;
    &lt;a href=&#34;https://next.ossinsight.io/widgets/official/compose-recent-top-contributors?repo_id=34526884&#34; target=&#34;_blank&#34; style=&#34;display: block&#34; align=&#34;center&#34;&gt;
      &lt;picture&gt;
        &lt;source media=&#34;(prefers-color-scheme: dark)&#34; srcset=&#34;https://next.ossinsight.io/widgets/official/compose-recent-top-contributors/thumbnail.png?repo_id=34526884&amp;image_size=auto&amp;color_scheme=dark&#34; width=&#34;280&#34;&gt;
        &lt;img alt=&#34;Top Contributors of ant-design/ant-design - Last 28 days&#34; src=&#34;https://next.ossinsight.io/widgets/official/compose-recent-top-contributors/thumbnail.png?repo_id=34526884&amp;image_size=auto&amp;color_scheme=light&#34; width=&#34;280&#34;&gt;
      &lt;/picture&gt;
    &lt;/a&gt;
  &lt;/td&gt;
  &lt;td rowspan=&#34;2&#34;&gt;
    &lt;a href=&#34;https://next.ossinsight.io/widgets/official/compose-last-28-days-stats?repo_id=34526884&#34; target=&#34;_blank&#34; style=&#34;display: block&#34; align=&#34;center&#34;&gt;
      &lt;picture&gt;
        &lt;source media=&#34;(prefers-color-scheme: dark)&#34; srcset=&#34;https://next.ossinsight.io/widgets/official/compose-last-28-days-stats/thumbnail.png?repo_id=34526884&amp;image_size=auto&amp;color_scheme=dark&#34; width=&#34;655&#34; height=&#34;auto&#34;&gt;
        &lt;img alt=&#34;Performance Stats of ant-design/ant-design - Last 28 days&#34; src=&#34;https://next.ossinsight.io/widgets/official/compose-last-28-days-stats/thumbnail.png?repo_id=34526884&amp;image_size=auto&amp;color_scheme=light&#34; width=&#34;655&#34; height=&#34;auto&#34;&gt;
      &lt;/picture&gt;
    &lt;/a&gt;
  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;
    &lt;a href=&#34;https://next.ossinsight.io/widgets/official/compose-org-active-contributors?period=past_28_days&amp;activity=new&amp;owner_id=12101536&amp;repo_ids=34526884&#34; target=&#34;_blank&#34; style=&#34;display: block&#34; align=&#34;center&#34;&gt;
      &lt;picture&gt;
        &lt;source media=&#34;(prefers-color-scheme: dark)&#34; srcset=&#34;https://next.ossinsight.io/widgets/official/compose-org-active-contributors/thumbnail.png?period=past_28_days&amp;activity=new&amp;owner_id=12101536&amp;repo_ids=34526884&amp;image_size=2x3&amp;color_scheme=dark&#34; width=&#34;273&#34; height=&#34;auto&#34;&gt;
        &lt;img alt=&#34;New participants of ant-design - past 28 days&#34; src=&#34;https://next.ossinsight.io/widgets/official/compose-org-active-contributors/thumbnail.png?period=past_28_days&amp;activity=new&amp;owner_id=12101536&amp;repo_ids=34526884&amp;image_size=2x3&amp;color_scheme=light&#34; width=&#34;273&#34; height=&#34;auto&#34;&gt;
      &lt;/picture&gt;
    &lt;/a&gt;
  &lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;a href=&#34;https://openomy.app/github/ant-design/ant-design&#34; target=&#34;_blank&#34; style=&#34;display: block; width: 100%;&#34; align=&#34;center&#34;&gt;
  &lt;img src=&#34;https://openomy.app/svg?repo=ant-design/ant-design&amp;chart=bubble&amp;latestMonth=3&#34; target=&#34;_blank&#34; alt=&#34;Contribution Leaderboard&#34; style=&#34;display: block; width: 100%;&#34; /&gt;
&lt;/a&gt;
&lt;p&gt;Let&amp;rsquo;s build a better antd together.&lt;/p&gt;
&lt;p&gt;We warmly invite contributions from everyone. Before you get started, please take a moment to review our &lt;a class=&#34;link&#34; href=&#34;https://ant.design/docs/react/contributing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Contribution Guide&lt;/a&gt;. Feel free to share your ideas through &lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/pulls&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Pull Requests&lt;/a&gt; or &lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub Issues&lt;/a&gt;. If you&amp;rsquo;re interested in enhancing our codebase, explore the &lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/wiki/Development&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Development Instructions&lt;/a&gt; and enjoy your coding journey! :)&lt;/p&gt;
&lt;p&gt;For collaborators, adhere to our &lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/wiki/PR-principle&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Pull Request Principle&lt;/a&gt; and utilize our &lt;a class=&#34;link&#34; href=&#34;https://github.com/ant-design/ant-design/wiki/PR-principle#pull-request-template&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Pull Request Template&lt;/a&gt; when creating a Pull Request.&lt;/p&gt;
&lt;h2 id=&#34;issue-funding&#34;&gt;Issue funding
&lt;/h2&gt;&lt;p&gt;We use &lt;a class=&#34;link&#34; href=&#34;https://issuehunt.io/repos/3452688&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Issuehunt&lt;/a&gt; to up-vote and promote specific features that you would like to see and implement. Check our backlog and help us:&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://issuehunt.io/repos/34526884&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://raw.githubusercontent.com/BoostIO/issuehunt-materials/master/v1/issuehunt-button-v1.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Let’s fund issues in this repository&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
</description>
        </item>
        <item>
        <title>angular</title>
        <link>https://producthunt.programnotes.cn/en/p/angular/</link>
        <pubDate>Fri, 30 May 2025 15:30:26 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/angular/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1647506596841-eea4ef80e807?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NDg1OTAxMDZ8&amp;ixlib=rb-4.1.0" alt="Featured image of post angular" /&gt;&lt;h1 id=&#34;angularangular&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/angular/angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;angular/angular&lt;/a&gt;
&lt;/h1&gt;&lt;h1 align=&#34;center&#34;&gt;Angular - The modern web developer&#39;s platform&lt;/h1&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;adev/src/assets/images/press-kit/angular_icon_gradient.gif&#34; alt=&#34;angular-logo&#34; width=&#34;120px&#34; height=&#34;120px&#34;/&gt;
  &lt;br&gt;
  &lt;em&gt;Angular is a development platform for building mobile and desktop web applications
    &lt;br&gt; using TypeScript/JavaScript and other languages.&lt;/em&gt;
  &lt;br&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://angular.dev/&#34;&gt;&lt;strong&gt;angular.dev&lt;/strong&gt;&lt;/a&gt;
  &lt;br&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;CONTRIBUTING.md&#34;&gt;Contributing Guidelines&lt;/a&gt;
  ·
  &lt;a href=&#34;https://github.com/angular/angular/issues&#34;&gt;Submit an Issue&lt;/a&gt;
  ·
  &lt;a href=&#34;https://blog.angular.dev/&#34;&gt;Blog&lt;/a&gt;
  &lt;br&gt;
  &lt;br&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://www.npmjs.com/@angular/core&#34;&gt;
    &lt;img src=&#34;https://img.shields.io/npm/v/@angular/core.svg?logo=npm&amp;logoColor=fff&amp;label=NPM+package&amp;color=limegreen&#34; alt=&#34;Angular on npm&#34; /&gt;
  &lt;/a&gt;
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;documentation&#34;&gt;Documentation
&lt;/h2&gt;&lt;p&gt;Get started with Angular, learn the fundamentals and explore advanced topics on our documentation website.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/tutorials/learn-angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Getting Started&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/essentials&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Architecture&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/tutorials/learn-angular/1-components-in-angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Components and Templates&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/tutorials/learn-angular/15-forms&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Forms&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/api&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;API&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;advanced&#34;&gt;Advanced
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/guide/elements&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Angular Elements&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/guide/ssr&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Server Side Rendering&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/tools/cli/schematics&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Schematics&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/guide/ngmodules/lazy-loading&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Lazy Loading&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/guide/animations&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Animations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;local-development&#34;&gt;Local Development
&lt;/h3&gt;&lt;p&gt;To contribute to the Angular Docs, check out the &lt;a class=&#34;link&#34; href=&#34;adev/README.md&#34; &gt;Angular.dev README&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;development-setup&#34;&gt;Development Setup
&lt;/h2&gt;&lt;h3 id=&#34;prerequisites&#34;&gt;Prerequisites
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Install &lt;a class=&#34;link&#34; href=&#34;https://nodejs.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Node.js&lt;/a&gt; which includes &lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/get-npm&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Node Package Manager&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;setting-up-a-project&#34;&gt;Setting Up a Project
&lt;/h3&gt;&lt;p&gt;Install the Angular CLI globally:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install -g @angular/cli
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Create workspace:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ng new [PROJECT NAME]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Run the application:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cd [PROJECT NAME]
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ng serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Angular is cross-platform, fast, scalable, has incredible tooling, and is loved by millions.&lt;/p&gt;
&lt;h2 id=&#34;quickstart&#34;&gt;Quickstart
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/tutorials/learn-angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Get started in 5 minutes&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;ecosystem&#34;&gt;Ecosystem
&lt;/h2&gt;&lt;p&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://angular.dev/tools/cli&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Angular Command Line (CLI)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://material.angular.dev/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Angular Material&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;changelog&#34;&gt;Changelog
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;CHANGELOG.md&#34; &gt;Learn about the latest improvements&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;upgrading&#34;&gt;Upgrading
&lt;/h2&gt;&lt;p&gt;Check out our &lt;a class=&#34;link&#34; href=&#34;https://angular.dev/update-guide/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;upgrade guide&lt;/a&gt; to find out the best way to upgrade your project.&lt;/p&gt;
&lt;h2 id=&#34;contributing&#34;&gt;Contributing
&lt;/h2&gt;&lt;h3 id=&#34;contributing-guidelines&#34;&gt;Contributing Guidelines
&lt;/h3&gt;&lt;p&gt;Read through our &lt;a class=&#34;link&#34; href=&#34;CONTRIBUTING.md&#34; &gt;contributing guidelines&lt;/a&gt; to learn about our submission process, coding rules, and more.&lt;/p&gt;
&lt;h3 id=&#34;want-to-help&#34;&gt;Want to Help?
&lt;/h3&gt;&lt;p&gt;Want to report a bug, contribute some code, or improve the documentation? Excellent! Read up on our guidelines for &lt;a class=&#34;link&#34; href=&#34;CONTRIBUTING.md&#34; &gt;contributing&lt;/a&gt; and then check out one of our issues labeled as &lt;kbd&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/angular/angular/labels/help%20wanted&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;help wanted&lt;/a&gt;&lt;/kbd&gt; or &lt;kbd&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/angular/angular/labels/good%20first%20issue&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;good first issue&lt;/a&gt;&lt;/kbd&gt;.&lt;/p&gt;
&lt;h3 id=&#34;code-of-conduct&#34;&gt;Code of Conduct
&lt;/h3&gt;&lt;p&gt;Help us keep Angular open and inclusive. Please read and follow our &lt;a class=&#34;link&#34; href=&#34;CODE_OF_CONDUCT.md&#34; &gt;Code of Conduct&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;community&#34;&gt;Community
&lt;/h2&gt;&lt;p&gt;Join the conversation and help the community.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.twitter.com/angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;X (formerly Twitter)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://bsky.app/profile/angular.dev&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Bluesky&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://discord.gg/angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Discord&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://youtube.com/angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;YouTube&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://stackoverflow.com/questions/tagged/angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;StackOverflow&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Find a Local &lt;a class=&#34;link&#34; href=&#34;https://www.meetup.com/find/?keywords=angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Meetup&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.github.com/angular/angular&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/angular-love-blue?logo=angular&amp;amp;angular=love&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Love Angular badge&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Love Angular? Give our repo a star :star: :arrow_up:.&lt;/strong&gt;&lt;/p&gt;
</description>
        </item>
        <item>
        <title>react-native</title>
        <link>https://producthunt.programnotes.cn/en/p/react-native/</link>
        <pubDate>Fri, 30 May 2025 15:30:06 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/react-native/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1624291732728-651136d8a3d4?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NDg1OTAxMDZ8&amp;ixlib=rb-4.1.0" alt="Featured image of post react-native" /&gt;&lt;h1 id=&#34;facebookreact-native&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/react-native&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;facebook/react-native&lt;/a&gt;
&lt;/h1&gt;&lt;h1 align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://reactnative.dev/&#34;&gt;
    React Native
  &lt;/a&gt;
&lt;/h1&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;strong&gt;Learn once, write anywhere:&lt;/strong&gt;&lt;br&gt;
  Build mobile apps with React.
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://github.com/facebook/react-native/blob/HEAD/LICENSE&#34;&gt;
    &lt;img src=&#34;https://img.shields.io/badge/license-MIT-blue.svg&#34; alt=&#34;React Native is released under the MIT license.&#34; /&gt;
  &lt;/a&gt;
  &lt;a href=&#34;https://www.npmjs.org/package/react-native&#34;&gt;
    &lt;img src=&#34;https://img.shields.io/npm/v/react-native?color=brightgreen&amp;label=npm%20package&#34; alt=&#34;Current npm package version.&#34; /&gt;
  &lt;/a&gt;
  &lt;a href=&#34;https://reactnative.dev/docs/contributing&#34;&gt;
    &lt;img src=&#34;https://img.shields.io/badge/PRs-welcome-brightgreen.svg&#34; alt=&#34;PRs welcome!&#34; /&gt;
  &lt;/a&gt;
  &lt;a href=&#34;https://twitter.com/intent/follow?screen_name=reactnative&#34;&gt;
    &lt;img src=&#34;https://img.shields.io/twitter/follow/reactnative.svg?label=Follow%20@reactnative&#34; alt=&#34;Follow @reactnative&#34; /&gt;
  &lt;/a&gt;
&lt;/p&gt;
&lt;h3 align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://reactnative.dev/docs/getting-started&#34;&gt;Getting Started&lt;/a&gt;
  &lt;span&gt; · &lt;/span&gt;
  &lt;a href=&#34;https://reactnative.dev/docs/tutorial&#34;&gt;Learn the Basics&lt;/a&gt;
  &lt;span&gt; · &lt;/span&gt;
  &lt;a href=&#34;https://reactnative.dev/showcase&#34;&gt;Showcase&lt;/a&gt;
  &lt;span&gt; · &lt;/span&gt;
  &lt;a href=&#34;https://reactnative.dev/docs/contributing&#34;&gt;Contribute&lt;/a&gt;
  &lt;span&gt; · &lt;/span&gt;
  &lt;a href=&#34;https://reactnative.dev/help&#34;&gt;Community&lt;/a&gt;
  &lt;span&gt; · &lt;/span&gt;
  &lt;a href=&#34;https://github.com/facebook/react-native/blob/HEAD/.github/SUPPORT.md&#34;&gt;Support&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;React Native brings &lt;a class=&#34;link&#34; href=&#34;https://react.dev/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;React&lt;/strong&gt;&amp;rsquo;s&lt;/a&gt; declarative UI framework to iOS and Android. With React Native, you use native UI controls and have full access to the native platform.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Declarative.&lt;/strong&gt; React makes it painless to create interactive UIs. Declarative views make your code more predictable and easier to debug.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Component-Based.&lt;/strong&gt; Build encapsulated components that manage their state, then compose them to make complex UIs.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Developer Velocity.&lt;/strong&gt; See local changes in seconds. Changes to JavaScript code can be live reloaded without rebuilding the native app.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Portability.&lt;/strong&gt; Reuse code across iOS, Android, and &lt;a class=&#34;link&#34; href=&#34;https://reactnative.dev/docs/out-of-tree-platforms&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;other platforms&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;React Native is developed and supported by many companies and individual core contributors. Find out more in our &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/react-native/blob/HEAD/ECOSYSTEM.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;ecosystem overview&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;contents&#34;&gt;Contents
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#-requirements&#34; &gt;Requirements&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#-building-your-first-react-native-app&#34; &gt;Building your first React Native app&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#-documentation&#34; &gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#-upgrading&#34; &gt;Upgrading&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#-how-to-contribute&#34; &gt;How to Contribute&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#code-of-conduct&#34; &gt;Code of Conduct&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#-license&#34; &gt;License&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-requirements&#34;&gt;📋 Requirements
&lt;/h2&gt;&lt;p&gt;React Native apps may target iOS 15.1 and Android 7.0 (API 24) or newer. You may use Windows, macOS, or Linux as your development operating system, though building and running iOS apps is limited to macOS. Tools like &lt;a class=&#34;link&#34; href=&#34;https://expo.dev&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Expo&lt;/a&gt; can be used to work around this.&lt;/p&gt;
&lt;h2 id=&#34;-building-your-first-react-native-app&#34;&gt;🎉 Building your first React Native app
&lt;/h2&gt;&lt;p&gt;Follow the &lt;a class=&#34;link&#34; href=&#34;https://reactnative.dev/docs/getting-started&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Getting Started guide&lt;/a&gt;. The recommended way to install React Native depends on your project. Here you can find short guides for the most common scenarios:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://snack.expo.dev/@samples/hello-world&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Trying out React Native&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://reactnative.dev/docs/getting-started&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Creating a New Application&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://reactnative.dev/docs/integration-with-existing-apps&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Adding React Native to an Existing Application&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-documentation&#34;&gt;📖 Documentation
&lt;/h2&gt;&lt;p&gt;The full documentation for React Native can be found on our &lt;a class=&#34;link&#34; href=&#34;https://reactnative.dev/docs/getting-started&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;website&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The React Native documentation discusses components, APIs, and topics that are specific to React Native. For further documentation on the React API that is shared between React Native and React DOM, refer to the &lt;a class=&#34;link&#34; href=&#34;https://react.dev/learn&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;React documentation&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The source for the React Native documentation and website is hosted on a separate repository, &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/react-native-website&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;@facebook/react-native-website&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;-upgrading&#34;&gt;🚀 Upgrading
&lt;/h2&gt;&lt;p&gt;Upgrading to new versions of React Native may give you access to more APIs, views, developer tools, and other goodies. See the &lt;a class=&#34;link&#34; href=&#34;https://reactnative.dev/docs/upgrading&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Upgrading Guide&lt;/a&gt; for instructions.&lt;/p&gt;
&lt;p&gt;React Native releases are discussed &lt;a class=&#34;link&#34; href=&#34;https://github.com/reactwg/react-native-releases/discussions&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;in this discussion repo&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;-how-to-contribute&#34;&gt;👏 How to Contribute
&lt;/h2&gt;&lt;p&gt;The main purpose of this repository is to continue evolving React Native core. We want to make contributing to this project as easy and transparent as possible, and we are grateful to the community for contributing bug fixes and improvements. Read below to learn how you can take part in improving React Native.&lt;/p&gt;
&lt;h3 id=&#34;code-of-conduct&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://code.fb.com/codeofconduct/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Code of Conduct&lt;/a&gt;
&lt;/h3&gt;&lt;p&gt;Facebook has adopted a Code of Conduct that we expect project participants to adhere to.
Please read the &lt;a class=&#34;link&#34; href=&#34;https://code.fb.com/codeofconduct/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;full text&lt;/a&gt; so that you can understand what actions will and will not be tolerated.&lt;/p&gt;
&lt;h3 id=&#34;contributing-guide&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://reactnative.dev/docs/contributing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Contributing Guide&lt;/a&gt;
&lt;/h3&gt;&lt;p&gt;Read our &lt;a class=&#34;link&#34; href=&#34;https://reactnative.dev/docs/contributing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;Contributing Guide&lt;/strong&gt;&lt;/a&gt; to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to React Native.&lt;/p&gt;
&lt;h3 id=&#34;open-source-roadmap&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/react-native/wiki/Roadmap&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Open Source Roadmap&lt;/a&gt;
&lt;/h3&gt;&lt;p&gt;You can learn more about our vision for React Native in the &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/react-native/wiki/Roadmap&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;Roadmap&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;good-first-issues&#34;&gt;Good First Issues
&lt;/h3&gt;&lt;p&gt;We have a list of &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/react-native/labels/good%20first%20issue&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;good first issues&lt;/a&gt; that contain bugs which have a relatively limited scope. This is a great place to get started, gain experience, and get familiar with our contribution process.&lt;/p&gt;
&lt;h3 id=&#34;discussions&#34;&gt;Discussions
&lt;/h3&gt;&lt;p&gt;Larger discussions and proposals are discussed in &lt;a class=&#34;link&#34; href=&#34;https://github.com/react-native-community/discussions-and-proposals&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;@react-native-community/discussions-and-proposals&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;-license&#34;&gt;📄 License
&lt;/h2&gt;&lt;p&gt;React Native is MIT licensed, as found in the &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebook/react-native/blob/main/LICENSE&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LICENSE&lt;/a&gt; file.&lt;/p&gt;
</description>
        </item>
        <item>
        <title>nue</title>
        <link>https://producthunt.programnotes.cn/en/p/nue/</link>
        <pubDate>Sun, 06 Apr 2025 15:24:51 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/nue/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1498962342534-ee08a0bb1d45?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NDM5MjQyODJ8&amp;ixlib=rb-4.0.3" alt="Featured image of post nue" /&gt;&lt;h1 id=&#34;nuejsnue&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/nuejs/nue&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;nuejs/nue&lt;/a&gt;
&lt;/h1&gt;&lt;p&gt;packages/nuekit/README.md&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
