Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 1 addition & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ public/brand/ logo, project icons
src/
main.ts single entry, mounts whatever a page contains
data/site.ts projects and people. Edit content here
components/ nav, footer, cards, mark draw, reveals, marquee
components/ nav, footer, cards, mark draw, reveals
lib/eggzec-block.ts the eggzec Block bitmap display font, as TypeScript
styles/ tokens, base, layout, components, pages
```
Expand Down Expand Up @@ -49,7 +49,6 @@ Almost everything is data rather than markup, and it all lives in
| Projects, taglines, repository and docs and PyPI links | `PROJECTS` |
| Human facing name when the repo name is not one | `display` on a project |
| Which projects lead the landing page | `LEAD` in `src/data/site.ts` |
| Who builds on our packages | `src/data/used-by.ts` |
| Maintainers | `PEOPLE` |
| Nav links | `NAV` |
| Footer links | `COLUMNS` in `src/components/footer.ts` |
Expand All @@ -64,12 +63,6 @@ card appears twice.
Landing page statistics are counted from the catalog at runtime, so the numbers
cannot drift from what is actually listed.

`src/data/used-by.ts` is the one generated file. It comes from GitHub's
dependency graph — the `network/dependents` listing for each repository —
filtered to named organisations and checked one at a time against the API. Only
pydoe, pyswarm, mcerp and soerp have any dependents, so that is what the list
draws on. Regenerate it by hand rather than trusting it to stay current.

## Design

Colours are the Electropop palette on white:
Expand Down
5 changes: 0 additions & 5 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,6 @@
GitHub
</a>
</div>

<div class="hero__ticker" data-reveal data-reveal-delay="380">
<p class="mono hero__ticker-label">Used by</p>
<div class="hero__ticker-strip" data-marquee data-speed="34" data-used-by></div>
</div>
</div>
</section>

Expand Down
Binary file removed public/brand/users/anesthesiasimulation.png
Binary file not shown.
Binary file removed public/brand/users/atomicateam.png
Binary file not shown.
Binary file removed public/brand/users/bgu-aidnd.png
Binary file not shown.
Binary file removed public/brand/users/cmu-db.png
Binary file not shown.
Binary file removed public/brand/users/codecentric.png
Binary file not shown.
Binary file not shown.
Binary file removed public/brand/users/emsl-computing.png
Binary file not shown.
Binary file removed public/brand/users/gemseo.png
Binary file not shown.
Binary file removed public/brand/users/ibm.png
Binary file not shown.
Binary file removed public/brand/users/icb-dcm.png
Binary file not shown.
Binary file removed public/brand/users/icrar.png
Binary file not shown.
Binary file removed public/brand/users/industrial-optimization-group.png
Binary file not shown.
Binary file removed public/brand/users/lanl.png
Binary file not shown.
Binary file removed public/brand/users/llnl.png
Binary file not shown.
Binary file removed public/brand/users/nanograv.png
Binary file not shown.
Binary file removed public/brand/users/nasa.png
Binary file not shown.
Binary file removed public/brand/users/national-digital-twin.png
Binary file not shown.
Binary file removed public/brand/users/openmdao.png
Binary file not shown.
Binary file removed public/brand/users/openworm.png
Binary file not shown.
Binary file removed public/brand/users/paypal.png
Binary file not shown.
Binary file removed public/brand/users/philipmorrisintl.png
Binary file not shown.
Binary file removed public/brand/users/qubole.png
Binary file not shown.
Binary file removed public/brand/users/sandialabs.png
Binary file not shown.
Binary file removed public/brand/users/seduceproject.png
Binary file not shown.
Binary file removed public/brand/users/smtorg.png
Binary file not shown.
Binary file removed public/brand/users/terrapower.png
Diff not rendered.
Binary file removed public/brand/users/wwu-mmll.png
Diff not rendered.
23 changes: 0 additions & 23 deletions src/components/content.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
*/

import { PEOPLE, PROJECTS } from '../data/site'
import { USED_BY } from '../data/used-by'

/**
* `<div data-people>` on /community/.
Expand Down Expand Up @@ -32,28 +31,6 @@ export function mountPeople(root: ParentNode = document): void {
).join('')
}

/**
* `<div data-used-by>` in the hero ticker.
*
* Logos rather than names: at a glance a reader recognises a mark faster than
* they read an org login. Filled before the marquee mounts so it measures real
* content, and each one links to the repository the dependency was verified in,
* because a claim like this is only worth making if it can be checked.
*/
export function mountUsedBy(root: ParentNode = document): void {
const host = root.querySelector<HTMLElement>('[data-used-by]')
if (!host) return

host.innerHTML = USED_BY.map(
(d) => `
<a class="used-by" href="https://github.com/${d.repo}" target="_blank" rel="noopener"
title="${d.name} uses ${d.uses} in ${d.repo}">
<img class="used-by__logo" src="/brand/users/${d.login.toLowerCase()}.png"
alt="${d.name}" height="68" loading="lazy" decoding="async">
</a>`,
).join('')
}

/**
* Fills `[data-stat]` elements from the catalog rather than from hard-coded
* markup, so the landing-page numbers cannot drift from what is actually
Expand Down
76 changes: 0 additions & 76 deletions src/components/marquee.ts

This file was deleted.

85 changes: 0 additions & 85 deletions src/data/used-by.ts

This file was deleted.

5 changes: 1 addition & 4 deletions src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,11 @@ import { mountFooter } from './components/footer'
import { mountCounters, mountReveals } from './components/reveal'
import { mountDisplayType } from './components/wordmark'
import { mountDrawFields } from './components/draw-field'
import { mountMarquees } from './components/marquee'
import { mountPixelRules } from './components/pixel-rule'
import { mountPointerEffects } from './components/pointer'
import { mountMotes } from './components/motes'
import { mountFeaturedGrid, mountCatalog } from './components/project-cards'
import { mountPeople, mountUsedBy, syncStats } from './components/content'
import { mountPeople, syncStats } from './components/content'
import { defineEggzecText } from './lib/eggzec-block'
import { prefersReducedMotion } from './lib/env'

Expand Down Expand Up @@ -69,13 +68,11 @@ function boot(): void {
mountFeaturedGrid()
mountCatalog()
mountPeople()
mountUsedBy()
syncStats()
mountDisplayType()

// Behaviour over whatever ended up in the DOM.
mountDrawFields()
mountMarquees()
mountPixelRules()
mountReveals()
mountCounters()
Expand Down
81 changes: 0 additions & 81 deletions src/styles/components.css
Original file line number Diff line number Diff line change
Expand Up @@ -803,87 +803,6 @@
color: var(--ink-muted);
}

/* ---- marquee ----------------------------------------------------------- */

.marquee {
--marquee-shift: 0px;
--marquee-duration: 30s;
--marquee-direction: normal;
position: relative;
overflow: hidden;
mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.marquee__viewport {
overflow: hidden;
}

.marquee__track {
display: flex;
width: max-content;
}

.marquee__track[data-animated='true'] {
animation: marquee-scroll var(--marquee-duration) linear infinite;
animation-direction: var(--marquee-direction);
}

.marquee:hover .marquee__track[data-animated='true'] {
animation-play-state: paused;
}

.marquee__group {
display: flex;
align-items: center;
gap: var(--space-7);
padding-right: var(--space-7);
flex: 0 0 auto;
}

@keyframes marquee-scroll {
from {
transform: translateX(0);
}
to {
transform: translateX(calc(var(--marquee-shift) * -1));
}
}

/* ---- tool chips inside the marquee ------------------------------------- */

/* ---- used by ------------------------------------------------------------ */

/* Sized for a landing-page logo strip, not for GitHub's own "Used by" widget,
which runs at 24px because it is a dense sidebar list of user avatars. These
are marks meant to be recognised in passing, so they get roughly double that.

Hover darkens and nothing else. The strip is moving, so anything that changes
the logo's size or position under the cursor reads as a glitch. */
.used-by {
display: inline-flex;
align-items: center;
padding: 0.4rem 1.35rem;
}

/*
* Every logo is delivered at one height, so the strip needs a single `height`
* here and nothing else. The width cap is for the occasional wordmark that is
* much wider than it is tall.
*/
.used-by__logo {
width: auto;
height: 68px;
max-width: 210px;
object-fit: contain;
opacity: 0.62;
transition: opacity var(--dur-base) var(--ease-out);
}

.used-by:hover .used-by__logo {
opacity: 1;
}

/* ---- spotlight surface -------------------------------------------------- */

[data-spotlight] {
Expand Down
19 changes: 0 additions & 19 deletions src/styles/pages.css
Original file line number Diff line number Diff line change
Expand Up @@ -110,25 +110,6 @@
margin-top: var(--space-2);
}

.hero__ticker {
display: flex;
align-items: center;
gap: var(--space-4);
margin-top: var(--space-6);
padding-top: var(--space-6);
border-top: var(--border) solid var(--line);
}

.hero__ticker-label {
flex: 0 0 auto;
color: var(--ink-faint);
}

.hero__ticker-strip {
min-width: 0;
flex: 1;
}

/* ---- install strip ------------------------------------------------------ */

.install {
Expand Down
Loading