Coder Social home page Coder Social logo

noto-emoji's Introduction

Noto

Noto Emoji

Noto Emoji (Stands for No Tofu) is an open source (Open Font License 1.1) emoji library that provides standard Unicode emoji support and tools for working with them including:

  • A Unicode compliant color emoji font.
  • A full library of Noto color emoji font files including vector svgs and pngs
  • Metadata for Emoji Input (including shortcodes, emoji ordering, ascii equivalents)

Color Font

The latest font file is found here. If you want to download a specific version, please look at the gh-pages branch, where you will find the built assets for both our latest and older versions.

Monochrome Font

The black-and-white emoji font is back under active development and is available as a variable font

Using NotoColorEmoji

NotoColorEmoji uses the CBDT/CBLC color font format, which is supported by Android and Chrome/Chromium OS. Windows supports it starting with Windows 10 Anniversary Update in Chrome and Edge. On macOS, only Chrome supports it, while on Linux it will support it with some fontconfig tweaking, see issue #36. Currently we do not build other color font formats.

A note about PNGs

The assets provided in the repo are all those used to build the NotoColorEmoji font. With one exception: the flag images in the font are PNG images to which transforms have been applied to standardize the size and generate the wave and border shadow. We do not have SVG versions that reflect these transforms.

License

Emoji fonts (under the fonts subdirectory) are under the SIL Open Font License, version 1.1.
Tools and most image resources are under the Apache license, version 2.0. Flag images under third_party/region-flags are in the public domain or otherwise exempt from copyright (more info).

Contributing

Please read CONTRIBUTING if you are thinking of contributing to this project.

noto-emoji's People

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  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

noto-emoji's Issues

Detective emoji missing emoji variation selector on Android 7.1

I'm not sure if this is the right place to flag this up, if this the wrong place I apologise, I'm happy to forward this on to someone else.

Whilst experimenting with the Noto emoji font that shipped in the Android 7.1 emulator image, it was discovered that there's no glyph for "1F575 FE0F" (detective with emoji presentation selector). However for the gendered emoji such as "1F575 FE0F 200D 2640 FE0F" the emoji presentation selectors do seem to be required.

According to the latest draft emoji specification ( http://www.unicode.org/Public/emoji/4.0/emoji-data.txt ) the detective is still text presentation by default and thus should require the emoji presentation selector (please let me know if you've heard otherwise - it could be that this draft is outdated).

I also realise that the emoji presentation selector also exists within the font (and I think it's a zero width glyph) and so it will still render correctly with or without the presentation selector, however, not having a glyph for the explicit emoji presentation breaks the Paint.hasGlyph(...) method in Android ( https://developer.android.com/reference/android/graphics/Paint.html#hasGlyph(java.lang.String) ) because technically it's two glyphs.

Any help getting to the bottom of what's going on is appreciated 😄

Build other Emoji fonts besides Noto

The noto-emoji project is two things at the same time:

  • an open-source toolchain for converting SVG assets to TrueType with colored emoji glyphs;
  • freely licensed SVG assets for the Noto Emoji glyphs.

After a few minor changes, our toolchain could also consume other free assets and generate optimized fonts for Twitter Emoji (repo, license) and Emoji One (repo, license).

missing some emojis

1f469_200d_2764_fe0f_200d_1f48b_200d_1f468
1f469_200d_2764_fe0f_200d_1f468
1f468_200d_1f469_200d_1f466
this three emoji is missing.

NotoColorEmoji.ttf is not a valid font on Mac

Double-clicking on the .ttf file opens FontBook but FontBook will not display the font.
The font cannot be used in any mac application even if installed in the Library/Fonts folder.
NotoEmoji-Regular.ttf works fine though.

All rights reservered in font header

The header of the produced fonts currently states Copyright 2015 Google Inc. All Rights Reserved. which conflicts with the SIL Open Font License, because many rights are not reserved, but granted by the license. The header creates unnecessary legal uncertainty. What is valid, the header or the license file?

I suspect that changing this line to mention the OFL would resolve this issue:
https://github.com/googlei18n/noto-emoji/blob/c6379827aaa9cb0baca1a08a9d44ae74ca505236/NotoColorEmojiSvg.tmpl.ttx#L133

Can't add color SVG glyph on Windows

I use Windows7 and python 2.7 , when I try to add SVG glyphs to font , it says

D:>D:\noto-emoji-master\add_svg_glyphs.py
Traceback (most recent call last):
File "D:\noto-emoji-master\add_svg_glyphs.py", line 37, in
import add_emoji_gsub
File "D:\noto-emoji-master\add_emoji_gsub.py", line 28, in
from nototools import font_data
File "C:\Python27\lib\site-packages\nototools-0.0.1-py2.7.egg\nototools\font_d
ata.py", line 21, in
from nototools import opentype_data
File "C:\Python27\lib\site-packages\nototools-0.0.1-py2.7.egg\nototools\openty
pe_data.py", line 327, in
_set_ompl()
File "C:\Python27\lib\site-packages\nototools-0.0.1-py2.7.egg\nototools\openty
pe_data.py", line 33, in _set_ompl
unicode_data.load_data()
File "C:\Python27\lib\site-packages\nototools-0.0.1-py2.7.egg\nototools\unicod
e_data.py", line 64, in load_data
_load_unicode_data_txt()
File "C:\Python27\lib\site-packages\nototools-0.0.1-py2.7.egg\nototools\unicod
e_data.py", line 446, in _load_unicode_data_txt
decomposition = [unichr(int(char, 16)) for char in decomposition]
ValueError: unichr() arg not in range(0x10000) (narrow Python build)

SVG files are out of date

A lot of the png files have been updated to Android N versions, but the SVG versions still display the old (eg. non-human) versions

Make it clear that 'make' requires PYTHONPATH to include noto-tools

When I tried to build NotoColorEmoji by running 'make' in the checkout, it failed in 'flag-symlinks' because |GLYPH_NAMES| variable is empty. I couldn't find any issue with rules for that target. Then, it dawned on me that flag_glyph_name.py relies on noto-tools is required by flag_glyph_name.py.

GLYPH_NAMES := $(shell ./flag_glyph_name.py $(FLAGS))

PYTHONPATH={path to noto-tools}:. make solved the problem.

I propose that we either document it more prominently or add a pseudo-target to check if noto_tools is in python path and fails right away (instead of moving forward).

Vertical spacing issue on Linux

Here are 3 lines of text; line(s) with emojis have a gigantic vertical space on Linux, illustrated by the blue highlighted text:

3 lines of text; emojis on line 2 with gigantic vertical space

I'm having this issue

Parsing 'GlyphOrder' table...
Parsing 'head' table...
Parsing 'hhea' table...
Parsing 'maxp' table...
Parsing 'OS/2' table...
Parsing 'hmtx' table...
Parsing 'cmap' table...
Parsing 'name' table...
Parsing 'post' table...
Looking for images matching 'build/compressed_pngs/emoji_u*.png'.
Traceback (most recent call last):
File "third_party/color_emoji/add_glyphs.py", line 130, in
u = codes_to_string(codes)
File "third_party/color_emoji/add_glyphs.py", line 32, in codes_to_string
raise ValueError("uh-oh, no unichr for '%s'" % codes)
ValueError: uh-oh, no unichr for '1f004'

Missing flag images (PNG & SVG) other than the first 10

I looked into the PNG and SVG folders of this repository, and found only these flags:

🇯🇵 🇰🇷 🇩🇪 🇨🇳 🇺🇸 🇫🇷 🇪🇸 🇮🇹 🇷🇺 🇬🇧

Japan, South Korea, Germany, China, United States, France, Spain, Italy, Russia, United Kingdom.

Currently does not build

Tried following the instructions for building the color emojis and the project fails to build. Python step installed correctly then.

daidoji@darkstar:~/noto/nototools$ make Makefile:37: target 'packages' given more than once in the same rule find:./fonts/individual': No such file or directory
make: *** No rule to make target 'fonts/individual/hinted/*.ttf', needed by 'hintedtarball'. Stop.
`

Make dependencies explicit

How about using git submodules for dependencies, in particular the exotic ones like fonttools and nototools?

Most of the other build dependencies can be figured out, but this one will be rather cryptic for people who build noto-emoji from source:

sascha@debian:~/src/noto-emoji$ make flags/CH.png
Traceback (most recent call last):
  File "./flag_glyph_name.py", line 23, in <module>
    import add_emoji_gsub
  File "/home/sascha/src/noto-emoji/add_emoji_gsub.py", line 28, in <module>
    from nototools import font_data
ImportError: No module named nototools
cd "/home/sascha/src/noto-emoji/third_party/pngquant" && make
make[1]: Entering directory '/home/sascha/src/noto-emoji/third_party/pngquant'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/sascha/src/noto-emoji/third_party/pngquant'
mkdir -p ./flags
./waveflag "third_party/region-flags/png/CH.png" "flags/CH.png"
Processing third_party/region-flags/png/CH.png
optipng -quiet -o7 "flags/CH.png"
"/home/sascha/src/noto-emoji/third_party/pngquant/pngquant" --speed 1 --skip-if-larger --ext '.png' --force "flags/CH.png"`

Some SVG images are not updated

The following svg images are not current with the png/128 directory. I have not checked to see which are present but not updated, and which are missing. This lists those images that contained embedded bitmaps when generating the svg from .ai files. Many of these images also had display issues.

emoji_u2648.svg
emoji_u1f321.svg
emoji_u1f34c.svg
emoji_u1f35b.svg
emoji_u1f377.svg
emoji_u1f3f5.svg
emoji_u1f468_1f3fb_200d_1f680.svg
emoji_u1f468_1f3fc_200d_1f680.svg
emoji_u1f468_1f3fd_200d_1f680.svg
emoji_u1f468_1f3fe_200d_1f680.svg
emoji_u1f468_1f3ff_200d_1f680.svg
emoji_u1f468_200d_1f680.svg
emoji_u1f469_1f3fb_200d_1f680.svg
emoji_u1f469_1f3fc_200d_1f680.svg
emoji_u1f469_1f3fd_200d_1f680.svg
emoji_u1f469_1f3fe_200d_1f680.svg
emoji_u1f469_1f3ff_200d_1f680.svg
emoji_u1f469_200d_1f680.svg
emoji_u1f47c_1f3fb.svg
emoji_u1f47c_1f3fc.svg
emoji_u1f47c_1f3fd.svg
emoji_u1f47c_1f3fe.svg
emoji_u1f47c_1f3ff.svg
emoji_u1f47c.svg
emoji_u1f4f8.svg
emoji_u1f4ff.svg
emoji_u1f5c2.svg
emoji_u1f5de.svg
emoji_u1f644.svg
emoji_u1f6eb.svg
emoji_u1f6ec.svg
emoji_u1f6f0.svg
emoji_u1f6f4.svg
emoji_u1f6f5.svg
emoji_u1f6f6.svg
emoji_u1f911.svg
emoji_u1f912.svg
emoji_u1f914.svg
emoji_u1f915.svg
emoji_u1f917.svg
emoji_u1f918.svg
emoji_u1f922.svg
emoji_u1f923.svg
emoji_u1f924.svg
emoji_u1f942.svg
emoji_u1f943.svg
emoji_u1f94a.svg
emoji_u1f952.svg
emoji_u1f953.svg
emoji_u1f981.svg
emoji_u1f989.svg
emoji_u1f98a.svg
emoji_u1f98f.svg
emoji_u1f991.svg

Please re-arrange the font files

Re-arranging them to the following categories:

  • SuperOTC
  • OTC
  • OTF
  • Subset-OTF
  • HW-OTF

In terms of directories will really help with choosing the fonts to use (for packagers, and users).

Please consider this, thanks.

Problems building on Linux Mint (build/renamed_flags dir has symlink issues and build fails)

Hello. My build keeps failing. I have wiped and re-cloned the whole project several times and I keep getting this problem. This is what I'm seeing:

symbolic links with weird names in build/renamed_flags

strange flag names

and unusual errors on the commandline:

(There are consistently eight or so symlinks missing in renamed_flags after this error. I don't know what's up with the bogus "directory/symlink/png" that shows up in the error message:

"ln: failed to create symbolic link 'build/renamed_flags/emoji_nototools/nototools/notoconfig.py.png': No such file or directory")

commandline errors

Any ideas of how to make this work?

ZWJ sequences starting with 'Golfer' (U+1F3CC) are not supported

This is just for the sake of keeping the record. Off-line, I reported this to @dougfelt (after discovering it while testing Noto Color Emoji on CrOS: see https://chromium-review.googlesource.com/#/c/414249/ ) and he found out the root cause as below:

ZWJ sequences starting with 'Golfer' (U+1F3CC) were added to Emoji 4.0 final (they're not included in Emoji 4.0 beta). Because the latest version of Noto Color Emoji was made based on Emoji 4.0 beta. Those sequences are missing from the font.

With Noto Color Emoji, those sequences at
http://unicode.org/emoji/charts/emoji-zwj-sequences.html (e.g. U+1F3CC U+FE0F U+200D U+2642 U+FE0F ) are not shaped properly by harfbuzz and Chrome.

/cc @xiangyexiao (fyi)

Legacy PUA emojis

I found some code in the repository that handles legacy Google PUA codes for the ten original emoji flags and for keycaps. To view some old data that I either do not want to or cannot convert to proper Unicode codepoints, it would be nice to build a (non-default) version of the font that supported more and other PUA codes. Every Japanese carrier had their own (and Apple shared a set with Softbank).

Example: Thumbs Up

Unicode Apple iOS /
Softbank /
Yahoo /
Disney /
Vodafone /
J‑Phone
KDDI au EZweb (a) KDDI au EZweb (b) NTT Docomo i‑mode /
Willcom /
E‑Mobile
Google Gmail …
U+1F44D 👍 U+E25A  U+E4F9  U+EFD2  U+E727  U+FEB97 󾮗

I could provide a file with these mappings, but I'm not sure how and where to include it in the code, so cannot really write a pull request myself – unless someone could provide some helpful pointers.

NotoColorEmoji.ttf not a valid font in Windows

I've tried installing NotoColorEmoji.ttf in Windows 10 and it is not a valid font to install. From https://www.google.com/get/noto/ I've downloaded and extracted the font from both the individual font .zip and the complete Noto .zip file without success. An online font converter failed to convert it to a .ttf or an .otf for testing as well.
Windows 10 Build 10586.104

CBDT/CBLC version number

We use 2. In OpenType standard they are marked as 3. I just asked FreeType to add support for 3. We should update after the fixed version of FreeType is shipped in Android...

Can someone update SVG to Android Nougat7.0

Hello there,

Its really nice to see projects like this on github

Seems the SVG's are outdated by a year or so.

Can the Mod /Contributer Kindly update the SVG's to the newest one as shown in Android Nougat 7.0

Awaiting valued update ASAP

Thanks in advance :-)

ImportError: cannot import name unichr

When I try to run the makefile I get this:

Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
Traceback (most recent call last):
File "./flag_glyph_name.py", line 23, in
import add_emoji_gsub
File "/mnt/d/Programmi/noto-emoji-master/add_emoji_gsub.py", line 28, in
from nototools import font_data
File "/mnt/d/Programmi/nototools-master/nototools/font_data.py", line 21, in
from nototools import opentype_data
File "/mnt/d/Programmi/nototools-master/nototools/opentype_data.py", line 22, in
from nototools import unicode_data
File "/mnt/d/Programmi/nototools-master/nototools/unicode_data.py", line 36, in
from fontTools.misc.py23 import unichr
ImportError: cannot import name unichr
using optipng

And than it stops.

ID with multibytes words

Hello,

i m happily using this emoji set.

I notice that sometimes the SVGS have an id with some multibyte word as descriptor ( to me they appear as japanes characters )
While this is maybe regular, it is not in all SVGS but break the possibility running window.btoa in javascript over the svg content.

Since i see no usefulness in exporting those IDs, i was asking if is possible to remove them.

Ensure emoji flags adhere to unicode spec

See similar issue in fonttools/region-flags#8.

"The valid flags used to be less clearly specified, but they are defined in the newest (v2.0) spec, http://unicode.org/reports/tr51/

"ED-14. emoji flag sequence — A sequence of two Regional Indicator characters, where the corresponding ASCII characters are valid region sequences as specified by Unicode region subtags in [CLDR].

"Those Unicode region subtags are based on BCP47, but have some small changes (including http://unicode.org/emoji/charts/full-emoji-list.html#1f1fd_1f1f0."

Build fails

Hi,

I'm trying to build per the instructions provided but I'm getting the following error message:

(emoji) benjamfield@beats-working:~/bin/noto-emoji$ make
using optipng
cannot process alias fe82b -> unknown_flag
Traceback (most recent call last):
  File "add_glyphs.py", line 403, in <module>
    main()
  File "add_glyphs.py", line 399, in main
    args.aliases)
  File "add_glyphs.py", line 372, in update_ttx
    update_font_data(font, seq_to_advance, aliases)
  File "add_glyphs.py", line 333, in update_font_data
    add_ligature_sequences(font, seqs, aliases)
  File "add_glyphs.py", line 325, in add_ligature_sequences
    add_ligature(lookup, cmap, seq, name)
  File "add_glyphs.py", line 308, in add_ligature
    ligatures = lookup.SubTable[0].ligatures
  File "/home/benjamfield/.envs/emoji/local/lib/python2.7/site-packages/fontTools/ttLib/tables/otBase.py", line 557, in __getattr__
    raise AttributeError(attr)
AttributeError: ligatures
Makefile:197: recipe for target 'NotoColorEmoji.tmpl.ttx' failed
make: *** [NotoColorEmoji.tmpl.ttx] Error 1

I'm running xubuntu 16.04.

Thanks!

License for pngs and svgs?

The readme says:

Emoji fonts (under the fonts subdirectory) are under the SIL Open Font License, version 1.1.
Tools are under the Apache license, version 2.0.

Under which of those licenses (or some other license), are the pngs and svgs?

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.