Skip to content

Curated list of awesome things related to Deno

License

Notifications You must be signed in to change notification settings

retraigo/awesome-deno

 
 

Repository files navigation

Awesome Deno Awesome

Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.

This list is a collection of the best Deno modules and resources.

Contents

Docs

Official Docs

External Docs

Online Playgrounds

Modules

Automation

  • autopilot - Autopilot - Cross-platform web automation with Deno.

CLI utils

  • cac - Simple yet powerful framework for building command-line apps.
  • charmd - A simple, extendable markdown renderer for your terminal.
  • chart - Console ASCII line charts with no dependencies.
  • cli-spinner - Show spinners in the terminal while running long tasks.
  • cliffy - The complete solution for building interactive command-line tools.
  • kia - Simple terminal spinners for Deno 🦕
  • terminal_images - A Deno module and CLI tool for displaying images in the terminal.
  • with-env - Simple command line utilty for executing commands with one or more .env files.
  • yargs - The modern, pirate-themed successor to optimist.

Cloud APIs

  • aws-api - From-scratch Typescript AWS API client built for Deno.
  • googleapis - Auto-generated Google API clients for Deno.

Database

  • aloedb - Light, Embeddable, NoSQL database for Deno without dependencies.
  • cotton - SQL Database Toolkit for deno
  • dangoDB - A MongoDB ODM for Deno.
  • denodb - MySQL, SQLite, MariaDB, PostgreSQL and MongoDB ORM for Deno.
  • deno_mongo - MongoDB database driver.
  • deno_mysql - MySQL database driver.
  • dndb - Persistent and embedable NoSQL database engine written for Deno 🦕.
  • dongoose - A simple and easy to use ORM for Deno KV.
  • dsddb - A dead simple persistant key-value database utilizing the JSON format.
  • dso - A simple ORM library based on mysql.
  • maxminddb - A library that enables the usage of MaxmindDB geoIP database files
  • nessie - Create, migrate and rollback migrations for PostgreSQL, MySQL and SQLite.
  • postgres - Driver for PostgreSQL database.
  • r2d2 - Fast, lightweight Redis client library for Deno.
  • redis - An experimental implementation of redis client for deno.
  • sql-builder - An sql query builder.
  • yongo - Subset of Mongoose api in deno (like populate) but will not fully copy mongoose

Editor framework

  • Denops - 🐜 An ecosystem to write Vim/Neovim plugins with Deno.

Frontend development

  • postcss - A tool for transforming styles with JS plugins.

Frontend framework

  • aleph.js - A React framework in Deno, inspired by Next.js.
  • fresh - The next-gen web framework.
  • packup - Zero-config web application packager for Deno.
  • ultra - 💎 Modern Streaming React Framework in Deno.

Game engine

  • caviar - ⚡ Blazing fast, modern, Game Engine powered by WebGPU for Deno and the browser
  • neko - 🐈 caviar's twin frame buffer deno module with a framebuffer canvas implementation
  • sdl2 - SDL2 module for Deno

Image

  • ImageScript - Image processing in JavaScript, utilizing WebAssembly for performance.
  • monke - Color quantization and dithering library with extra image filters (blur, invert, etc).

Logging

  • sentry_deno - Unofficial port of the Sentry SDK for JavaScript to Deno.
  • dlog - A ussefull logger for the prompt with icons or simple version!

Machine learning

  • netsaur - Powerful machine learning, accelerated by WebGPU
  • synaptic - Dependency-less neural network library ported to deno

Mail

Markdown

  • marked - Markdown-to-HTML converter.

Math

  • neo - Matrix and other math, accelerated by WebGPU

Static site generator

  • lume - A static site generator similar to Jekyll or Eleventy with support for multiple file formats.
  • pagic - The easiest way to generate static html page from markdown, built with Deno.

String utils

  • camelcase - Convert a dash/dot/underscore/space separated string to camelCase: foo-bar → fooBar.
  • deno_case_style - String validator and formater for different case style. eg: camelCase etc.
  • deno-json-colorizer - A library for colorizing JSON strings in Deno
  • deno-prettystring - Format, trim and remove extra white spaces between characters from string.
  • deno-slugify - A string slugifier for deno.
  • normalize_diacritics - Remove accents/diacritics in string.
  • written - A provides a set of utilities for manipulating text, with a focus on providing typographic tools rather than pure string manipulation.

Social Platform APIs

  • grammY - Telegram Bot API framework for Deno.
  • grm - Telegram MTProto client for Deno.
  • twi - Twitter API v2 client for Deno.
  • discordeno - Discord API library for Deno

Template engine

  • dejs - Ejs template engine for deno.
  • deno_tiny_templates - Template renderer for deno.
  • eta - Fast, lightweight, and configurable embedded template engine.
  • handlebars - Handlebars template engine for deno
  • mustache - Mustache template engine for deno

Testing

  • deno-puppeteer - A library which provides a high-level API to control Chromium or Chrome over the DevTools Protocol.
  • expect - Helpers for writing jest like expect tests in deno.
  • merlin - Testing and Benchmarking framework for deno 🧙‍♂️
  • pretty_benching - A small library to make your Deno benchmarking progress and results look pretty.
  • rhum - A lightweight testing framework for Deno.
  • superdeno - Super-agent driven library for testing Deno HTTP servers.
  • superoak - HTTP assertions for Oak made easy via SuperDeno.
  • tepi - A .http Test Runner
  • tincan - A Jest-like testing library for Deno.
  • unexpected - Extensible BDD assertion toolkit.
  • unitest - Deno-first universal unit testing framework.

Utils

  • bettermap - A TypeScript extension of the JavaScript Map with Array-like features.
  • beno - A configuration manager typed and faster for Deno Inspired in Viper of Golang
  • buckets - Bundle assets and scripts in a single executable file.
  • bytes_formater - Format bytes (Uint8Array, ArrayBufferView, etc) output, useful when debugging IO functions.
  • coffee - Deno Configuration - a type-safe, easy to use Deno config manager.
  • colors - Color conversions and operations in TypeScript.
  • croner - Cron library with advanced scheduling features, well-documented API, and zero dependencies.
  • computed_types - Joi like validators for Typescript and Deno.
  • dcc - Deno Cache Clean, reloading deps when next running.
  • denon - A file watcher with a for-await generator.
  • deno-config - Utility to streamline deno app configuration management through cli, .env and json files
  • deno-context - Propagate deadlines, a cancellation and other request-scoped values to multiple promise. The behaviour is like Go's context.
  • deno_cron - A cron Job scheduler that allows you to write human readable cron syntax with tons of flexibility
  • deno-deamon - Make the Deno program run in the background.
  • deno-dotenv
  • deno-envconfig - Configuration management utility.
  • deno-fnparse - An extremely simple parser combinator for JavaScript.
  • deno-globrex - Port of globrex to deno, glob to regular expression.
  • deno_notify - Send desktop notifications on all platforms.
  • deno-opn - Opens stuff like websites, files, executables. Cross-platform.
  • deno-plugin-prepare - A library for managing Deno native plugin dependencies.
  • deno_random_interval - Helper to generate random interval.
  • deno_tokenizer - A simple tokenizer for deno.
  • deno-using - An python-style with statements for deno.
  • deno-validation - A general purpose validation library for Deno.
  • dinoenv - tiny library to manage environment variables with deno.
  • durationjs - Get formatted time duration from a timestamp or a human-readable string.
  • draco - File and folder multiplatform utils for Deno!
  • ensure - Ensure you are running a minimum version of Deno, Typescript, or V8.
  • evt - Type safe replacement for EventEmitter.
  • fastest-validator - Schema validator for all javascript platforms
  • fortuna - Weighted gacha system.
  • fossil - A value-type validation suite.
  • garn-yaml - Read or write yaml interpolating env variables.
  • garn-validator - Create validations with ease.
  • invert-kv - Invert key-value pairs in Deno.
  • lazy - A linq-like lazy-evaluation iteration module.
  • locale-kit (GitHub) - A internationalisation/localisation/translation (i18n/l10n/t9n) library with a wrapper for Fresh and support for plurals and dynamic replacement.
  • maze_generator - Javascript module for generating, solving, analyzing and displaying mazes.
  • ms - Easily convert various time formats to milliseconds.
  • online - Check if you're currently online in Deno.
  • optionals - Rust-like error handling and options with exhaustive pattern matching.
  • qrcode - QR code image generator for Deno.
  • recursive-readdir - Recursively read directories in Deno.
  • rubico - 🏞 [a]synchronous function composition; it just works.
  • solc - 💎 Solidity bindings for Deno.
  • tryify - Functional style error handling; never throw/try/catch/finally again.
  • type-fest - A collection of essential TypeScript types (port of sindresorhus/type-fest).
  • unified-deno-lock - Powerful and simple lock (mutex) library to handle race conditions with zero dependencies
  • wasm-gzip - Perform gzip operations for Deno.
  • watch - A file watcher.
  • wu-diff-js - A diff library to compute differences between two slices using wu(the O(NP)) algorithm.
  • PLS - Use 2 lines to persist localStorage in any database, including, but not limited to, MongoDB, PostgreSQL and Redis.

Validation

  • zod - TypeScript-first schema validation with static type inference.

Video

  • Fast Forward - An easy to use ffmpeg module for Deno. 🦕

Web framework

  • abc - A better Deno framework to create web application.
  • alosaur - Alosaur - Deno web framework with many decorators.
  • attain - A middleware web framework for Deno which is using http standard library inspired by express and Oak. Fast and stable with proper memory usage.
  • aqua - A minimal and fast web framework for Deno.
  • cheetah - 🐈 A blazing fast framework for the modern web.
  • danet - A Savory web framework for Deno heavily inspired by Nest.js.
  • deno-express - Node Express ported to Deno.
  • dinatra - Sinatra like light weight web app framework for deno.
  • drash - A REST microframework for Deno's HTTP server with zero dependencies.
  • fast - Small web framework with near-native performance.
  • faster - A fast and optimized middleware server with a set of useful middlwares.
  • hono - Ultrafast web framework for Cloudflare Workers, Deno, and Bun. Fast, but not only fast.
  • oak - A middleware framework for Deno's net server.
  • opine - Fast, minimalist web framework ported from ExpressJS.
  • pogo - Server framework for Deno.
  • wren - A small, but powerful HTTP library with a functional spin for creating composable web apps, built for convenience and simplicity

WebSocket

  • deno-websocket - 🦕 A simple WebSocket library like ws of node.js library.
  • dropper - Custom event-based WebSockets framework for building real-time apps on Deno 🦕
  • websocket_server - A WebSocket server library.
  • wocket - A WebSocket library for Deno.

Web utils

  • compression - Deno HTTP compression middleware.
  • djwt - Make JSON Web Tokens (JWT) on Deno based on JWT and JWS specifications.
  • forwarded - Deno port of forwarded library.
  • fresh_chart - A server-side-rendered charting library for Fresh.
  • gentleRpc - A JSON-RPC 2.0 TypeScript library for Deno and the browser.
  • gql - Universal GraphQL HTTP middleware.
  • graphql-tag - GraphQL schema AST from template literal.
  • nats - A Deno client for the NATS messaging system.
  • obsidian - A native GraphQL caching client and server module.
  • qs - A query string parser with nesting support.
  • react-icons - React Icons converted to preact for deno fresh.
  • router - A high-performance basic router works anywhere.
  • rpc - JSONRPC server implementation for Deno.
  • status - HTTP codes and status utility for Deno.
  • squishy_cookies - Easily sign and verify cookies.
  • ts-prometheus - A prometheus client.
  • up - Check if a website is up in Deno.
  • youtube-deno - A Deno client library for the YouTube Data API for any interaction with YouTube.

Webview

  • Astrodon - Modular framework for building native multi-platform apps with Deno and webview.
  • webview - Deno bindings for webview, a tiny library for creating web-based desktop GUIs.

XML

Registries

  • crux.land - A free registry service meant for hosting small ( < 10kB) single deno scripts.
  • Deno PKG - An easier way to use code from GitHub in your Deno project.
  • Denopkg.dev - Use any public/private repository from GitHub/GitLab in your Deno project.
  • deno.land/x/ - The official 3rd party module registry.
  • nest.land - An immutable, blockchain powered Deno package registry. 🥚

Showcases

Tools

  • clone - A simple utility for the convenient clone.
  • decense - Generate a license with one deno run command.
  • dedep - Manage dependency versions.
  • denoflow - Configuration as code, use YAML to write automated workflows that run on Deno, with any Deno modules, Typescript/Javascript codes
  • denoify - For NPM module authors that would like to support Deno but do not want to write and maintain a port.
  • denoinit - Denoinit generates useful files for Deno project.
  • denoliver - A simple, dependency free file server with live reload.
  • denomander - Deno command-line interfaces inspired from commander.js.
  • denon - A daemon script runner, like nodemon. Built in and for Deno.
  • denopendabot - Dependabot for Deno projects.
  • denopkg - An easier way to use code from GitHub in your Deno project.
  • denoversion - SemVer and git version management for Deno.
  • denox - Like packages.json scripts, but for Deno with permissions support.
  • deno.mk - Cross-platform Makefile for installing and running Deno.
  • deno_docker - Latest dockerfiles and images for Deno - alpine, centos, debian, ubuntu.
  • dev_server - Let TypeScript files be used directly in the script tag.
  • dmm - Lightweight Deno Module Manager
  • dnt - Deno to npm package build tool.
  • dpm
    • BoltDoggy/deno#dpm - Deno Package Manager, install global command for deno. like denoget.
    • dpmland/dpm - Deno Package Manager, a NPM | Yarn Experience for Deno
  • dvm
  • kopo-cli - A Deno registry browser in the terminal.
  • make-deno-edition - Automatically makes package.json projects (such as npm packages and node.js modules) compatible with Deno.
  • packer-provisioner-deno - A Packer plugin that makes it easy to build virtual machine images with Deno scripts.
  • pre-commit-deno - pre-commit git hooks for Deno projects.
  • pup - Advanced process manager for Deno. With autorestart, fs watch, cron start, process telemetry, ipc, clustering, load balancer and more.
  • starter - Deno module starter template with GitHub Actions CI
  • trex - Package management like npm for deno.
  • udd - Update Deno dependencies: updates import statements to their latest published version.
  • velociraptor - An npm-style script runner for Deno.
  • vscode-deno - VS Code extension that provides Deno support using the TypeScript Deno language service plugin.
  • vscode-deno-starter - VS Code project boilerplate to get started with Deno.
  • Update Deno - Github Action that puts a file with the latest Deno Version in your repository.
  • denofn-selfhosted - Self-hosted Deno functions, made with Deno and Docker.

Integrations

Blogs/Newsletters

  • Craig's Deno Diary - A blog focussing on Deno tech & lib howtos.
  • Deno Blog - The official blog of the Deno Company.
  • Deno News - A newsletter of Deno articles, news and cool projects.

Articles

Presentations

Resources

Books

Resources in Other Languages

Chinese

Hebrew

Indonesian

Italian

Japanese

Russian

Spanish

Darija

Kurdish (Central)

About

Curated list of awesome things related to Deno

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published