✨2023#43: OpenAPI DevTools, automatically generates OpenAPI specifications
📅 October 22-28, 2023
This week's JSTools Weekly Newsletter features a number of new tools and libraries released last week ( October 22-28, 2023 ) on GitHub.
Subscribe to JSTools Weekly for more new JavaScript projects every week!
Happy coding! ✨
openapi-devtools
OpenAPI DevTools is a Chrome extension that automatically generates OpenAPI specifications for any website or application. It is a useful tool for developers who want to document their APIs or generate OpenAPI clients.
Instantly generate an OpenAPI 3.1 specification for any website or application
Automatically merges new request & response headers, bodies, and query parameters per endpoint
Click on a path parameter and the app will automatically merge existing and future matching requests
View the specification inside the tool using Redoc and download with a click
uint8array-extras: Useful utilities for working with Uint8Array (and Buffer)
uint8array-extras is a package that provides useful utilities for working with Uint8Arrays and Buffers. It is tree-shakeable and browser-compatible, and it includes methods to convert a string to Base64 and back. This package can be used to help transition from Buffer to Uint8Array.
import {concatUint8Arrays} from 'uint8array-extras';
const a = new Uint8Array([1, 2, 3]);
const b = new Uint8Array([4, 5, 6]);
console.log(concatUint8Arrays([a, b]));
//=> Uint8Array [1, 2, 3, 4, 5, 6]
cmdk-sv: cmdk, but for Svelte ✨
⌘K-sv is a command menu Svelte component that can also be used as an accessible combobox. You render items, it filters and sorts them automatically.
mode-watcher: Simple light/dark mode management for SvelteKit apps. 🌑 ←→ ☀️
<script lang="ts">
import { ModeWatcher } from 'mode-watcher';
</script>
<ModeWatcher />
<slot />
nuxt-payload-analyzer: Analyze Nuxt Payload Size
Nuxt Payload Analyzer is a Nuxt module that helps you to analyze the size of payloads in your Nuxt application. This is important because if your payloads are too large, they can slow down your application. The module can analyze your payloads during build time and reject the build if a payload is too big. It can also be used to analyze payloads locally and print a report of all the payloads in your application.
echarts-solid: SolidJS components for ECharts
echarts-solid is a library that makes it easy to use ECharts in SolidJS apps. It includes two main components: ECharts and EChartsAutoSize, which are designed to make it easier to work with ECharts in Solid-based projects.
import { ECharts } from 'echarts-solid'
function MyChartComponent() {
const options = {
// ... your ECharts option here
};
return (
<ECharts
option={options}
width={600}
height={400}
/>
);
}
squaredev: The platform for developers building applications powered by Gen AI
SquareDev is a platform for developing applications powered by language models. It can be used to develop a variety of applications, including chatbots, data analysis, and text extraction.. It offers a variety of features, including:
Embeddings: Embed your data to enhance the knowledge of LLMs and control their answers. Build semantic search functionality, enhanced by Language Models. Edit your embeddings with the built-in editor.
Fine-tuning: Fine-tune models to create your private LLMs. Once a model has been fine-tuned, you won’t need to provide as many examples in the prompt. Save costs and enables lower-latency requests.
Language models: Connect to the state-of-the-art models like Open AI’s GPT-4, Meta’s LLaMa, Hugging face Zephyr and others. Fine-tune them or use retrieval to suit your use case.
Monitoring: Analyse logs, understand responses and usag. Easily optimize your applications, without extra tooling or code and find ways to improve responses.. Manage costs and improve performance.
hono: Internationalization middleware & utilities for Hono
@intlify/hono is a lightweight internationalization middleware and utilities library for Hono. It features a simple translation API, custom locale detector, and support for internationalization composable utilities.
graphing-calculator: Mathematically advanced graphing calculator
IntrepidGraph is a free and open-source web tool that allows users to visualize mathematical equations. It has a user-friendly interface and allows for customizable graph appearance. IntrepidGraph also provides real-time graph updates, making it a great tool for learning and experimenting with mathematics.
ngx-signal-state: Opinionated simple state management for Angular
ngx-signal-state is a small and opinionated state management library for Angular. It is designed to be simple and easy to use, with a focus on type safety.
Simple: Only a handful of methods, no complex ngrx structures
Small: Minified and compressed: 2KB
Opinionated: Structured and opinionated way of state management
No boilerplate: No selectors, reducers, actions, action types, effects, ...
Easy to learn: Provides everything, but still very small
Battle tested: Tested with big clients
Type-safe: High focus on type-safety
More new JS projects explore:
quicksql: A library for generating DDL SQL and entity-relationship-diagrams from Quick SQL code
shadow: Shadow is a new novel web engine made (almost) entirely in JS from scratch
har-sanitizer: Protect your session data by sanitizing your HAR files before sharing. Built with Cloudflare Workers.
XnlReveal: A Chrome/Firefox browser extension to show alerts for relfected query params, show hidden elements and enable disabled elements.
domloggerpp: A browser extension that allows you to monitor, intercept, and debug JavaScript sinks based on customizable configurations.
server-action-system-reboot: Reboot your computer with React server action
nextjs-weather-app: Real-time weather app build with Next.js 14, Typescript and Shadcn UI. It's a simple, yet powerful app that gives you all the weather information you need, in a beautiful and easy-to-use interface.
browser-window: Used in demos as a way to fake a Safari-esque web browser window.
webext-storage: A more usable typed storage API for Web Extensions
turbo-stream: A streaming data transport format that aims to support built-in features such as Promises, Dates, RegExps, Maps, Sets and more.
is64bit: Check if the operating system CPU architecture is 64-bit or 32-bit (Supports browsers)
system-architecture: Get the operating system CPU architecture
simplify-ranges: Merge and normalize adjacent or overlapping integer ranges
is-in-ci: Check if the process is running in a Continuous Integration (CI) environment