TypeScript SVG

Open-source TypeScript projects categorized as SVG

Top 23 TypeScript SVG Projects

  • echarts

    Apache ECharts is a powerful, interactive charting and data visualization library for browser

  • Project mention: A web crawler program for crawling Echarts official website examples implemented by Puppeter | dev.to | 2024-04-12

    import puppeteer from "puppeteer"; import fs from "node:fs"; import { storiesTpl, storiesArgs, generOptions, generOptionsWithFn, } from "./template.mjs"; const ECHARTS_BASE_URL = "https://echarts.apache.org/examples/en/index.html"; function capitalizeFirstLetter(str) { if (!str || str.length === 0) { return ""; } str = str.toLowerCase(); return str.charAt(0).toUpperCase() + str.slice(1); } (async function () { const browser = await puppeteer.launch(); const page = await browser.newPage(); // Navigate the page to a URL await page.goto(ECHARTS_BASE_URL); // Set screen size await page.setViewport({ width: 1080, height: 1024 }); // Type into search box // const examples = await page.type([".example-list-panel"]); const searchResultSelector = ".example-list-panel > div"; const results = await page.$$(searchResultSelector); for (const element of results) { // gener namespace const ele = await element.$(".chart-type-head"); const title = await ele.evaluate((el) => el.textContent); let namespace = title.split(" ").filter(Boolean); namespace = namespace.slice(0, namespace.length - 1); namespace = namespace .map((item) => item.replace("\n", "").replace("/", "")) .filter(Boolean) .join(""); console.log(`${namespace} start`); const instances = await element.$$(".row .example-list-item"); const components = []; for (const instance of instances) { // title const titleElement = await instance.$(".example-title"); const subTitle = await titleElement.evaluate((el) => el.textContent); const titles = subTitle .split(" ") .filter(Boolean) .map((item) => item .replace(/\+/g, "") .replace(/\(/g, "") .replace(/\)/g, "") .replace(/-/g, "") ); const title = titles.map((item) => capitalizeFirstLetter(item)).join(""); const link = await instance.$(".example-link"); const newPagePromise = new Promise((resolve) => { browser.on("targetcreated", async (target) => { if (target.type() === "page") { const targetPage = await target.page(); const url = await targetPage.url(); if (url.includes("editor")) { resolve(targetPage); } } }); }); await link.click(); const newPage = await newPagePromise; await newPage.setViewport({ width: 40000, height: 20000 }); await newPage.waitForSelector(".ace_text-layer"); await new Promise((resolve) => { setTimeout(() => { resolve(); }, 3000); }); let content = await newPage.evaluate( () => document.querySelector(".ace_text-layer").innerText ); content = content .replace(/\[\]/g, "[] as any") .replace(//g, "") .replace(/var/g, "let"); let options; if (content.includes("myChart")) { options = generOptionsWithFn({ options: content }); } else { options = generOptions({ options: content }); } components.push({ options, title }); await newPage.close(); } const args = components .filter(({ options }) => { if (options.includes("$")) return false; return true; }) .map(({ options, title }) => storiesArgs({ options: options, name: title }) ) .join("\r\n"); const scripts = storiesTpl({ namespace: `Charts/${namespace}`, components: args, }); fs.writeFileSync(`./bots/assests/${namespace}.stories.ts`, scripts); console.log(`${namespace} end`); } })();

  • tldraw

    Infinite canvas.

  • Project mention: Tldraw License Change | news.ycombinator.com | 2024-02-05
  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • visx

    🐯 visx | visualization components

  • Project mention: React Component Libraries | dev.to | 2024-03-13

    Official Website: https://airbnb.io/visx/

  • react-content-loader

    ⚪ SVG-Powered component to easily create skeleton loadings.

  • chartist

    Simple responsive charts

  • nivo

    nivo provides a rich set of dataviz components, built on top of the awesome d3 and React libraries

  • Project mention: Level Up Your Web App with Stunning React Charts: Introducing the Top 10 React Charts Libraries | dev.to | 2023-07-31

    Nivo is a data visualization library built on top of D3.js and React. It offers a range of well-designed, customizable charts with great animations, making it suitable for creating visually impressive data visualizations.

  • G2

    📊 The concise and progressive visualization grammar.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • svgr

    Transform SVGs into React components 🦁

  • Project mention: Nx + NextJS + Docker - The Nx way: Creating the NextJS application | dev.to | 2023-06-27

    //@ts-check // eslint-disable-next-line @typescript-eslint/no-var-requires const { composePlugins, withNx } = require('@nx/next'); /** * @type {import('@nx/next/plugins/with-nx').WithNxOptions} **/ const nextConfig = { nx: { // Set this to true if you would like to use SVGR // See: https://github.com/gregberge/svgr svgr: false, }, }; const plugins = [ // Add more Next.js plugins to this list if needed. withNx, ]; module.exports = composePlugins(...plugins)(nextConfig);

  • satori

    Enlightened library to convert HTML and CSS to SVG

  • Project mention: Creating an OG image using React and Netlify Edge Functions | dev.to | 2024-04-16

    View on GitHub

  • react-diagrams

    a super simple, no-nonsense diagramming library written in react that just works

  • Project mention: react-diagrams VS rete - a user suggested alternative | libhunt.com/r/react-diagrams | 2023-06-09
  • IconPark

    🍎Transform an SVG icon into multiple themes, and generate React icons,Vue icons,svg icons

  • Project mention: 29 Websites For Free Icon Sets | dev.to | 2023-09-22

    IconPark - More than 1,200 high-quality icons, and an interface for customizing them.

  • billboard.js

    📊 Re-usable, easy interface JavaScript chart library based on D3.js

  • X6

    🚀 JavaScript diagramming library that uses SVG and HTML for rendering.

  • html-to-image

    ✂️ Generates an image from a DOM node using HTML5 canvas and SVG.

  • pts

    A library for visualization and creative-coding

  • ngx-charts

    :bar_chart: Declarative Charting Framework for Angular

  • Project mention: Advice on building custom charts with ngxcharts | /r/Angular2 | 2023-05-20

    Is anyone willing to help out and provide some advice and knowledge on how to build custom charts with ngxcharts (https://github.com/swimlane/ngx-charts)?

  • svg-path-editor

    Online editor to create and manipulate SVG paths

  • iconify

    Universal icon framework. One syntax for FontAwesome, Material Design Icons, DashIcons, Feather Icons, EmojiOne, Noto Emoji and many other open source icon sets (over 150 icon sets and 200k icons). SVG framework, React, Vue and Svelte components!

  • Project mention: Show HN: I built a search engine for 200k open source icons | news.ycombinator.com | 2024-04-03
  • canvg

    JavaScript SVG parser and renderer on Canvas

  • sqip

    "SQIP" (pronounced \skwɪb\ like the non-magical folk of magical descent) is a SVG-based LQIP technique.

  • panzoom

    A library for panning and zooming elements using CSS transforms :mag:

  • Project mention: Interactive Map of Linux Kernel | news.ycombinator.com | 2023-09-12

    And the controls seem to be made with https://github.com/timmywil/panzoom:

        

  • coreui-icons

    CoreUI Free Icons - Premium designed free icon set with marks in SVG, Webfont and raster formats

  • Project mention: 29 Websites For Free Icon Sets | dev.to | 2023-09-22

    CoreUI Icons - 1500+ simply beautiful open source icons in multiple formats SVG, PNG, and Webfonts.

  • react-native-graph

    📈 Beautiful, high-performance Graphs and Charts for React Native built with Skia

  • Project mention: Best way to build charts in React Native? | /r/reactnative | 2023-06-07

    Check out React Native Graph, it uses Skia and handles 120fps animations: https://github.com/margelo/react-native-graph

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

TypeScript SVG related posts

Index

What are some of the best open-source SVG projects in TypeScript? This list will help you:

Project Stars
1 echarts 58,883
2 tldraw 32,409
3 visx 18,712
4 react-content-loader 13,355
5 chartist 13,314
6 nivo 12,643
7 G2 11,955
8 svgr 10,294
9 satori 10,117
10 react-diagrams 8,323
11 IconPark 7,833
12 billboard.js 5,743
13 X6 5,353
14 html-to-image 5,171
15 pts 5,097
16 ngx-charts 4,267
17 svg-path-editor 3,802
18 iconify 3,786
19 canvg 3,562
20 sqip 3,362
21 panzoom 2,036
22 coreui-icons 1,963
23 react-native-graph 1,853

Sponsored
Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com