Team Colors is a reference of HEX, RGB, CMYK, and Pantone color values of major league sports teams.
Install project dependencies via npm:
To actively develop, run:
npm run dev
build folder. Hitting the root of this folder from your localhost will serve your files.
The production site at jim-nielsen.com/teamcolors runs on github pages so all static assets must be generated and pushed with the repo. To deploy, run:
npm run prod
- Everything in
/staticare static files that are referenced directly via the HTML file. So if you make a commit that changes these, they’ll be pulled in automatically without having to do a “build” of the site and committing that as well. For example, if somebody makes a PR that changes a color value in the team colors .json file, you can merge the PR from github and changes should be live to the site without having to actually run a build.
- Everything in
/build/scripts. Raw assets like images and data are pulled in from
Site is built on the react framework.
Color data is housed in a single
static/data/teams.json. Any changes to team colors can be done there. Note on colors: Color definitions for each team are in arrays and grouped by color mode. Color values should match index position in the array across color modes, for example:
colors: rgb: TEAMS-RGB-BLUE, TEAMS-RGB-RED hex: TEAMS-HEX-BLUE, TEAMS-HEX-RED
Source artwork for each team is grouped by league in
static/sketch. Production versions of these logo should be in
.svg format in
Edit Team Color or Name
.json file in
static/data/teams.json, and edit the info you need.
Add a Team
- Determine the team’s league
- Following the established pattern, add the team’s name and colors the
- Add a vector logo for the team in its corresponding
.sketchleague file in
static/sketchwith the team’s name (as referenced in its
.jsonfile) in lowercase with hyphens, i.e. "utah-jazz"
- Export the team’s
- Preferably, optimize the svg (with a tool like SVGO)
npm run prod, commit, push
Official Color References
All NBA colors are official (source user & pass: nbamedia).
The NBA only provides RGB, CMYK, and Pantone colors for each team, so the HEX color is a programmatic conversion of the RGB color.
All NFL colors are official (see sources below).
The NFL provides official RGB, HEX, CMYK, and Pantone colors (so none of the colors you see on Team Colors are conversions).
The NFL has logo slicks which detail team color values. These are provided on a per-conference basis. Note: each of these source links are over 100MB in size, so they take a while to download.
MLB colors have been extracted from the official “RGB Digital Art” spot color logo slicks provided at MLB Press Box (user account required). They were not explicitly stated values, but they are color values pulled from individual team logos in an official MLB document.
The extracted colors are in HEX form and their RGB counterparts are generated programmatically.
NHL colors are official. As per Michael Sharer of the NHL.
MLS colors are currently approximations, with the exceptions listed below. I am working on getting official colors of the remaining teams.
These leagues’ teams and colors are currently approximations. I am working on getting official colors. If you know how/where to find them, please open an issue here in Github.
- Switch to
- Improve filtering with fuzzy string search
- Improve error states for when data doesn't render
- Consider alternatives to no-js users rather than just "here's the raw data" (something that doesn't required a build if a single color in the JSON file is changed)
- Possibly add team
idmanually to JSON file ??