10kbclub
10kbclub copied to clipboard
A curated collection of websites whose home pages do not exceed 10 KB compressed size
10 KB Club
This is the source code of 10kbclub.com.
Contents
- Suggest New Website
- Development Setup
- Commit Guidelines
- Additional Details
- License
- Support
Suggest New Website
Read the Club Rules first. If the new website satisfies the club rules, then create a new issue and provide the URL of the website.
Development Setup
To build and develop this project locally, perform the following steps:
-
Install Node.
On macOS, enter the following command if you have Homebrew:
brew install node
On Debian, Ubuntu, or another Debian-based Linux system, enter the following command:
sudo apt-get install nodejs
-
Clone this repository:
git clone https://github.com/susam/10kbclub.git
-
Initialize the repository with NPM
node_modules
:cd 10kbclub npm install
-
Enter the following command to generate a
metrics.json
file with metrics data for each URL specified injs/urls.json
:node src/refresh.js
-
Enter the following command to render an updated
index.html
with using the data inmetrics.json
:node src/render.js
-
Enter the following command to fetch a single URL and print its metrics:
node src/metrics.js https://www.example.com/
This script also accepts multiple URL arguments like this:
node src/metrics.js https://www.example.com/ https://www.example.org/
-
Now open
index.html
using a web browser to see the output.
Commit Guidelines
The following guidelines are followed in the commits made manually:
-
No changes to
index.html
should be present in a manual commit. This file is updated and pushed to 10kbclub.com automatically during automated builds. -
The following command should pass without errors:
make render
-
Commit messages are written as per the guidelines in this document: Writing Good Commit Messages.
Additional Details
This section contains some additional details that might be useful in understanding this project.
-
The project repository at https://github.com/susam/10kbclub is automatically published as https://10kbclub.com/ using GitHub Pages.
-
The file
index.html
gets updated automatically once a day at 00:00:00 UTC as well as on every push via GitHub Actions. Seelive.yml
for the GitHub Actions workflow. See https://github.com/susam/10kbclub/actions for the previous executions of the workflow. -
The links to discussion threads in
js/urls.json
are not exhaustive. Only the 5 earliest discussion threads that have 100 points or more have been picked from each forum.
License
This is free and open source software. You can use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of it, under the terms of the MIT License. See LICENSE.md for details.
This software is provided "AS IS", WITHOUT WARRANTY OF ANY KIND, express or implied. See LICENSE.md for details.
Support
To report bugs, suggest improvements, or ask questions, create issues.