From 044572f578d96b20c8555d9bdb65e40e12fc8232 Mon Sep 17 00:00:00 2001 From: Anipaleja Date: Wed, 4 Jun 2025 10:52:00 -0400 Subject: [PATCH 1/4] Updated ReadME and added Helios to projects.yaml --- README.md | 57 +++++++++++++++++++++++++++++++++------------ _data/projects.yaml | 1 + 2 files changed, 43 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 2041765d..ea05e0ea 100644 --- a/README.md +++ b/README.md @@ -1,47 +1,74 @@ # spotify.github.io

- + Spotify Open Source

-Showcase site for hand-picked open-source projects by Spotify. It is built using Jekyll & GitHub Actions with a Node.js script to fetch data from the GitHub GraphQL API adding it to a static YAML file in the repository. +A showcase site for hand-picked open-source projects by Spotify. +It is built using [Jekyll](https://jekyllrb.com/) and GitHub Actions, with a Node.js script that fetches data from the GitHub GraphQL API and stores it in a YAML file. -## Development +--- + +## Features + +- Automatically updated list of Spotify OSS projects +- Categorized by programming language +- Fast static site built with Jekyll +- Easy to contribute via YAML config + +--- + +## Local Development -**Install Jekyll & bundler gems** +### 1. Install Requirements + +Install [Jekyll](https://jekyllrb.com/) and [Bundler](https://bundler.io/): ```sh gem install jekyll bundler ``` - -**Install yarn** +Install Yarn: ```sh npm install --global yarn ``` -**Install dependencies** inside of the project folder +### 2. Install Dependencies + +Run inside the project root: ```sh -yarn & bundle install +yarn +bundle install ``` -**Build & serve** +### 3. Run the Local Server ```sh bundle exec jekyll serve ``` -**(Optional) Test & update data** +Open your browser at [localhost](http://localhost:4000) + +## File Structure + +. +├── _data/ +│ ├── projects.yml # Hand-picked projects (you can add here!) +│ └── projects_generated.yaml # Auto-generated (DO NOT EDIT) +├── scripts/ +│ └── nightly.js # GitHub API fetcher +├── _includes/ +├── _layouts/ +├── _site/ # Generated site output (ignored) +├── assets/ +├── index.html +└── README.md -[Create a personal GitHub Access Token](https://github.com/settings/tokens) to fetch & update the repository data locally. As the data is updated automatically using GitHub Actions `_data/projects_generated.yaml` should not be added to Git. -```sh -GH_TOKEN=YOUR_TOKEN node ./scripts/nightly.js -``` ---- This project adheres to the [Open Code of Conduct][code-of-conduct]. By participating, you are expected to honor this code. [code-of-conduct]: https://github.com/spotify/code-of-conduct/blob/master/code-of-conduct.md + diff --git a/_data/projects.yaml b/_data/projects.yaml index 5c3eef75..e11c4ebb 100644 --- a/_data/projects.yaml +++ b/_data/projects.yaml @@ -144,3 +144,4 @@ - url: https://github.com/spotify/cstar - url: https://github.com/spotify/dockerfile-mode - url: https://github.com/spotify/foss-root + - url: https://github.com/spotify/helios From 2c902a65f2fce272f75acffa7afba8772af2578e Mon Sep 17 00:00:00 2001 From: Anipaleja Date: Wed, 4 Jun 2025 10:54:28 -0400 Subject: [PATCH 2/4] Updated ReadME and fixed bug --- README.md | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index ea05e0ea..d60a842b 100644 --- a/README.md +++ b/README.md @@ -51,20 +51,19 @@ bundle exec jekyll serve Open your browser at [localhost](http://localhost:4000) ## File Structure - +```text . -├── _data/ -│ ├── projects.yml # Hand-picked projects (you can add here!) -│ └── projects_generated.yaml # Auto-generated (DO NOT EDIT) -├── scripts/ -│ └── nightly.js # GitHub API fetcher -├── _includes/ -├── _layouts/ -├── _site/ # Generated site output (ignored) -├── assets/ -├── index.html -└── README.md - +├── [_data/](./_data/) +│ ├── [_data/projects.yml](./_data/projects.yml) # Hand-picked projects (you can add here!) +│ └── [_data/projects_generated.yaml](./_data/projects_generated.yaml) # Auto-generated (DO NOT EDIT) +├── [scripts/](./scripts/) +│ └── [scripts/nightly.js](./scripts/nightly.js) # GitHub API fetcher +├── [_includes/](./_includes/) +├── [_layouts/](./_layouts/) +├── [_site/](./_site/) # Generated site output (ignored) +├── [assets/](./assets/) +├── [index.html](./index.html) +└── [README.md](./README.md) From ff85168ea50d8023a3a93f86ef102714b3819238 Mon Sep 17 00:00:00 2001 From: Anipaleja Date: Wed, 4 Jun 2025 10:56:02 -0400 Subject: [PATCH 3/4] Updated ReadME again --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d60a842b..265a5331 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ Open your browser at [localhost](http://localhost:4000) ```text . ├── [_data/](./_data/) -│ ├── [_data/projects.yml](./_data/projects.yml) # Hand-picked projects (you can add here!) +│ ├── [_data/projects.yml](./_data/projects.yml) # Hand-picked projects (you can add here!) │ └── [_data/projects_generated.yaml](./_data/projects_generated.yaml) # Auto-generated (DO NOT EDIT) ├── [scripts/](./scripts/) │ └── [scripts/nightly.js](./scripts/nightly.js) # GitHub API fetcher @@ -64,7 +64,7 @@ Open your browser at [localhost](http://localhost:4000) ├── [assets/](./assets/) ├── [index.html](./index.html) └── [README.md](./README.md) - +``` This project adheres to the [Open Code of Conduct][code-of-conduct]. By participating, you are expected to honor this code. From c4615a00625d05c0b7c6ee9557ec159795271c2a Mon Sep 17 00:00:00 2001 From: Anipaleja Date: Wed, 4 Jun 2025 11:00:43 -0400 Subject: [PATCH 4/4] Fixed bug in ReadME file --- README.md | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 265a5331..35b69a5a 100644 --- a/README.md +++ b/README.md @@ -51,19 +51,20 @@ bundle exec jekyll serve Open your browser at [localhost](http://localhost:4000) ## File Structure -```text +``` +text . -├── [_data/](./_data/) -│ ├── [_data/projects.yml](./_data/projects.yml) # Hand-picked projects (you can add here!) -│ └── [_data/projects_generated.yaml](./_data/projects_generated.yaml) # Auto-generated (DO NOT EDIT) -├── [scripts/](./scripts/) -│ └── [scripts/nightly.js](./scripts/nightly.js) # GitHub API fetcher -├── [_includes/](./_includes/) -├── [_layouts/](./_layouts/) -├── [_site/](./_site/) # Generated site output (ignored) -├── [assets/](./assets/) -├── [index.html](./index.html) -└── [README.md](./README.md) +├── [_data/] +│ ├── [_data/projects.yml] # Hand-picked projects (you can add here!) +│ └── [_data/projects_generated.yaml] # Auto-generated (DO NOT EDIT) +├── [scripts/] +│ └── [scripts/nightly.js] # GitHub API fetcher +├── [_includes/] +├── [_layouts/] +├── [_site/] # Generated site output (ignored) +├── [assets/] +├── [index.html] +└── [README.md] ```