npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

sunniesnow-record

v0.4.4

Published

A CLI tool to render a Sunniesnow chart into a video.

Downloads

164

Readme

sunniesnow-record

A CLI tool to generate a video for a Sunniesnow chart.

Installation

First, install FFmpeg (6.1 or later) and Node.js (20.6 or later).

[!NOTE] The version of FFmpeg must not be 6.0 because of a known bug in that version.

The version of Node.js most not be between 20.0 and 20.5 (inclusive) because of a known bug in those versions.

Then, run the following command:

npm install -g sunniesnow-record

Usage

Run the following command to get help:

sunniesnow-record --help

Here is a usage example:

sunniesnow-record --level-file online --level-file-online sunniesnow-sample --output test.mkv

There is also a command to generate a cover image:

sunniesnow-cover-gen --help

Docker image

You can also use the Docker image to run this tool. To do this, run the following command:

docker run -v ./output:/data -i -t ulysseszhan/sunniesnow-record --level-file online --level-file-online sunniesnow-sample

This command will generate a video at output/output.mkv.

Troubleshoot

Note that you can use the Docker image if there are issues that you cannot resolve.

[email protected]: Permission denied (publickey)

You need to generate an SSH keypair:

ssh-keygen

Font rendering issues

If only English characters are rendered incorrectly, this is due to a bug in node-canvas. To work around this, rebuild node-canvas from source:

env --chdir=$(npm root -g)/sunniesnow-record npm rebuild canvas --build-from-source

For other font rendering issues, you can also try rebuilding node-canvas from source. However, sometimes the issues are hard to fix. It is known that the font rendering behaviors are different for different versions of pangocairo and other dependencies.

No module named 'distutils' with Python 3.12 or later

You may see an error message about ModuleNotFoundError: No module named 'distutils' reported by node-gyp. This happens when your Python version is 3.12 or later. You need to run

pip install setuptools

Replace pip with python3 -m pip if necessary.

Error messages about canvas.node or webgl.node

If you see error messages about canvas.node or webgl.node, you may need to rebuild the native modules. To do this, install the following dependencies first:

apt install build-essential pkg-config libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev libxi-dev libglu1-mesa-dev libglew-dev

and then run the following command (it may take several minutes):

env --chdir=$(npm root -g)/sunniesnow-record npm rebuild canvas gl --build-from-source

If you have troubles building them, see development instructions for headless-gl and compiling instructions for node-canvas.

Cannot open Utils.js when installing from Git source

If you installed this package from Git source (e.g. npm i github:sunniesnow/sunniesnow-record), you may see an error message like this when using this package:

Error: ENOENT: no such file or directory, open '.../node_modules/sunniesnow-record/game/js/utils/Utils.js'

This is due to an npm bug. To work around this, clone this repo recursively, and use the local file system as the package source.

Antialias does not work

Known bug.

‘uintptr_t’ does not name a type

Known bug.

The video only shows a static image, but audio is fine

Known bug in FFmpeg 6.0. Use FFmpeg 6.1 or later.

Stuck at loading Background or ResultProfile on Windows

This may happen when the background or avatar is an SVG. This is a known issue caused by a bug and another bug. To work around this, use another image format.

License

GPLv3.