ts-loader
svgr
Our great sponsors
ts-loader | svgr | |
---|---|---|
6 | 30 | |
3,424 | 10,294 | |
0.3% | - | |
4.8 | 6.1 | |
2 days ago | 5 days ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ts-loader
-
webpack adoption guide: Overview, examples, and alternatives
It'll be a little different than your typical "what is webpack?" article in that I write this as the maintainer of ts-loader, a loader used for integrating TypeScript with webpack. I've worked in the webpack ecosystem for some years now, and I'll share some of my experiences with you.
-
The Complete Guide for Setting Up React App from Scratch (feat. TypeScript)
why I use @babel/preset-typescript over ts-loader and awesome-typescript-loader to complie TypeScript? it's blazingly faster than the others and has more perks(read #4) ts-loader doesn't natively support HMR(Hot Module Replacement) awesome-typescript-loader's latest release is on Jun 22, 2018 TypeScript With Babel: A Beautiful Marriage - Matt Turnbull's Post
-
Converting to Typescript
Okay. The normal setup is that you use https://github.com/TypeStrong/ts-loader or https://github.com/TypeStrong/fork-ts-checker-webpack-plugin as part of your Webpack config. Those will run the TS compilation step as part of the Webpack processing sequence.
-
Using styled-components with SWC compiler?
I've recently tried SWC for building my project instead of ts-loader and was blown away by its performance (I got 8x-10x speedup on a Windows machine).
-
Sharing TypeScript code between Node.js and Vue.js
{ "compilerOptions": { "target": "esnext", "module": "esnext", "strict": true, "jsx": "preserve", "importHelpers": true, "moduleResolution": "node", "experimentalDecorators": true, "skipLibCheck": true, "esModuleInterop": true, "allowSyntheticDefaultImports": true, "sourceMap": true, "baseUrl": "./", "outDir": "./dist", // https://github.com/TypeStrong/ts-loader/issues/1138 "importsNotUsedAsValues": "preserve", "types": [ "webpack-env" ], "paths": { "@/*": [ "src/*" ], "@shared/*": [ "../shared/*" ] }, "lib": [ "esnext", "dom", "dom.iterable", "scripthost" ] }, "include": [ "src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "tests/**/*.ts", "tests/**/*.tsx", "../shared/**/*" ], "exclude": [ "node_modules" ] }
-
esbuild-loader: Replace babel-loader/ts-loader and benefit from the speed of esbuild while sticking with Webpack
See https://github.com/TypeStrong/ts-loader#happypackmode. Switching to esbuild-loader cut my build time in half.
svgr
-
Nx + NextJS + Docker - The Nx way: Creating the NextJS application
//@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);
- Easily use SVGs as JSX/TSX in your ReactJs app
- How do I use SVG icons in React?
-
SVGR for your React app
Most of the time, developers tend to add svg images to an assets directory and import them either directly or as a React component. This process not only increases your app bundle size but also makes managing all the assets difficult. What if there was a way to manage all the application icons like the way we import them from any other icon library? Yes, react-svgr helps you manage all the icons in your React application.
-
What would be the best way to implement SVG's into your project?
If you are using react, there is a tool called SVGR, which will take in an SVG file and return a react component with all the props. This can be really useful if you want to treat SVG more like a markup that will be embedded directly into your HTML. This becomes really helpful when you want to style SVG through props or add transformations and animations. Using SVG directly in markup has so many perks and advantages to the point i don't use them as source in image tags.
-
One way of building an SVG icon library for your project
Really interesting framework agnostic approach, but I think SVGR is a better option for my React homies. It imports an SVG file as a React component. Shouts also to react-icons if Font Awesome, Material Icons and friends are more your bag.
-
Alternative libs to migrate from React to Vue (or Vue to React)
SVGR
-
Power up SVGs with React and CSS
There is another way to import an SVG in Create React App, though. We can import the SVG as a ReactComponent. This is because CRA leverages SVGR to process SVGs.
-
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ React-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠΊΠΎΠ½ΠΎΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Figma API ΠΈ SVGR. Π§Π°ΡΡΡ 2.
const { types } = require('@babel/core'); module.exports = { ... template: function svgrCustomTemplate( { imports, interfaces, componentName, props, jsx, exports }, { tpl } ) { // ΠΌΠ΅Π½ΡΠ΅ΠΌ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π½Π° SvgIcon jsx.openingElement.name.name = 'SvgIcon'; jsx.closingElement.name.name = 'SvgIcon'; // https://github.com/gregberge/svgr/issues/530 // ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΏΡΠΎΠΏΠ°Π΄Π°Π΅Ρ ΡΠΏΡΠ΅Π΄ ΠΏΡΠΎΠΏΡΠΎΠ² // ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΏΡΠ΅Π΄ ΠΏΡΠΎΠΏΡΠΎΠ² ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ jsx.openingElement.attributes.push( types.jSXSpreadAttribute(types.identifier('props')) ); return tpl` ${imports}; import { SvgIcon } from '../SvgIcon'; ${interfaces}; const ${componentName} = (${props}) => ( ${jsx} ); ${exports}; ` } }
-
How can I export an interactive figma component to an interactive react component?
Is this an icon or icon set? Because you can absolutely change SVG icons into react components with SVGR. https://react-svgr.com/
What are some alternatives?
swc - Rust-based platform for the Web
svg-sprite-loader - Webpack loader for creating SVG sprites.
esbuild-loader - Webpack loader for esbuild: Speed up your build β‘οΈ
vite-plugin-svgr - Vite plugin to transform SVGs into React components
babel-plugin-styled-components - Improve the debugging experience and add server-side rendering support to styled-components
svgo - βοΈ Node.js tool for optimizing SVG files
raw-loader - A loader for webpack that allows importing files as a String
esbuild - An extremely fast bundler for the web
graphql-let - A webpack loader / babel-plugin / babel-plugin-macros / CLI / generated file manager of GraphQL code generator.
vite-plugin-svg-icons - Vite Plugin for fast creating SVG sprites.
responsive-loader - A webpack loader for responsive images