Grilled Cheese

ExploreLog inSign up
Terms of UsePrivacy PolicyCommunity StandardsHelpGet the app

Grilled Cheese is a product of Village Compute

Version devBuilt at: 2026-10-13 22:15:16 EDT

Explore

PostsPeople
LatestRanked
@s0-and-s0.bsky.socialSep 17, 2026, 12:45 AM

NodeJS has a built-in argument parser

Wrapping it with something that can handle type/value mutation is reasonably trivial

And cluing-in TypeScript to mutations makes development a little less annoying, and a little less error prone too :-]

#DevExp #NodeJS #TypeScript

```typescript
/**
 * @file NodeJS builtin argument parsing example with TypeScript enhanced callbacks
 * @author S0AndS0.eth
 * @license This is your problem now (-;
 */

import type { ParseArgsConfig } from "node:util";

import { parseArgs } from "node:util";

type Apply_Callbacks<
	T extends ParseArgsConfig,
	Values = ReturnType<typeof parseArgs<T>>["values"],
	Options = T["options"],
> = {
	[Key in keyof Values]: Options[Key]["callback"] extends Function
		? ReturnType<Options[Key]["callback"]>
		: Values[Key];
};

function parseArguments<T extends ParseArgsConfig>(config?: T) {
	const result = parseArgs(config);

	result.values = Object.entries(result.values).reduce(
		(accumulator, [key, value], _index, array) => {
			const callback = config?.options[key].callback;

			if (callback) {
				accumulator[key] = callback({ value, values: array });
			} else {
				accumulator[key] = value;
			}

			return accumulator;
		},
		{} as Apply_Callbacks<T>
	);

	return result as Omit<ReturnType<typeof parseArgs<T>>, "values"> & {
		values: Apply_Callbacks<T>;
	};
}

const options = {
	verbose: {
		type: "boolean",
		short: "v",
		description: "Output additional information during execution.",
	},
	"as-number": {
		type: "string",
		description:
			"Throws error if given non-number during CLI argument parsing/conversion.",
		callback: ({ value }: { value: string }) => {
			const result = Number(value);
			if (Number.isNaN(result)) {
				throw new Error("Not a number given to: --as-number <value>");
			}
			return result;
		},
	},
} as const;

const { values } = parseArguments({ options });

/* Should now resolve to; number | undefined */
type Test_as_number = (typeof values)["as-number"];

/* Should now resolve to; boolean | undefined */
type Test_verbose = (typeof values)["verbose"];
```
@jazzcomposer.bsky.socialSep 16, 2026, 11:33 PM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@frontenddogma.comSep 16, 2026, 10:30 PM

β€œnode:bench”, by @jasnell.me:

https://www.jasnell.me/posts/a-node-bench-module?ref=frontenddogma.com

#nodejs #performance

@radwebhosting.comSep 16, 2026, 9:26 PM

πŸš€ How to Install and Run Rocket.Chat on #Debian #VPS This article describes how to install and run Rocket.Chat on Debian VPS.
What is Rocket.Chat?
Rocket.Chat is an open-source communication platform designed for team ...
Continued πŸ‘‰ #selfhosting #nginx #nodejs #selfhosted #rocketchat #certbot

@jazzcomposer.bsky.socialSep 16, 2026, 5:18 PM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@jazzcomposer.bsky.socialSep 16, 2026, 11:03 AM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@radwebhosting.comSep 16, 2026, 10:30 AM

How to Install #BigBlueButton on #Ubuntu #VPS

This article provides a comprehensive guide for how to install BigBlueButton on Ubuntu VPS server.
What is ...
Continued πŸ‘‰ #letsencrypt #selfhosted #learningmanagementsystem #selfhosting #libreoffice #opensource #installguide #elearning #nodejs

@jazzcomposer.bsky.socialSep 16, 2026, 4:48 AM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@securityonline.bsky.socialSep 16, 2026, 1:17 AM

A critical proxy-addr IP spoofing flaw (CVE-2026-90711) exposes Node.js apps to access control bypasses. Patch this proxy-addr IP spoofing bug today.

#ProxyAddr #NodeJS #IPspoofing #CVE202690711 #Cybersecurity

@jazzcomposer.bsky.socialSep 15, 2026, 10:33 PM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@jazzcomposer.bsky.socialSep 15, 2026, 4:18 PM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@nodeconf.euSep 15, 2026, 11:30 AM

πŸ“ September 29–30, Bologna, Italy.
Tickets: buff.ly/blFoEQE
#NodeJS #NodeConfEU #JavaScript

@akitsolutions.bsky.socialSep 15, 2026, 10:26 AM

πŸš€ Hiring: REST API Developer

DataPro Services needs a Mid Dev for SaaS integrations.

πŸ’΅ $1,884 (Fixed) | Remote
πŸ› οΈ Node.js, PostgreSQL, REST API

πŸ‘‰ Apply here:
hireaakash.com/jobs/Eric/re...

#NodeJS #PostgreSQL

@jazzcomposer.bsky.socialSep 15, 2026, 10:03 AM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@jazzcomposer.bsky.socialSep 15, 2026, 3:48 AM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@jazzcomposer.bsky.socialSep 14, 2026, 9:33 PM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@openingshq.bsky.socialSep 14, 2026, 3:33 PM

New job on openings.dev

[Remoto] Fullstack Developer - Jazida.com

backend-br Β· Brazil Β· South America

View the listing:
https://openings.dev/jobs/gh_86cb84e98756a8403eaeaec8

#TechJobs #NodeJS

@openingshq.bsky.socialSep 14, 2026, 3:33 PM

New job on openings.dev

[Remoto] Back-end Engineer Node.js - Strider

backend-br Β· Brazil Β· South America
$4,900–$6,500/hour

View the listing:
https://openings.dev/jobs/gh_576ba7eaf4dac8a0db6163f3

#TechJobs #NodeJS

@jazzcomposer.bsky.socialSep 14, 2026, 3:18 PM

Although AI vibe software development coding may appear to be fast, the results often do not work correctly or make it into successful production products. #dev #code #python #linux #vibecode #php #nodejs

@alex.sharkey.pnyhf.eu.ap.brid.gySep 14, 2026, 9:12 AM

#Dashy is (at least in my opinion) a very nice, and above all, simple, personal dashboard for self-hosting.

BUT WHY THE ACTUAL F*CK DOES THE DOCKER IMAGE WEIGH IN AT 546MB?

https://github.com/lissy93/dashy

#NodeJS #Bloatware #rant

Load more