Giter Club home page Giter Club logo

png-to-ico's Introduction

png-to-ico

Build Status

convert png to windows ico format

Translations

中文

intro

image

install

npm install --save-dev png-to-ico

usage

npm script:

png-to-ico electron.png > app.ico

npx script:

npx png-to-ico -- electron.png > app.ico

This way you can run the script without installing the package into your project

programming usage:

const fs = require('fs');
const pngToIco = require('png-to-ico');

pngToIco('electron.png')
  .then(buf => {
    fs.writeFileSync('app.ico', buf);
  })
  .catch(console.error);

If you want to control what sizes should be in the icon file, pass an array of files:

pngToIco(['electron16x16.png', 'electron32x32.png'])
  .then(buf => {
    fs.writeFileSync('app.ico', buf);
  });

Why use png-to-ico?

When I work on an electron project, it's always a nightmare to create ico for windows.
There're so many options out there like apps that make icon for you, photoshop plugin. But none of them satisfy me.
I want a JavaScript module that works like the .NET ico tool, which automatically generate different sizes for ico file.

Based on pngjs: Simple PNG encoder/decoder library written entirely in JavaScript for Node, with zero external or native dependencies.
In other words, png-to-ico is written purely in JavaScript, which is great for windows user.

license

MIT

png-to-ico's People

Contributors

danielruf avatar milewski avatar nbarikipoulos avatar steambap avatar stefterv avatar yurivangeffen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

png-to-ico's Issues

Problem installing

Hey there,

I tried installing the script, but get the following npm warnings after the installation:

npm WARN saveError ENOENT: no such file or directory, open 'C:\WINDOWS\system32\package.json'
npm WARN enoent ENOENT: no such file or directory, open 'C:\WINDOWS\system32\package.json'
npm WARN system32 No description
npm WARN system32 No repository field.
npm WARN system32 No README data
npm WARN system32 No license field.

Furthermore, when I try running the script, I get the following errorcode:

+ CategoryInfo          : ObjectNotFound: (png-to-ico:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

Corrupted icon generated every time

I am having a problem with specific file. This is how I run the script:

echo %~n1.ico
echo png-to-ico %1 %~n1.ico
pause
png-to-ico %1>%~n1.ico
pause

The source and the corrupted result are both attached. The ico file generated is corrupted. I ran it on windows 10.

source_and_result.zip

Could not find MIME for Buffer <null> on nodejs

at Jimp.parseBitmap (/rbd/pnpm-volume/2b227406-9d2f-4472-aaaf-e9b44cc9e0ce/node_modules/.registry.npmjs.org/@jimp/core/0.5.3/node_modules/@jimp/core/dist/index.js:498:32)

at /rbd/pnpm-volume/2b227406-9d2f-4472-aaaf-e9b44cc9e0ce/node_modules/.registry.npmjs.org/@jimp/core/0.5.3/node_modules/@jimp/core/dist/index.js:440:15

at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:525:3) methodName: 'constructor' }

Using jimp-compact

Hi! I just discovered this nice package today. I would suggest switching to jimp-compact which is significantly smaller and potentially faster too.

`/lib` folder missing in v2.1.6

Hey, I just noticed that you released a new version which removes the jimp dependency. Unfortunately, the version on NPM does not include the /lib folder which results in an error:

node:internal/modules/cjs/loader:936
  throw err;
  ^

Error: Cannot find module './lib/png'
Require stack:
- /Users/atanas/server/projects/create-pwa/node_modules/png-to-ico/index.js

This is the folder structure of your module when installed via npm
Screenshot 2022-08-29 at 10 18 09

Can we expose `imagesToIco` function please?

I have an use case where I have already different PNG sizes and I do not need auto resizing. There are several reasons for such situation - e.g. different sizes should have different details. I would love to use this library but I need to provide a list of png files to it. Could we expose such functionality?

Image size is zero?

Hello, thanks for this incredible project so that I can convert my image to ico format in js without any third party library.

I am inspecting the code because some ico readers say the icon we generated is ill-formed.
image

Also, google search console cannot show my icon properly. while others are working well.

buf.writeUInt32LE(0, 20); // The image size.

I found that the image size specified here is 0 and I think it should be equals to size + andMapSize.

const buf = Buffer.alloc(size + andMapSize);

Another question is, comparing to other libraries, we are doing and map here to pad all row into 32bits.

png-to-ico/index.js

Lines 145 to 163 in 754b5bc

for (let y = 0; y < height; y++) {
for (let x = 0; x < width; x++) {
const pxColor = img.getPixelColor(x, y);
// TODO make threshhold configurable
const alpha = (pxColor & 255) > 0 ? 0 : 1;
const bitNum = (height - y - 1) * width + x;
// width per line in multiples of 32 bits
const width32 =
width % 32 === 0 ? Math.floor(width / 32) : Math.floor(width / 32) + 1;
const line = Math.floor(bitNum / width);
const offset = Math.floor(bitNum % width);
const bitVal = alpha & 0x00000001;
const pos = size + line * width32 * 4 + Math.floor(offset / 8);
const newVal = buf.readUInt8(pos) | (bitVal << (7 - (offset % 8)));
buf.writeUInt8(newVal, pos);
}
}

Any references about that?

Error: marker was not found

I tried this but I got this error

const fs = require("fs");
const pngToIco = require("png-to-ico");

var file =
"C:\.......\Attack on Titan Final Season\110531l.jpg";

pngToIco(file)
.then((buf) => {
fs.writeFileSync(
"C:\..........\Attack on Titan Final Season\app.ico",
buf
);
})
.catch((err) => {
console.log(err);
});

Error: marker was not found
at decodeScan (D:\APPS\wamp\www\MY\node\anime_folder\node_modules@jimp\jpeg\node_modules\jpeg-js\lib\decoder.js:344:15)
at constructor.parse (D:\APPS\wamp\www\MY\node\anime_folder\node_modules@jimp\jpeg\node_modules\jpeg-js\lib\decoder.js:804:29)
at Object.decode [as image/jpeg] (D:\APPS\wamp\www\MY\node\anime_folder\node_modules@jimp\jpeg\node_modules\jpeg-js\lib\decoder.js:1096:11)
at Jimp.parseBitmap (D:\APPS\wamp\www\MY\node\anime_folder\node_modules@jimp\core\dist\utils\image-bitmap.js:196:53)
at Jimp.parseBitmap (D:\APPS\wamp\www\MY\node\anime_folder\node_modules@jimp\core\dist\index.js:431:32)
at D:\APPS\wamp\www\MY\node\anime_folder\node_modules@jimp\core\dist\index.js:373:15
at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:63:3) {
methodName: 'constructor'
}

Dependency Errors When Using png-to-ico in a Vue-CLI Project

Hello,

I apologize for the inconvenience. I am a beginner in front-end development and currently only familiar with creating projects using vue-cli. I attempted to use the npm package png-to-ico to implement a PNG to ICO conversion feature in my project. After installing the package via npm and trying to import it using const pngToIco = require('png-to-ico');, I encountered a series of dependency errors at the end of this issue.

I am unsure if I am using the package incorrectly in my project, or if png-to-ico is not suitable for vue-cli projects. If possible, I would appreciate any guidance or clarification on this matter.

Thank you.

 ERROR  Failed to compile with 5 errors                                                                                                                                          03:44:48

 error  in ./node_modules/png-to-ico/lib/png.js

Module not found: Error: Can't resolve 'fs' in 'D:\Projects\sys\node_modules\png-to-ico\lib'

 error  in ./node_modules/pngjs/lib/chunkstream.js

Module not found: Error: Can't resolve 'util' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
        - install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "util": false }

 error  in ./node_modules/pngjs/lib/chunkstream.js

Module not found: Error: Can't resolve 'stream' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "stream": require.resolve("stream-browserify") }'
        - install 'stream-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "stream": false }

 error  in ./node_modules/pngjs/lib/packer-sync.js

Module not found: Error: Can't resolve 'zlib' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }'
        - install 'browserify-zlib'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "zlib": false }

 error  in ./node_modules/pngjs/lib/sync-inflate.js

Module not found: Error: Can't resolve 'assert' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "assert": require.resolve("assert/") }'
        - install 'assert'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "assert": false }

ERROR in ./node_modules/png-to-ico/lib/png.js 3:4-17
Module not found: Error: Can't resolve 'fs' in 'D:\Projects\sys\node_modules\png-to-ico\lib'
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/chunkstream.js 4:11-26
Module not found: Error: Can't resolve 'util' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
        - install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "util": false }
 @ ./node_modules/pngjs/lib/parser-async.js 5:18-42
 @ ./node_modules/pngjs/lib/png.js 5:13-38
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/chunkstream.js 5:13-30
Module not found: Error: Can't resolve 'stream' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "stream": require.resolve("stream-browserify") }'
        - install 'stream-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "stream": false }
 @ ./node_modules/pngjs/lib/parser-async.js 5:18-42
 @ ./node_modules/pngjs/lib/png.js 5:13-38
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/filter-parse-async.js 4:11-26
Module not found: Error: Can't resolve 'util' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
        - install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "util": false }
 @ ./node_modules/pngjs/lib/parser-async.js 6:18-49
 @ ./node_modules/pngjs/lib/png.js 5:13-38
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/packer-async.js 3:11-26
Module not found: Error: Can't resolve 'util' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
        - install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "util": false }
 @ ./node_modules/pngjs/lib/png.js 6:13-38
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/packer-async.js 4:13-30
Module not found: Error: Can't resolve 'stream' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "stream": require.resolve("stream-browserify") }'
        - install 'stream-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "stream": false }
 @ ./node_modules/pngjs/lib/png.js 6:13-38
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/packer-sync.js 5:11-26
Module not found: Error: Can't resolve 'zlib' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }'
        - install 'browserify-zlib'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "zlib": false }
 @ ./node_modules/pngjs/lib/png-sync.js 4:11-35
 @ ./node_modules/pngjs/lib/png.js 7:14-35
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/packer.js 7:11-26
Module not found: Error: Can't resolve 'zlib' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }'
        - install 'browserify-zlib'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "zlib": false }
 @ ./node_modules/pngjs/lib/packer-async.js 6:13-32
 @ ./node_modules/pngjs/lib/png.js 6:13-38
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/parser-async.js 3:11-26
Module not found: Error: Can't resolve 'util' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
        - install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "util": false }
 @ ./node_modules/pngjs/lib/png.js 5:13-38
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/parser-async.js 4:11-26
Module not found: Error: Can't resolve 'zlib' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }'
        - install 'browserify-zlib'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "zlib": false }
 @ ./node_modules/pngjs/lib/png.js 5:13-38
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/parser-sync.js 5:11-26
Module not found: Error: Can't resolve 'zlib' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }'
        - install 'browserify-zlib'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "zlib": false }
 @ ./node_modules/pngjs/lib/png-sync.js 3:12-36
 @ ./node_modules/pngjs/lib/png.js 7:14-35
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/png.js 3:11-26
Module not found: Error: Can't resolve 'util' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
        - install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "util": false }
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/png.js 4:13-30
Module not found: Error: Can't resolve 'stream' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "stream": require.resolve("stream-browserify") }'
        - install 'stream-browserify'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "stream": false }
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/sync-inflate.js 4:13-33
Module not found: Error: Can't resolve 'assert' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "assert": require.resolve("assert/") }'
        - install 'assert'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "assert": false }
 @ ./node_modules/pngjs/lib/parser-sync.js 6:18-43
 @ ./node_modules/pngjs/lib/png-sync.js 3:12-36
 @ ./node_modules/pngjs/lib/png.js 7:14-35
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/sync-inflate.js 5:11-26
Module not found: Error: Can't resolve 'zlib' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }'
        - install 'browserify-zlib'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "zlib": false }
 @ ./node_modules/pngjs/lib/parser-sync.js 6:18-43
 @ ./node_modules/pngjs/lib/png-sync.js 3:12-36
 @ ./node_modules/pngjs/lib/png.js 7:14-35
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

ERROR in ./node_modules/pngjs/lib/sync-inflate.js 6:11-26
Module not found: Error: Can't resolve 'util' in 'D:\Projects\sys\node_modules\pngjs\lib'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
        - add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
        - install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
        resolve.fallback: { "util": false }
 @ ./node_modules/pngjs/lib/parser-sync.js 6:18-43
 @ ./node_modules/pngjs/lib/png-sync.js 3:12-36
 @ ./node_modules/pngjs/lib/png.js 7:14-35
 @ ./node_modules/png-to-ico/lib/png.js 6:4-20
 @ ./node_modules/png-to-ico/index.js 6:4-24
 @ ./src/main.js 5:0-34

webpack compiled with 16 errors

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.