Giter Club home page Giter Club logo

geki2's Issues

Geki2 crashes with zzuf fuzzer

Geki2 v2.0.8 (fea93de) crashes when run with zzuf 0.15.

zzuf -s1 src/geki2

url   : http://www2.mwnet.or.jp/~fc3srx7 
email : [email protected] 

"geki2 --help" for command line parameters 
malloc(): corrupted top size
zzuf[s=1,r=0.004]: signal 6 (SIGABRT) 

and zzuf -s29 src/geki2 causes an assertion failure:

geki2: malloc.c:2382: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.

Valgrind output:

==23598== Memcheck, a memory error detector
==23598== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==23598== Using Valgrind-3.16.1 and LibVEX; rerun with -h for copyright info
==23598== Command: zzuf -s1 src/geki2
==23598== 
==23598== error calling PR_SET_PTRACER, vgdb might block
==23600== error calling PR_SET_PTRACER, vgdb might block
==23600== Memcheck, a memory error detector
==23600== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==23600== Using Valgrind-3.16.1 and LibVEX; rerun with -h for copyright info
==23600== Command: src/geki2
==23600== 
==23600== error calling PR_SET_PTRACER, vgdb might block
url   : http://www2.mwnet.or.jp/~fc3srx7
email : [email protected]

"geki2 --help" for command line parameters
==23600== Invalid read of size 1
==23600==    at 0x5106227: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x948160a is 6 bytes after a block of size 132 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106787: KXL_ReadBitmapHeader (KXLimage.c:149)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x510623E: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9481609 is 5 bytes after a block of size 132 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106787: KXL_ReadBitmapHeader (KXLimage.c:149)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x5106257: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9481608 is 4 bytes after a block of size 132 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106787: KXL_ReadBitmapHeader (KXLimage.c:149)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x51062C6: KXL_CreateBitmap8to24 (KXLimage.c:66)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9481630 is 32 bytes before a block of size 10,784 in arena "client"
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x51062F7: KXL_CreateBitmap8to24 (KXLimage.c:67)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9481631 is 31 bytes before a block of size 10,784 in arena "client"
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x5106329: KXL_CreateBitmap8to24 (KXLimage.c:68)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x406FD8: CreatePixmap (load.c:102)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9481632 is 30 bytes before a block of size 10,784 in arena "client"
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x5106227: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x949286a is 6 bytes before a block of size 248 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106936: KXL_ReadBitmapHeader (KXLimage.c:166)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x510623E: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9492869 is 7 bytes before a block of size 248 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106936: KXL_ReadBitmapHeader (KXLimage.c:166)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x5106257: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9492868 is 8 bytes before a block of size 248 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106936: KXL_ReadBitmapHeader (KXLimage.c:166)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid write of size 2
==23600==    at 0x4C389AB: memmove (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x56D473A: _IO_file_xsgetn (in /lib64/libc-2.31.so)
==23600==    by 0x56C835E: fread (in /lib64/libc-2.31.so)
==23600==    by 0x4E48862: fread (lib-stream.c:653)
==23600==    by 0x5106A03: KXL_ReadBitmapHeader (KXLimage.c:175)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9493978 is 0 bytes after a block of size 472 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106936: KXL_ReadBitmapHeader (KXLimage.c:166)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x4E42A21: zzuf_debug_str (debug.c:352)
==23600==    by 0x4E48A0D: fread (lib-stream.c:653)
==23600==    by 0x5106A03: KXL_ReadBitmapHeader (KXLimage.c:175)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9493994 is 20 bytes after a block of size 480 in arena "client"
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x4E42A3D: zzuf_debug_str (debug.c:360)
==23600==    by 0x4E48A0D: fread (lib-stream.c:653)
==23600==    by 0x5106A03: KXL_ReadBitmapHeader (KXLimage.c:175)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9493994 is 20 bytes after a block of size 480 in arena "client"
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x4E42A80: zzuf_debug_str (debug.c:370)
==23600==    by 0x4E48A0D: fread (lib-stream.c:653)
==23600==    by 0x5106A03: KXL_ReadBitmapHeader (KXLimage.c:175)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9493994 is 20 bytes after a block of size 480 in arena "client"
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x4E42A9E: zzuf_debug_str (debug.c:371)
==23600==    by 0x4E48A0D: fread (lib-stream.c:653)
==23600==    by 0x5106A03: KXL_ReadBitmapHeader (KXLimage.c:175)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9493994 is 20 bytes after a block of size 480 in arena "client"
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x51061AD: KXL_CreateBitmap8to24 (KXLimage.c:55)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9493978 is 0 bytes after a block of size 472 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106936: KXL_ReadBitmapHeader (KXLimage.c:166)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x51063D8: KXL_CreateBitmap8to1 (KXLimage.c:88)
==23600==    by 0x5105B9D: KXL_LoadBitmap (KXLvisual.c:625)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9493978 is 0 bytes after a block of size 472 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106936: KXL_ReadBitmapHeader (KXLimage.c:166)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406E6E: LoadPixmap (load.c:56)
==23600==    by 0x406F22: LoadPixmaps (load.c:73)
==23600==    by 0x40701E: CreatePixmap (load.c:104)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x5106227: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x407041: CreatePixmap (load.c:105)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9499ef6 is 2 bytes after a block of size 132 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106787: KXL_ReadBitmapHeader (KXLimage.c:149)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x407041: CreatePixmap (load.c:105)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x510623E: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x407041: CreatePixmap (load.c:105)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9499ef5 is 1 bytes after a block of size 132 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106787: KXL_ReadBitmapHeader (KXLimage.c:149)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x407041: CreatePixmap (load.c:105)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 
==23600== Invalid read of size 1
==23600==    at 0x5106257: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x407041: CreatePixmap (load.c:105)
==23600==    by 0x4062E9: main (main.c:194)
==23600==  Address 0x9499ef4 is 0 bytes after a block of size 132 alloc'd
==23600==    at 0x4C312EF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==23600==    by 0x5102B77: KXL_Malloc (KXLmisc.c:99)
==23600==    by 0x5106787: KXL_ReadBitmapHeader (KXLimage.c:149)
==23600==    by 0x51058DB: KXL_LoadBitmap (KXLvisual.c:585)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x407041: CreatePixmap (load.c:105)
==23600==    by 0x4062E9: main (main.c:194)
==23600== 

valgrind: m_mallocfree.c:305 (get_bszB_as_is): Assertion 'bszB_lo == bszB_hi' failed.
valgrind: Heap block lo/hi size mismatch: lo = 2048, hi = 269484289.
This is probably caused by your program erroneously writing past the
end of a heap block and corrupting heap metadata.  If you fix any
invalid writes reported by Memcheck, this assertion failure will
probably go away.  Please try that before reporting this as a bug.


host stacktrace:
==23600==    at 0x58047ACA: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x5803EC17: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x5803ED97: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x58040E4A: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x58093B1D: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x580946BE: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x5808EA76: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x5808F15D: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x580611F3: ??? (in /usr/lib64/valgrind/memcheck-amd64-linux)
==23600==    by 0x1002E020A1: ???
==23600==    by 0x1002BA9E9F: ???
==23600==    by 0x1002BA9EDF: ???

sched status:
  running_tid=1

Thread 1: status = VgTs_Runnable (lwpid 23600)
==23600==    at 0x5106227: KXL_CreateBitmap8to24 (KXLimage.c:61)
==23600==    by 0x51059F1: KXL_LoadBitmap (KXLvisual.c:602)
==23600==    by 0x406CE4: LoadPixmapSplit (load.c:26)
==23600==    by 0x407064: CreatePixmap (load.c:106)
==23600==    by 0x4062E9: main (main.c:194)
client stack range: [0x1FFEFFD000 0x1FFF000FFF] client SP: 0x1FFEFFF590
valgrind stack range: [0x1002AAA000 0x1002BA9FFF] top usage: 8120 of 1048576


Note: see also the FAQ in the source distribution.
It contains workarounds to several common problems.
In particular, if Valgrind aborted or crashed after
identifying problems in your program, there's a good chance
that fixing those problems will prevent Valgrind aborting or
crashing, especially if it happened in m_mallocfree.c.

If that doesn't help, please report this bug to: www.valgrind.org

In the bug report, send all the above text, the valgrind
version, and what OS and version you are using.  Thanks.

==23598== 
==23598== HEAP SUMMARY:
==23598==     in use at exit: 0 bytes in 0 blocks
==23598==   total heap usage: 9 allocs, 9 frees, 1,270 bytes allocated
==23598== 
==23598== All heap blocks were freed -- no leaks are possible
==23598== 
==23598== For lists of detected and suppressed errors, rerun with: -s
==23598== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)

Does not start on WSL2

When I start Geki2 v2.0.8-3-g156174b in openSUSE 15.5 on WSL2 on Windows 10, I get the following error and the game does not open a window. Seems to be a font problem, but installing xorg-x11-fonts{,-legacy,-core,-converted} doesn't help.

url   : http://www2.mwnet.or.jp/~fc3srx7
email : [email protected]

"geki2 --help" for command line parameters
KXL error message
loading font error (-adobe-courier-bold-r-normal--14-*-*-*-*-*-iso8859-1)

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.