DEV Community

Iain Freestone
Iain Freestone

Posted on • Updated on

πŸš€10 Trending projects on GitHub for web developers - 24th July 2020

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

1. Adobe - React Spectrum

A collection of libraries and tools that help you build adaptive, accessible, and robust user experiences.

GitHub logo adobe / react-spectrum

A collection of libraries and tools that help you build adaptive, accessible, and robust user experiences.

A collection of libraries and tools that help you build adaptive, accessible, and robust user experiences.

React Spectrum

A React implementation of Spectrum, Adobe’s design system. Spectrum provides adaptive, accessible, and cohesive experiences for all Adobe applications.

Explore React Spectrum

React Aria

A library of unstyled React components and hooks that helps you build accessible, high quality UI components for your application or design system.

Learn more about React Aria

React Stately

A library of React Hooks that provides cross-platform state management for your design system.

More information about React Stately

Internationalized

A collection of framework-agnostic internationalization libraries for the web.

Internationalized Packages

Features

  • ♿️ Accessible – Accessibility and behavior is implemented according to WAI-ARIA Authoring Practices, including full screen reader and keyboard navigation support. All components have been tested across a wide variety of screen readers and devices to ensure the best experience possible for…

2. Web Developer Roadmap 2020

Roadmap to becoming a web developer in 2020


3. Foam

Foam is a personal knowledge management and sharing system inspired by Roam Research, built on Visual Studio Code and GitHub.

GitHub logo foambubble / foam

A personal knowledge management and sharing system for VSCode

Foam

πŸ‘€This is an early stage project under rapid development. For updates join the Foam community Discord! πŸ’¬

All Contributors

Visual Studio Marketplace Installs Discord Chat

Foam is a personal knowledge management and sharing system inspired by Roam Research, built on Visual Studio Code and GitHub.

You can use Foam for organising your research, keeping re-discoverable notes, writing long-form content and, optionally, publishing it to the web.

Foam is free, open source, and extremely extensible to suit your personal workflow. You own the information you create with Foam, and you're free to share it, and collaborate on it with anyone you want.

Features

Graph Visualization

See how your notes are connected via a graph with the Foam: Show Graph command.

Graph Visualization

Link Autocompletion

Foam helps you create the connections between your notes, and your placeholders as well.

Link Autocompletion

Sync links on file rename

Foam updates the links to renamed files, so your notes stay consistent.

Sync links on file rename

Unique

…

4. ReDoc

OpenAPI/Swagger-generated API Reference Documentation

GitHub logo Redocly / redoc

πŸ“˜ OpenAPI/Swagger-generated API Reference Documentation

Redoc logo

Generate beautiful API documentation from OpenAPI

npm License

bundle size npm jsDelivr status

About Redoc

Redoc is an open source tool for generating documentation from OpenAPI (formerly Swagger) definitions.

By default Redoc offers a three-panel, responsive layout:

  • The left panel contains a search bar and navigation menu.
  • The central panel contains the documentation.
  • The right panel contains request and response examples.

Redoc demo

Live demo

If you want to see how Redoc renders your OpenAPI definition, you can try it out online at https://redocly.github.io/redoc/.

A version of the Swagger Petstore API is displayed by default. To test it with your own OpenAPI definition, enter the URL for your definition and select TRY IT.

Redoc features

  • Responsive three-panel design with menu/scrolling synchronization
  • Support for OpenAPI 3.1, OpenAPI 3.0, and Swagger 2.0
  • Ability to integrate your API introduction into the side menu
  • High-level grouping in side menu with the x-tagGroups specification extension
  • Simple integration with create-react-app
  • Code samples support…

5. x-spreadsheet

A web-based JavaScript spreadsheet

GitHub logo myliang / x-spreadsheet

The project has been migrated to @wolf-table/table https://github.com/wolf-table/table

x-spreadsheet

npm package NPM downloads NPM downloads Build passing codecov GitHub GitHub code size in bytes Join the chat at https://gitter.im/x-datav/spreadsheet

A web-based JavaScript spreadsheet

Document

CDN

<link rel="stylesheet" href="https://unpkg.com/x-data-spreadsheet@1.1.5/dist/xspreadsheet.css">
<script src="https://unpkg.com/x-data-spreadsheet@1.1.5/dist/xspreadsheet.js"></script>

<script>
   x_spreadsheet('#xspreadsheet');
</script>
Enter fullscreen mode Exit fullscreen mode

NPM

npm install x-data-spreadsheet
Enter fullscreen mode Exit fullscreen mode
<div id="x-spreadsheet-demo"></div>
Enter fullscreen mode Exit fullscreen mode
import Spreadsheet from "x-data-spreadsheet";
// If you need to override the default options, you can set the override
// const options = {};
// new Spreadsheet('#x-spreadsheet-demo', options);
const s = new Spreadsheet("#x-spreadsheet-demo")
  .loadData({}) // load data
  .change(data => {
    // save data to db
  });

// data validation
s.validate()
Enter fullscreen mode Exit fullscreen mode
// default options
{
  mode: 'edit', // edit | read
  showToolbar: true,
  showGrid: true,
  showContextmenu: true,
  view: {
…
Enter fullscreen mode Exit fullscreen mode

6. Wiki.js

A modern, lightweight and powerful wiki app built on NodeJS

GitHub logo requarks / wiki

Wiki.js | A modern and powerful wiki app built on Node.js

Wiki.js

Release License Standard - JavaScript Style Guide Downloads Docker Pulls
Build + Publish Huntr GitHub Sponsors Open Collective backers and sponsors
Chat on Slack Follow on Twitter Follow on Telegram Chat on Discord Reddit

A modern, lightweight and powerful wiki app built on NodeJS

Follow our Twitter feed to learn about upcoming updates and new releases!

Donate

Wiki.js is an open source project that has been made possible due to the generous contributions by community backers. If you are interested in supporting this project, please consider becoming a sponsor, becoming a patron, donating to our OpenCollective, via Paypal or via Ethereum (0xe1d55c19ae86f6bcbfb17e7f06ace96bdbb22cb5).

Become a Sponsor Become a Patron Donate on OpenCollective Donate via Paypal
Donate via Ethereum Donate via Bitcoin Buy a T-Shirt

Gold Tier Sponsors

GitHub Sponsors

Support this project by becoming a sponsor. Your name will show up in the Contribute page of all Wiki.js installations as well as here with a link to your website! [Become a sponsor]


7. Rocket

Rocket is an async web framework for Rust with a focus on usability, security, extensibility, and speed.

GitHub logo rwf2 / Rocket

A web framework for Rust.

Rocket

Build Status Rocket Homepage Current Crates.io Version Matrix: #rocket:mozilla.org

Rocket is an async web framework for Rust with a focus on usability, security extensibility, and speed.

#[macro_use] extern crate rocket;

#[get("/<name>/<age>")]
fn hello(name: &str, age: u8) -> String {
    format!("Hello, {} year old named {}!", age, name)
}

#[launch]
fn rocket() -> _ {
    rocket::build().mount("/hello", routes![hello])
}
Enter fullscreen mode Exit fullscreen mode

Visiting localhost:8000/hello/John/58, for example, will trigger the hello route resulting in the string Hello, 58 year old named John! being sent to the browser. If an <age> string was passed in that can't be parsed as a u8, the route won't get called, resulting in a 404 error.

Documentation

Rocket is extensively documented:


8. Fastify

Fastify is a web framework highly focused on providing the best developer experience with the least overhead and a powerful plugin architecture. It is inspired by Hapi and Express and as far as we know, it is one of the fastest web frameworks in town.

GitHub logo fastify / fastify

Fast and low overhead web framework, for Node.js

CI Package Manager CI Web SIte neostandard javascript style CII Best Practices

NPM version NPM downloads Security Responsible Disclosure Discord Contribute with Gitpod Open Collective backers and sponsors


An efficient server implies a lower cost of the infrastructure, a better responsiveness under load and happy users. How can you efficiently handle the resources of your server, knowing that you are serving the highest number of requests as possible, without sacrificing security validations and handy development?

Enter Fastify. Fastify is a web framework highly focused on providing the best developer experience with the least overhead and a powerful plugin architecture It is inspired by Hapi and Express and as far as we know, it is one of the fastest web frameworks in town.

The main branch refers to the Fastify v5 release, which is not released/LTS yet Check out the 4.x branch for v4.

Table of Contents

Quick start

Create a folder and make it your current working directory:

mkdir my-app
cd my-app
Enter fullscreen mode Exit fullscreen mode

Generate…


9. Handsontable

Handsontable is a JavaScript/HTML5 data grid component with spreadsheet look & feel.
It provides easy data binding, data validation, filtering, sorting and CRUD operations.

GitHub logo handsontable / handsontable

JavaScript data grid with a spreadsheet look & feel. Works with React, Angular, and Vue. Supported by the Handsontable team ⚑

Handsontable

Handsontable is a JavaScript component that combines data grid features with spreadsheet-like UX.
It provides data binding, data validation, filtering, sorting, and CRUD operations.

npm npm CI status FOSSA Status Quality Gate Status


Get started with Handsontable

ReactΒ  AngularΒ  VueΒ  Vue 3Β  Β  JavaScriptΒ 

Handsontable data grid

Features

The most popular features of Handsontable:

Β Β βœ“Β  Multiple column sorting
Β Β βœ“Β  Non-contiguous selection
Β Β βœ“Β  Filtering data
Β Β βœ“Β  Export to file
Β Β βœ“Β  Validating data
Β Β βœ“Β  Conditional formatting
Β Β βœ“Β  Merging cells
Β Β βœ“Β  Freezing rows/columns
Β Β βœ“Β  Moving rows/columns
Β Β βœ“Β  Resizing rows/columns
Β Β βœ“Β  Hiding rows/columns
Β Β βœ“Β  Context menu
Β Β βœ“Β  Comments

Documentation

Get started

1. Install Handsontable

Using a package manager

Get Handsontable from npm, Yarn or NuGet.

npm install handsontable
Enter fullscreen mode Exit fullscreen mode
import Handsontable from 'handsontable';

import 'handsontable/dist/handsontable.full.min.css';
Enter fullscreen mode Exit fullscreen mode

Using a CDN

<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/handsontable/dist/handsontable.full.min.js"></script>

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/handsontable/dist/handsontable.full.min.css" />
Enter fullscreen mode Exit fullscreen mode

2. Create a container

<
…
Enter fullscreen mode Exit fullscreen mode

10. Animate.css

Just-add-water CSS animation

GitHub logo animate-css / animate.css

🍿 A cross-browser library of CSS animations. As easy to use as an easy thing.

Animate.css

GitHub Version Github Star Github Fork License

If you need the old docs - v3.x.x and under - you can find it here.

Just-add-water CSS animation

Installation

Install with npm:

npm install animate.css --save
Enter fullscreen mode Exit fullscreen mode

Install with yarn:

yarn add animate.css
Enter fullscreen mode Exit fullscreen mode

Getting Started

You can find the Animate.css documentation on the website.

Accessibility

Animate.css supports the prefers-reduced-motion media query so that users with motion sensitivity can opt out of animations. On supported platforms (currently all the majors browsers and OS), users can select "reduce motion" on their operating system preferences and it will turn off CSS transitions for them without any further work required.

Core Team

Daniel Eden Elton Mesquita Waren Gonzaga
Daniel Eden Elton Mesquita Waren Gonzaga
Animate.css Creator Maintainer Core Contributor

License

Animate.css is licensed under the Hippocratic License.

Code of Conduct

This project and everyone participating in it is governed by the Contributor Covenant Code of Conduct. By participating, you are expected to uphold this code…


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 (2)

Collapse
 
shadowtime2000 profile image
shadowtime2000

For Tabler Icons you put the link to the Github repository for wiki.js

Collapse
 
iainfreestone profile image
Iain Freestone

Thank you, I clicked publish by accident before I had updated this weeks article. It should all be up to date now.

Tabler Icons was included last week if you are interested