DEV Community

Iain Freestone
Iain Freestone

Posted on • Originally published at iainfreestone.com

๐Ÿš€10 Trending projects on GitHub for web developers - 4th September 2020

Trending Projects is available as a weekly newsletter please sign up at www.iainfreestone.com to ensure you never miss an issue.

1. VS Code Debug Visualizer

A VS Code extension for visualizing data structures while debugging. Like the VS Code's watch view, but with rich visualizations of the watched value

GitHub logo hediet / vscode-debug-visualizer

An extension for VS Code that visualizes data during debugging.

VS Code Debug Visualizer

See README.md for the readme of the extension.

You can get the extension in the marketplace.

See CONTRIBUTING.md for build instructions and implementation details.





2. Arwes

Arwes is a web framework to build user interfaces for web applications based on futuristic science fiction and cyberpunk styles, animations, and sound effects.

GitHub logo arwes / arwes

Futuristic Sci-Fi UI Web Framework.

ARWES

Futuristic Sci-Fi UI Web Framework


ARWES is a web framework to build user interfaces based on futuristic science fiction designs, animations, and sound effects. The concepts behind are opinionated with influences from Cyberprep and productions like Star Citizen, Halo, NIKKE, and Mecha Break. It tries to inspire advanced science and technology.

The project is under development and not ready for production yet. It is still in alpha release, so the components are being tested and their API may change as it gets completed.

Branch main is for 1.0.0-alpha releases and public content deployed at arwes.dev.

Branch next is for 1.0.0-next releases and active development deployed at next.arwes.dev.

The previous version @arwes/[package]@1.0.0-alpha.19 was moved to version1-breakpoint2.arwes.dev and playground.version1-breakpoint2.arwes.dev with the branch version1-breakpoint2 where you can find the components, the playground, and the website source code. This version was released in April, 2021, and itโ€ฆ


3. JavaScript Testing Best Practices

Comprehensive and exhaustive JavaScript & Node.js testing best practices

GitHub logo goldbergyoni / javascript-testing-best-practices

๐Ÿ“—๐ŸŒ ๐Ÿšข Comprehensive and exhaustive JavaScript & Node.js testing best practices (July 2023)


๐Ÿ‘‡ Why this guide can take your testing skills to the next level


๐Ÿ“— 50+ best practices: Super-comprehensive and exhaustive

This is a guide for JavaScript & Node.js reliability from A-Z. It summarizes and curates for you dozens of the best blog posts, books, and tools the market has to offer

๐Ÿšข Advanced: Goes 10,000 miles beyond the basics

Hop into a journey that travels way beyond the basics into advanced topics like testing in production, mutation testing, property-based testing, and many other strategic & professional tools. Should you read every word in this guide your testing skills are likely to go way above the average

๐ŸŒ Full-stack: front, backend, CI, anything

Start by understanding the ubiquitous testing practices that are the foundation for any application tier. Then, delve into your area of choice: frontend/UI, backend, CI, or maybe all of them?


Written By Yoni Goldberg - A JavaScript &

โ€ฆ

4. OpenLayers

OpenLayers is a high-performance, feature-packed library for creating interactive maps on the web. It can display map tiles, vector data and markers loaded from any source on any web page. OpenLayers has been developed to further the use of geographic information of all kinds.

OpenLayers

OpenLayers is a high-performance, feature-packed library for creating interactive maps on the web. It can display map tiles, vector data and markers loaded from any source on any web page. OpenLayers has been developed to further the use of geographic information of all kinds. It is completely free, Open Source JavaScript, released under the BSD 2-Clause License.

Getting Started

Install the ol package:

npm install ol

Import just what you need for your application:

import Map from 'ol/Map';
import View from 'ol/View';
import TileLayer from 'ol/layer/Tile';
import XYZ from 'ol/source/XYZ';

new Map({
  target: 'map',
  layers: [
    new TileLayer({
      source: new XYZ({
        url: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png'
      })
    })
  ],
  view: new View({
    center: [0, 0],
    zoom: 2
  })
});
Enter fullscreen mode Exit fullscreen mode

Seeโ€ฆ


5. Project Guidelines

While developing a new project is like rolling on a green field for you, maintaining it is a potential dark twisted nightmare for someone else. Here's a list of guidelines we've found, written and gathered that (we think) works really well with most JavaScript projects

GitHub logo elsewhencode / project-guidelines

A set of best practices for JavaScript projects

ไธญๆ–‡็‰ˆ | ๆ—ฅๆœฌ่ชž็‰ˆ | ํ•œ๊ตญ์–ด | ะ ัƒััะบะธะน | Portuguรชs | Italiana

Project Guidelines ยท PRs Welcome

While developing a new project is like rolling on a green field for you, maintaining it is a potential dark twisted nightmare for someone else Here's a list of guidelines we've found, written and gathered that (we think) works really well with most JavaScript projects here at elsewhen If you want to share a best practice, or think one of these guidelines should be removed, feel free to share it with us.


1. Git

Git

1.1 Some Git rules

There are a set of rules to keep in mind:

  • Perform work in aโ€ฆ


6. RxDB

RxDB (short for Reactive Database) is a NoSQL-database for JavaScript Applications like Websites, hybrid Apps, Electron-Apps, Progressive Web Apps and NodeJs. Reactive means that you can not only query the current state, but subscribe to all state changes like the result of a query or even a single field of a document.

GitHub logo pubkey / rxdb

A fast, local first, reactive Database for JavaScript Applications https://rxdb.info/


JavaScript Database

A fast, local-first, reactive Database for JavaScript Applications

ย  ย  ย  ย 

ย  ย  ย 


ย ย What is RxDB?

RxDB (short for Reactive Database) is a local-first, NoSQL-database for JavaScript Applications like Websites, hybrid Apps, Electron-Apps, Progressive Web Apps, Deno and Node.js Reactive means that you can not only query the current state, but subscribe to all state changes like the result of a query or even a single field of a document. This is great for UI-based realtime applications in a way that makes it easy to develop and also has great performance benefits but can also be used to create fast backends in Node.js.
RxDB provides an easy to implement protocol for realtime replication with your existing infrastructure or one of the plugins for HTTP, GraphQL, CouchDB, Websocket, WebRTC, Supabase, Firestore, NATS.
RxDB is based on a storage interface that enables youโ€ฆ


7. G6: A Graph Visualization Framework in TypeScript.

G6 is a graph visualization engine, which provides a set of basic mechanisms, including rendering, layout, analysis, interaction, animation, and other auxiliary tools. G6 aims to simplify the relationships, and help people to obtain the insight of relational data.

GitHub logo antvis / G6

โ™พ A Graph Visualization Framework in JavaScript.

English | ็ฎ€ไฝ“ไธญๆ–‡

G6๏ผšๅ›พๅฏ่ง†ๅˆ†ๆžๅผ•ๆ“Ž

npm Version Build Status Coverage Status npm Download typescript npm License

ไป‹็ป โ€ข ๆกˆไพ‹ โ€ข ๆ•™็จ‹ โ€ข API

G6 ๆ˜ฏไธ€ไธชๅ›พๅฏ่ง†ๅŒ–ๅผ•ๆ“Žใ€‚ๅฎƒๆไพ›ไบ†ๅ›พ็š„็ป˜ๅˆถใ€ๅธƒๅฑ€ใ€ๅˆ†ๆžใ€ไบคไบ’ใ€ๅŠจ็”ปใ€ไธป้ข˜ใ€ๆ’ไปถ็ญ‰ๅ›พๅฏ่ง†ๅŒ–ๅ’Œๅˆ†ๆž็š„ๅŸบ็ก€่ƒฝๅŠ›ใ€‚ๅŸบไบŽ G6๏ผŒ็”จๆˆทๅฏไปฅๅฟซ้€Ÿๆญๅปบ่‡ชๅทฑ็š„ๅ›พๅฏ่ง†ๅŒ–ๅˆ†ๆžๅบ”็”จ๏ผŒ่ฎฉๅ…ณ็ณปๆ•ฐๆฎๅ˜ๅพ—็ฎ€ๅ•๏ผŒ้€ๆ˜Ž๏ผŒๆœ‰ๆ„ไน‰ใ€‚

โœจ ็‰นๆ€ง

G6 ไฝœไธบไธ€ๆฌพไธ“ไธš็š„ๅ›พๅฏ่ง†ๅŒ–ๅผ•ๆ“Ž๏ผŒๅ…ทๆœ‰ไปฅไธ‹็‰นๆ€ง๏ผš

  • ไธฐๅฏŒ็š„ๅ…ƒ็ด ๏ผšๅ†…็ฝฎไธฐๅฏŒ็š„่Š‚็‚นใ€่พนใ€Combo UI ๅ…ƒ็ด ๏ผŒๆ ทๅผ้…็ฝฎไธฐๅฏŒ๏ผŒๆ”ฏๆŒๆ•ฐๆฎๅ›ž่ฐƒ๏ผŒไธ”ๅ…ทๅค‡ๆœ‰็ตๆดปๆ‰ฉๅฑ•่‡ชๅฎšไน‰ๅ…ƒ็ด ็š„ๆœบๅˆถใ€‚
  • ๅฏๆŽง็š„ไบคไบ’๏ผšๅ†…็ฝฎ 10+ ไบคไบ’่กŒไธบ๏ผŒไธ”ๆไพ›ไธฐๅฏŒ็š„ๅ„็ฑปไบ‹ไปถ๏ผŒไพฟไบŽๆ‰ฉๅฑ•่‡ชๅฎšไน‰็š„ไบคไบ’่กŒไธบใ€‚
  • ้ซ˜ๆ€ง่ƒฝๅธƒๅฑ€๏ผšๅ†…็ฝฎ 10+ ๅธธ็”จ็š„ๅ›พๅธƒๅฑ€๏ผŒ้ƒจๅˆ†ๅŸบไบŽ GPUใ€Rust ๅนถ่กŒ่ฎก็ฎ—ๆๅ‡ๆ€ง่ƒฝ๏ผŒๆ”ฏๆŒ่‡ชๅฎšไน‰ๅธƒๅฑ€ใ€‚
  • ไพฟๆท็š„็ป„ไปถ๏ผšไผ˜ๅŒ–ๅ†…็ฝฎ็ป„ไปถๅŠŸ่ƒฝๅŠๆ€ง่ƒฝ๏ผŒไธ”ๆœ‰็ตๆดป็š„ๆ‰ฉๅฑ•ๆ€ง๏ผŒไพฟไบŽไธšๅŠกๅฎž็Žฐๅฎšๅˆถ่ƒฝๅŠ›ใ€‚
  • ๅคšไธป้ข˜่‰ฒๆฟ๏ผšๆไพ›ไบ†ไบฎ่‰ฒใ€ๆš—่‰ฒไธคๅฅ—ๅ†…็ฝฎไธป้ข˜๏ผŒๅœจ AntV ๆ–ฐ่‰ฒๆฟๅ‰ๆไธ‹๏ผŒ่žๅ…ฅ 20+ ๅธธ็”จ็คพๅŒบ่‰ฒๆฟใ€‚
  • ๅคš็ŽฏๅขƒๆธฒๆŸ“๏ผšๅ‘ๆŒฅ G ่ƒฝๅŠ›๏ผŒ ๆ”ฏๆŒ Canvasใ€SVG ไปฅๅŠ WebGL๏ผŒๅ’Œ Node.js ๆœๅŠก็ซฏๆธฒๆŸ“๏ผ›ๅŸบไบŽ WebGL ๆไพ›ๅผบๅคง 3D ๆธฒๆŸ“ๅ’Œ็ฉบ้—ดไบคไบ’็š„ๆ’ไปถๅŒ…ใ€‚
  • React ไฝ“็ณป๏ผšๅˆฉ็”จ React ๅ‰็ซฏ็”Ÿๆ€๏ผŒๆ”ฏๆŒ React ่Š‚็‚น๏ผŒๅคงๅคงไธฐๅฏŒ G6 ็š„่Š‚็‚นๅ‘ˆ็Žฐๆ ทๅผใ€‚

๐Ÿ”จ ๅผ€ๅง‹ไฝฟ็”จ

ๅฏไปฅ้€š่ฟ‡ NPM ๆˆ– Yarn ็ญ‰ๅŒ…็ฎก็†ๅ™จๆฅๅฎ‰่ฃ…ใ€‚

$ npm install @antv/g6
Enter fullscreen mode Exit fullscreen mode

ๆˆๅŠŸๅฎ‰่ฃ…ไน‹ๅŽ๏ผŒๅฏไปฅ้€š่ฟ‡ import ๅฏผๅ…ฅ Graph ๅฏน่ฑกใ€‚

<div id="container"></div>
Enter fullscreen mode Exit fullscreen mode
import { Graph } from '@antv/g6';
// ๅ‡†ๅค‡ๆ•ฐๆฎ
const data = {
  nodes: [
    /* your nodes data */
  ],
  edges: [
    /* your edges data */
  ],
};

// ๅˆๅง‹ๅŒ–ๅ›พ่กจๅฎžไพ‹
const graph = new Graph({
  container: 'container',
  data,
  node: {
    palette: {
      type: 'group',
      field
โ€ฆ
Enter fullscreen mode Exit fullscreen mode

8. Stitches

Near-zero runtime, server-side rendering, multi-variant support, and best-in-class developer experience.

GitHub logo stitchesjs / stitches

[Not Actively Maintained] CSS-in-JS with near-zero runtime, SSR, multi-variant support, and a best-in-class developer experience.

Update June 19, 2023: Stitches is no longer actively maintained due to changes in the React ecosystem and maintainer availability. You can read more here.


stitches

Stitches

Style your components with confidence

CSS-in-JS with near-zero runtime, SSR, multi-variant support, and a best-in-class developer experience.

Stitches Core

Framework-agnostic implementation.

npm install @stitches/core
Enter fullscreen mode Exit fullscreen mode

Read more

Stitches React

React wrapper including the styled API.

npm install @stitches/react
Enter fullscreen mode Exit fullscreen mode

Read more


Documentation

For full documentation, visit stitches.dev.

Contributing

Please follow our contributing guidelines.

Community

You can join the Stitches Discord to chat with other members of the community.

Here's a list of community-built projects:

Authors

License

Licensed under the MIT License, Copyright ยฉ 2022-present WorkOS.

See LICENSE for more information.





9. How They Test

A curated collection of publicly available resources on how software companies around the world test their software systems and build their quality culture.

GitHub logo abhivaikar / howtheytest

A collection of public resources about how software companies test their software

How They Test

Contributions Welcome!

A curated collection of publicly available resources on how software companies around the world test their software systems and build their quality culture.

Foreword

One of the outcomes of the various Taqelah meetups was that many software companies got to share their testing and quality culture with the community. It was absolutely fantastic to see the amazing stuff companies are doing to test their software, and ensure quality of their products and platforms.

Apart from this, many companies regularly come forward and share their best practices, tools, techniques and culture of software testing on various public platforms like conferences, blogs & meetups. The resources are there but dispersed, lost into the internet.

There is no single knowledge repository that gives a direct look at these best practices, tools, techniques and culture of software testing these companies adopt. This repository intends to do that.

Happy Learning!

Please note,โ€ฆ


10. Portainer

Portainer is a lightweight management UI which allows you to easily manage your different Docker environments (Docker hosts or Swarm clusters). Portainer is meant to be as simple to deploy as it is to use.

GitHub logo portainer / portainer

Making Docker and Kubernetes management easy.

Portainer Community Edition is a lightweight service delivery platform for containerized applications that can be used to manage Docker, Swarm, Kubernetes and ACI environments. It is designed to be as simple to deploy as it is to use. The application allows you to manage all your orchestrator resources (containers, images, volumes, networks and more) through a โ€˜smartโ€™ GUI and/or an extensive API.

Portainer consists of a single container that can run on any cluster. It can be deployed as a Linux container or a Windows native container.

Portainer Business Edition builds on the open-source base and includes a range of advanced features and functions (like RBAC and Support) that are specific to the needs of business users.

Latest Version

Portainer CE is updatedโ€ฆ





Trending Projects is available as a weekly newsletter please sign up at www.iainfreestone.com to ensure you never miss an issue.

If you enjoyed this article you can follow me on Twitter where I regularly post bite size tips relating to HTML, CSS and JavaScript.

Top comments (1)

Collapse
 
creativemacmac profile image
creativemacmac

as always so interesting, I can safely say I hadnt ever heard of these repos but certainly am going to check out stitches and rxdb for react :)