Skip to content

Commit 9f91fb4

Browse files
author
jpoole
committed
Add Please
1 parent f66c9c7 commit 9f91fb4

File tree

5 files changed

+266
-54
lines changed

5 files changed

+266
-54
lines changed

libs/website/ui-home/src/lib/introduction.tsx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,15 @@ export function Introduction() {
123123
Pants (by the Pants Build community)
124124
</a>
125125
,&nbsp;
126+
<a
127+
href="https://please.build/?utm_source=monorepo.tools"
128+
rel="noreferrer"
129+
target="_blank"
130+
className="border-b border-yellow-500 transition hover:rounded hover:bg-yellow-500 hover:text-gray-800"
131+
>
132+
Please (by Thought Machine)
133+
</a>
134+
,&nbsp;
126135
<a
127136
rel="noreferrer"
128137
target="_blank"

libs/website/ui-home/src/lib/monorepo-features.tsx

Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,16 @@ export function MonorepoFeatures() {
207207
Turborepo supports it.
208208
</dd>
209209
</div>
210+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
211+
<dt>
212+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
213+
<Supported /> Please
214+
</p>
215+
</dt>
216+
<dd className="mt-4 text-gray-600 dark:text-gray-400">
217+
Please supports it.
218+
</dd>
219+
</div>
210220
</dl>
211221
</div>
212222

@@ -333,6 +343,16 @@ export function MonorepoFeatures() {
333343
Turborepo supports it.
334344
</dd>
335345
</div>
346+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
347+
<dt>
348+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
349+
<Supported /> Please
350+
</p>
351+
</dt>
352+
<dd className="mt-4 text-gray-600 dark:text-gray-400">
353+
Please supports it.
354+
</dd>
355+
</div>
336356
</dl>
337357
</div>
338358

@@ -458,6 +478,16 @@ export function MonorepoFeatures() {
458478
Turborepo supports it.
459479
</dd>
460480
</div>
481+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
482+
<dt>
483+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
484+
<Supported /> Please
485+
</p>
486+
</dt>
487+
<dd className="mt-4 text-gray-600 dark:text-gray-400">
488+
Please supports it.
489+
</dd>
490+
</div>
461491
</dl>
462492
</div>
463493

@@ -586,6 +616,17 @@ export function MonorepoFeatures() {
586616
Turborepo doesn't support it.
587617
</dd>
588618
</div>
619+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
620+
<dt>
621+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
622+
<Supported /> Please
623+
</p>
624+
</dt>
625+
<dd className="mt-4 text-base text-gray-600 dark:text-gray-400">
626+
Please supports it through the same remote execution API as Bazel, however there are some compatibility
627+
issues with many of the remote execution API providers.
628+
</dd>
629+
</div>
589630
</dl>
590631
</div>
591632

@@ -698,6 +739,17 @@ export function MonorepoFeatures() {
698739
Turborepo doesn't support it.
699740
</dd>
700741
</div>
742+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
743+
<dt>
744+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
745+
<Supported /> Please
746+
</p>
747+
</dt>
748+
<dd className="mt-4 text-base text-gray-600 dark:text-gray-400">
749+
Please supports it similarly to Bazel and Pants, however, there are some compatibility issues with
750+
many of the third party providers.
751+
</dd>
752+
</div>
701753
</dl>
702754
</div>
703755

@@ -834,6 +886,16 @@ export function MonorepoFeatures() {
834886
Turborepo supports it.
835887
</dd>
836888
</div>
889+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
890+
<dt>
891+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
892+
<Supported /> Please
893+
</p>
894+
</dt>
895+
<dd className="mt-4 text-base text-gray-600 dark:text-gray-400">
896+
Please supports querying changed packages based on the git diff.
897+
</dd>
898+
</div>
837899
</dl>
838900
</div>
839901

@@ -970,6 +1032,17 @@ export function MonorepoFeatures() {
9701032
Turborepo analyses package.json files.
9711033
</dd>
9721034
</div>
1035+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
1036+
<dt>
1037+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
1038+
<Supported /> Please
1039+
</p>
1040+
</dt>
1041+
<dd className="mt-4 text-gray-600 dark:text-gray-400">
1042+
The query sub-command can be used to query the build graph in a multitude of ways. The build graph
1043+
is computed statically, so the entire build can be analysed in this way.
1044+
</dd>
1045+
</div>
9731046
</dl>
9741047
</div>
9751048

@@ -1106,6 +1179,17 @@ export function MonorepoFeatures() {
11061179
of the execution plan. The implementation is not interactive.
11071180
</dd>
11081181
</div>
1182+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
1183+
<dt>
1184+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
1185+
<ManualImplementation /> Please
1186+
</p>
1187+
</dt>
1188+
<dd className="mt-4 text-gray-600 dark:text-gray-400">
1189+
The build graph can be outputted as json, which could then be visualized by another tool. You can also
1190+
print a dependency tree for a given target in the terminal.
1191+
</dd>
1192+
</div>
11091193
</dl>
11101194
</div>
11111195

@@ -1251,6 +1335,19 @@ export function MonorepoFeatures() {
12511335
Turborepo supports it. Only npm packages can be shared.
12521336
</dd>
12531337
</div>
1338+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
1339+
<dt>
1340+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
1341+
<Supported />
1342+
Please
1343+
</p>
1344+
</dt>
1345+
<dd className="mt-4 text-gray-600 dark:text-gray-400">
1346+
Please supports building and packaging through the standard idioms of the language. It also supports
1347+
exporting targets from the codebase, including all dependencies and build configuration. Additionally,
1348+
other Please projects added to the project seamlessly through subrepos.
1349+
</dd>
1350+
</div>
12541351
</dl>
12551352
</div>
12561353

@@ -1401,6 +1498,18 @@ export function MonorepoFeatures() {
14011498
be installed.
14021499
</dd>
14031500
</div>
1501+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
1502+
<dt>
1503+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
1504+
<Supported />
1505+
Please
1506+
</p>
1507+
</dt>
1508+
<dd className="mt-4 text-base text-gray-600 dark:text-gray-400">
1509+
This is a key feature of Please. Not only can it be extended with other build targets, but the CLI can
1510+
be extended with new verbs, or even entire tools.
1511+
</dd>
1512+
</div>
14041513
</dl>
14051514
</div>
14061515

@@ -1541,6 +1650,18 @@ export function MonorepoFeatures() {
15411650
External generators can be used.
15421651
</dd>
15431652
</div>
1653+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
1654+
<dt>
1655+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
1656+
<ManualImplementation />
1657+
Please
1658+
</p>
1659+
</dt>
1660+
<dd className="mt-4 text-base text-gray-600 dark:text-gray-400">
1661+
Please supports code generation for protobuf for go, Python, Java, Javascript, and C/C++. Otherwise,
1662+
Please can be extended to support other tools.
1663+
</dd>
1664+
</div>
15441665
</dl>
15451666
</div>
15461667

@@ -1687,6 +1808,17 @@ export function MonorepoFeatures() {
16871808
be used to ensure that some constraints hold.
16881809
</dd>
16891810
</div>
1811+
<div className="rounded-md border border-slate-200 bg-slate-100 p-4 dark:border-black dark:bg-slate-900">
1812+
<dt>
1813+
<p className="inline-flex items-center justify-center rounded-md bg-slate-50 px-3 py-2 text-sm uppercase tracking-widest text-gray-700 dark:bg-slate-800 dark:text-gray-300">
1814+
<Supported />
1815+
Please
1816+
</p>
1817+
</dt>
1818+
<dd className="mt-4 text-base text-gray-600 dark:text-gray-400">
1819+
Please support the same visibility rules as Bazel.
1820+
</dd>
1821+
</div>
16901822
</dl>
16911823
</div>
16921824
</div>

libs/website/ui-home/src/lib/monorepo-tools-logos.tsx

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,19 @@ const tools2: { name: string; link: string }[] = [
2727
name: 'Pants',
2828
link: 'https://github.com/pantsbuild/pants?utm_source=monorepo.tools',
2929
},
30+
{
31+
name: 'Please',
32+
link: 'https://github.com/thought-machine/please?utm_source=monorepo.tools',
33+
},
3034
{
3135
name: 'Rush',
3236
link: 'https://github.com/microsoft/rushstack?utm_source=monorepo.tools',
3337
},
38+
39+
];
40+
41+
const tools3: { name: string; link: string }[] = [
42+
// Alphabetical order
3443
{
3544
name: 'Turborepo',
3645
link: 'https://github.com/vercel/turborepo?utm_source=monorepo.tools',
@@ -40,7 +49,7 @@ const tools2: { name: string; link: string }[] = [
4049
export function MonorepoToolsLogos() {
4150
return (
4251
<>
43-
<div className="mt-8 grid grid-cols-4 gap-0.5 pt-12 text-lg font-semibold lg:mt-16 lg:pt-16 lg:text-2xl">
52+
<div className="mt-8 grid grid-cols-4 gap-0.5 pt-12 text-lg font-semibold lg:mt-16 lg:pt-16 lg:text-2xl">
4453
{tools1.map((tool) => (
4554
<a
4655
key={'tool-' + tool.name}
@@ -54,7 +63,7 @@ export function MonorepoToolsLogos() {
5463
</a>
5564
))}
5665
</div>
57-
<div className="mt-4 grid grid-cols-4 gap-0.5 pb-12 text-lg font-semibold lg:mb-16 lg:pb-16 lg:text-2xl">
66+
<div className="mt-4 grid grid-cols-4 gap-0.5 text-lg font-semibold lg:text-2xl">
5867
{tools2.map((tool) => (
5968
<a
6069
key={'tool-' + tool.name}
@@ -68,6 +77,20 @@ export function MonorepoToolsLogos() {
6877
</a>
6978
))}
7079
</div>
80+
<div className="mt-4 grid grid-cols-4 gap-0.5 pb-12 text-lg font-semibold lg:mb-16 lg:pb-16 lg:text-2xl">
81+
{tools3.map((tool) => (
82+
<a
83+
key={'tool-' + tool.name}
84+
href={tool.link}
85+
title={tool.name + ' on Github'}
86+
rel="noreferrer"
87+
target="_blank"
88+
className="col-span-1 flex justify-center rounded bg-slate-100 py-8 px-8 transition hover:bg-yellow-500 hover:text-gray-800 dark:bg-slate-900 hover:dark:bg-yellow-500"
89+
>
90+
{tool.name}
91+
</a>
92+
))}
93+
</div>
7194
</>
7295
);
7396
}

libs/website/ui-home/src/lib/resources.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,13 @@ const people: {
5757
twitterLink: 'https://twitter.com/benjyw',
5858
githubLink: 'https://github.com/pantsbuild/pants?utm_source=monorepo.tools',
5959
},
60+
{
61+
name: 'Jon Poole',
62+
tool: 'Please',
63+
imageUrl: 'https://avatars.githubusercontent.com/u/2906700?s=150',
64+
twitterLink: 'https://twitter.com/jonfpoole',
65+
githubLink: 'https://github.com/thought-machine/please?utm_source=monorepo.tools',
66+
},
6067
];
6168
const videosPodcasts: { name: string; link: string }[] = [
6269
{

0 commit comments

Comments
 (0)