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

@cocalc/hub

v1.120.6

Published

CoCalc: Backend webserver component

Downloads

49

Readme

The hub CoCalc web server.

This code is part of https://github.com/sagemathinc/cocalc and isn't currently designed to be used standalone. Our plan is to refactor this code into smaller useful modules that are published under the @cocalc npm organization.

This is a node.js process that serves all of the following (possibly simultaneously):

  • static content - our mirror of the cdn and the results of webpack (packages/static)
  • an http api as documented at https://doc.cocalc.com/api
  • a websocket connection that client browsers use for sign in, account config, creating projects, etc.
  • a proxy server that connects client browsers to projects
  • project control server that creates, starts and stops projects running locally

Running the server

Run the dev server, suitable for use inside a CoCalc project:

npm run hub-project-dev

Using a different BASE_PATH and PORT

Just set either the BASE_PATH or PORT environment variables when starting thehub, and it will use what you set. If you do not set a BASE_PATH it uses either"/" by default, or something involving the project id if you're inside a CoCalcproject.

If you don't set the PORT then 5000 is used by default. The only way to set the port is via the PORT environment variable.

You can use the --hostname command line options if you are starting the hub directly via the cocalc-hub-server script and need to specify a different interface (e.g., 0.0.0.0 instead of localhost).

Listening on https

As a quick test, you can do

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ./selfsigned.key -out selfsigned.crt

to create self-signed key and cert. You can then start the hub with these two files as options:

cd packages/hub; npx cocalc-hub-server ... --https-key=./selfsigned.key --https-cert=./selfsigned.crt

and the hub will use https instead of http. Simple as that.