NOTE: This project is no longer maintained.
This is the source code of 10kbclub.com.
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.
To build and develop this project locally, perform the following steps:
-
Clone this repository:
git clone https://github.com/susam/10kbclub.git
-
Install Node.
On macOS, enter the following command if you have Homebrew:
make mac-setup
On Debian, Ubuntu, or another Debian-based Linux system, enter the following command:
make deb-setup
-
Enter the following command to create a local copy of the website:
make render
-
Now open
index.html
using a web browser to see the output.
-
On a Linux system, enter the following command to ensure that the directory for Node binaries are added to the
PATH
environment variable:. ./env
-
Enter the following command to generate a file named
metrics.yaml
that would contain metrics data for each URL in the filesrc/urls.yaml
:node src/refresh.js
-
Enter the following command to render the home page using the data in
metrics.yaml
: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/
The following guidelines are followed in the commits made manually:
-
The following commands should succeed without errors:
make checks make render
-
Commit messages are written as per the guidelines in this document: Writing Good Commit Messages.
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 build job to publish the website runs automatically once every Saturday as well as on every push via GitHub Actions. See
live.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.yaml
are not exhaustive. Only the 5 earliest discussion threads that have 100 points or more have been picked from each forum.
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.
To report bugs, suggest improvements, or ask questions, create issues.