Trending Projects is available as a weekly newsletter please sign up at www.iainfreestone.com to ensure you never miss an issue.
1. Astro
Astro is a fresh but familiar approach to building websites. Astro combines decades of proven performance best practices with the DX improvements of the component-oriented era. Use your favorite JavaScript framework and automatically ship the bare-minimum amount of JavaScriptβby default.
snowpackjs
/
astro
ππ§βπ Keep your eyes to the skies, astronauts!
Astro is a fresh but familiar approach to building websites. Astro combines decades of proven performance best practices with the DX improvements of the component-oriented era. Use your favorite JavaScript framework and automatically ship the bare-minimum amount of JavaScriptβby default.
Announcement Post β
Full Documentation Site β
Project Status
Quick Start
# get started with astro in 3 easy steps:
mkdir new-project-directory
cd new-project-directory
npm init astro
Full Documentation Site β
2. Supercookie
Supercookie uses favicons to assign a unique identifier to website visitors. Unlike traditional tracking methods, this ID can be stored almost persistently and cannot be easily cleared by the user.
jonasstrehle
/
supercookie
β οΈ Browser fingerprinting via favicon!
Supercookie uses favicons to assign a unique identifier to website visitors.
Unlike traditional tracking methods, this ID can be stored almost persistently and cannot be easily cleared by the user.
The tracking method works even in the browser's incognito mode and is not cleared by flushing the cache, closing the browser or restarting the operating system, using a VPN or installing AdBlockers.
About
π Inspiration
- Paper by Scientists at University of Illinois, Chicago: www.cs.uic.edu
- Article by heise: heise.de
Purpose
This repository is for educational and demonstration purposes only!
The demo of "supercookie" as well as the publication of the source code of this repository is intended to draw attention to the problem of tracking possibilities using favicons.
Installation
π§ Docker
requirements
Docker daemon
- Clone repository
git clone https://github.com/jonasstrehle/supercookie
- Update .env file in supercookie/server/.env
HOST_MAIN=yourdomain.com #or localhost:10080
PORT_MAIN=10080
HOST_DEMO=demo.yourdomain.com #or localhost:10081
β¦3. Directus
Directus wraps any SQL database with a real-time GraphQL+REST API and an intuitive app for non-technical users.
directus
/
directus
Open-Source Data Platform π° β Directus wraps any SQL database with a real-time GraphQL+REST API and an intuitive app for non-technical users.
π° Introduction
Directus is a real-time API and App dashboard for managing SQL database content.
- Free & open-source. No artificial limitations, vendor lock-in, or hidden pricing.
- REST & GraphQL API. Instantly adds a blazingly fast Node.js API layer to your database.
- Manage pure SQL. Works with existing SQL databases, or helps build new architectures from scratch.
- Choose your database. Supports PostgreSQL, MySQL, SQLite, OracleDB, MariaDB and MS-SQL.
- Allows self-hosting. Choose your hosting and infrastructure, run locally, or deeply integrate on-premises.
- Completely extensible. Built to white-label, it is easy to customize our modular platform.
- A modern dashboard. A Vue.js Admin App so safe and intuitive, non-technical users require no training.
Learn more about Directus on our website.
π§ Release Candidate
This is pre-release software. While we're providing migrations between versions, changes may occur at any time, and certain features might be missing or broken. You can follow along with the issueβ¦
4. Tinycon
A small library for manipulating the favicon, in particular adding alert bubbles and changing images.
tommoor
/
tinycon
A small library for manipulating the favicon, in particular adding alert bubbles and changing images.
Tinycon
A small library for manipulating the favicon, in particular adding alert bubbles and changing images. Tinycon gracefully falls back to a number in title approach for browsers that don't support canvas or dynamic favicons.
Documentation
Tinycon adds a single object to the global namespace and does not require initialization.
Installation
Install with your favorite package manager.
npm install tinycon --save
yarn add tinycon
Basic Usage
Tinycon.setBubble(6);
Options
Tinycon can take a range of options to customize the look
- width: the width of the alert bubble
- height: the height of the alert bubble
- font: a css string to use for the fontface (recommended to leave this)
- color: the foreground font color
- background: the alert bubble background color
- fallback: should we fallback to a number in brackets for browsers that don't support canvas/dynamic favicons? Boolean, or use the string 'force'β¦
5. Handsfree
Quickly integrate face, hand, and/or pose tracking to your frontend projects in a snap
MIDIBlocks
/
handsfree
Quickly integrate face, hand, and/or pose tracking to your frontend projects in a snap β¨π
Quickly integrate face, hand, and/or pose tracking to your frontend projects in a snap
Powered by:
Handsfree.js.Portfolio.mp4
Explore examples: https://labofoz.notion.site/901ff075d8df4bd7b9500d134c22038b?v=f33d13f1c67b458487250992a8501e2c
π» Project temporarily on hold
Hello! I was recently displaced from my home following a few traumatic events. I wasn't able to raise enough support and so I deleted my socials and am just going to work through this on my own.
It'll take time for me to get back into this project, but it's still very functional. Here are some links:
- 25+ example videos (some with code): https://labofoz.notion.site/901ff075d8df4bd7b9500d134c22038b?v=f33d13f1c67b458487250992a8501e2c
- WordPress version of docs: https://handsfree.dev
- Gesture mapper for hands: https://handsfree.dev/tools/gesture-mapper/
- The lightweight "offline" docs (what you get when you run
npm start
): https://handsfree.js.org
Thanks for your patience, and also for all the support I have received over the last 3 years of developing this library! Oz
Contents
This repo is broken into 3 main parts: The actual libraryβ¦
6. Nano Stores
A tiny (152 bytes) state manager for React/Preact/Vue/Svelte with many atomic tree-shakable stores
nanostores
/
nanostores
A tiny (172 bytes) state manager for React/RN/Preact/Vue/Svelte with many atomic tree-shakable stores
Nano Stores
A tiny state manager for React, React Native, Preact, Vue Svelte, and vanilla JS. ItΒ usesΒ manyΒ atomicΒ stores andΒ direct manipulation.
- Small. between 172 and 526 bytes (minified and gzipped) Zero dependencies. ItΒ usesΒ SizeΒ LimitΒ toΒ control size.
- Fast. With small atomic and derived stores, you do not need to call the selector function forΒ allΒ componentsΒ onΒ every store change.
- Tree Shakable. The chunk contains only stores used by components in the chunk.
- Was designed to move logic from components to stores.
- It has good TypeScript support.
// store/users.ts
import { createStore, update } from 'nanostores'
export const users = createStore<User[]>(() => {
users.set([])
})
export function addUser(user: User) {
update(users, current => [...current,
β¦7. React Flip Toolkit
A lightweight magic-move library for configurable layout transitions
aholachek
/
react-flip-toolkit
A lightweight magic-move library for configurable layout transitions
Comparison with other React FLIP libraries
Feature | react-flip-move |
react-overdrive |
react-flip-toolkit |
---|---|---|---|
Animate position | |||
Animate scale | |||
Animate opacity | |||
Animate parent's size without warping children | |||
Use real FLIP instead of cloning & crossfading | |||
Use springs for animations | |||
Support spring-based stagger effects | |||
Usable with frameworks other than React |
Quick start
npm install react-flip-toolkit
or yarn add react-flip-toolkit
-
Wrap all animated children with a single
Flipper
component that has aflipKey
prop that changes every time animations should happen. -
Wrap elements that should be animated with
Flipped
components that have aflipId
prop matching them across renders.
Table of Contents
8. Flicking
Reliable, flexible and extendable carousel.
naver
/
egjs-flicking
π β»οΈ Everyday 30 million people experience. It's reliable, flexible and extendable carousel.

@egjs/flicking
Demo / Documentation /
Other components
Everyday 30 million people experience. It's reliable, flexible and extendable carousel.
Supported Frameworks
Β Β
Β Β
Β Β
Β Β
π±οΈ Click each images to see its source or check our full demos.
β¨ Features
- Use it in a framework you like.
- We supports all major JS frameworks like React, Vue, Angular
- SSR(Server Side Rendering) ready
- Circular(Loop) Mode
- Ready-to-use plugins you can grab right away.
- Autoplay, Fade effect, Parallax effect, ...
- Restore state like position and active slide with persist
- You can make native-scroll like UI with
bound
andmoveType: freeScroll
- Supports both Desktop & Mobile
- Rich API
- Supports IE9+ with the polyfill
βοΈ Installation
npm
$ npm install --save @egjs/flicking
CDN
- jsDelivr: https://cdn.jsdelivr.net/npm/@egjs/flicking/dist/
- unpkg: https://unpkg.com/@egjs/flicking/dist/
- cdnjs: https://cdnjs.com/libraries/egjs-flicking
π Quick Start
HTML
Flicking requires minimal structure to initialize properly.
You don'tβ¦
9. Ultimate Backend
Multi tenant SaaS starter kit with cqrs graphql microservice architecture, apollo federation, event source and authentication
juicycleff
/
ultimate-backend
Multi tenant SaaS starter kit with cqrs graphql microservice architecture, apollo federation, event source and authentication
ULTIMATE BACKEND
(WIP): This is an enterprise scale advanced microservice pattern with GraphQL API and GRPC Microservices, based on Domain (DDD) using the command query responsibility segregation (CQRS) design pattern. Want to ask Rex Isaac Raphael questions, join the slack channel :)
Description
This should be the go to backend base for your next scalable project. This is a proof of concept project designed to be extremely slim and scalable, with distributed data request and process handling, built from the ground up for production use. It comes with Multi-Tenancy SaaS support, following different multi-tenancy database strategy as well as different resolver patterns
to identify your tenants. The goal is to give your next big project that extra leap to awesomeness. To get started read the instructions below. With support for both Event Store and NATS Streaming for event streaming and Kafka comming soon.
Note: Seeing alot of clone of theβ¦
10. recast
JavaScript syntax tree transformer, nondestructive pretty-printer, and automatic source map generator
benjamn
/
recast
JavaScript syntax tree transformer, nondestructive pretty-printer, and automatic source map generator
recast, v.
- to give (a metal object) a different form by melting it down and reshaping it.
- to form, fashion, or arrange again.
- to remodel or reconstruct (a literary work, document, sentence, etc.).
- to supply (a theater or opera work) with a new cast.
Installation
From NPM:
npm install recast
From GitHub:
cd path/to/node_modules
git clone git://github.com/benjamn/recast.git
cd recast
npm install
Import style
Recast is designed to be imported using named imports:
import { parse, print } from "recast";
console.log(print(parse(source)).code);
import * as recast from "recast";
console.log(recast.print(recast.parse(source)).code);
If you're using CommonJS:
const { parse, print } = require("recast");
console.log(print(parse(source)
β¦Stargazing π
Top risers over last 7 days
- Coding Interview University +4,250 stars
- Free Programming Books +1,145 stars
- Public APIs +965 stars
- JavaScript Questions +736 stars
- Next.js +729 stars
Top growth(%) over last 7 days
- React Virtual Cool +252%
- Map of JavaScript +55%
- Plaiceholder +36%
- Million +31%
- Slides +30%
Top risers over last 30 days
- Coding Interview University +11,307 stars
- Public APIs +7,045 stars
- Free Programming Books +5,265 stars
- Slidev +4,679 stars
- Developer Roadmap +2,855 stars
Top growth(%) over last 30 days
- useStateMachine +282%
- Fig +165%
- Slidev +50%
- Plaiceholder +46%
- Appwrite +41%
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 (4)
This week is really amazing. I love it <3 Thank you so much for share this with us
Agreed some great projects this week. It does still amaze me that week after week I continue to find amazing projects. We are lucky to have such amazing projects at our fingertips.
Awesome coverage! Love to see appwrite.io on it β€οΈ
Really awesome! Thanks a lot!