GithubHelp home page GithubHelp logo

pisaiah / ui Goto Github PK

View Code? Open in Web Editor NEW
75.0 5.0 5.0 5.43 MB

My UI Widget library for V

Home Page: https://discord.gg/NruVtYBf5g

License: MIT License

V 86.87% C 13.13%
vlang vlang-library ui widget-toolkit gui v cross-platform-gui widget linux mac

ui's People

Contributors

pisaiah avatar spytheman 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

Watchers

 avatar  avatar  avatar  avatar  avatar

ui's Issues

Warnings during build (unix_time_milli, init private fields), in iUI modules' source

Issue:

Warnings during build (unix_time_milli, init private fields), in iUI modules' source

Build Output (home path redacted, omitting warnings in my source to be addressed separately):

~/.vmodules/iui/src/ui.v:425:20: notice: method time.Time.unix_time_milli will be deprecated after 2024-05-31, and will become an error after 2024-11-27; use t.unix_milli() instead
423 | // Custom 'UI Mode' - Refresh text caret
424 | app.do_sleep()
425 | now := time.now().unix_time_milli()
| ~~~~~~~~~~~~~~~~~
426 |
427 | // Sort by Z-index; Lower draw first
~/.vmodules/iui/src/ui.v:504:20: notice: method time.Time.unix_time_milli will be deprecated after 2024-05-31, and will become an error after 2024-11-27; use t.unix_milli() instead
502 | }
503 |
504 | end := time.now().unix_time_milli()
| ~~~~~~~~~~~~~~~~~
505 | if end - app.last_update > 500 {
506 | app.last_update = end
~/.vmodules/iui/src/splitview.v:122:3: warning: initalizing private field color of gg.PenConfig
120 |
121 | dl := gg.PenConfig{
122 | color: color
| ~~~~~~~~~~~~
123 | line_type: .dotted
124 | thickness: 1
Details: this will become an error after 2024-05-31
~/.vmodules/iui/src/splitview.v:123:3: warning: initalizing private field line_type of gg.PenConfig
121 | dl := gg.PenConfig{
122 | color: color
123 | line_type: .dotted
| ~~~~~~~~~~~~~~~~~~
124 | thickness: 1
125 | }
Details: this will become an error after 2024-05-31
~/.vmodules/iui/src/splitview.v:124:3: warning: initalizing private field thickness of gg.PenConfig
122 | color: color
123 | line_type: .dotted
124 | thickness: 1
| ~~~~~~~~~~~~
125 | }
126 |

Result:

Project IS NOT built, old executable not replaced; due to large number of deprecation warnings/notices in both UI code and in mine.

builder error: too many errors/warnings/notices

iUI:

v0.0.20 (I did perform 'v upgrade' so the modules should be up to date)

VLang:

V 0.4.5 dbf48ea

v-analyzer extension (included for completeness, but it happens in Bash without VSCodium too):

v0.0.4

VSCodium (included for completeness, but it happens in Bash without VSCodium too):

Version: 1.88.1
Commit: e170252f762678dec6ca2cc69aba1570769a5d39
Date: 2024-04-10T17:34:12.840Z
Electron: 28.2.8
ElectronBuildId: 27744544
Chromium: 120.0.6099.291
Node.js: 18.18.2
V8: 12.0.267.19-electron.0
OS: Linux x64 5.15.0-105-generic

System Info:

System:
Kernel: 5.15.0-105-generic x86_64 bits: 64 compiler: gcc v: 11.4.0 Desktop: Cinnamon 6.0.4
tk: GTK 3.24.33 wm: muffin vt: 7 dm: LightDM 1.30.0 Distro: Linux Mint 21.3 Virginia
base: Ubuntu 22.04 jammy
Machine:
Type: Desktop System: Dell product: OptiPlex 5040 v: N/A serial: Chassis:
type: 3 serial:
Mobo: Dell model: 0R790T v: A00 serial: UEFI-[Legacy]: Dell v: 1.2.7
date: 01/15/2016
Battery:
Device-1: hidpp_battery_0 model: Logitech M570 serial: charge: 35% rechargeable: yes
status: Discharging
CPU:
Info: quad core model: Intel Core i5-6500 bits: 64 type: MCP smt: arch: Skylake-S
rev: 3 cache: L1: 256 KiB L2: 1024 KiB L3: 6 MiB
Speed (MHz): avg: 895 high: 900 min/max: 800/3600 cores: 1: 900 2: 900 3: 880 4: 900
bogomips: 25599
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
Device-1: NVIDIA GP108 [GeForce GT 1030] driver: nvidia v: 535.171.04 pcie: speed: 8 GT/s
lanes: 4 ports: active: none off: HDMI-A-1 empty: DVI-D-1 bus-ID: 01:00.0 chip-ID: 10de:1d01
class-ID: 0300
Display: x11 server: X.Org v: 1.21.1.4 driver: X: loaded: nvidia
unloaded: fbdev,modesetting,nouveau,vesa gpu: nvidia display-ID: :0 screens: 1
Screen-1: 0 s-res: 3840x2160 s-dpi: 162 s-size: 602x341mm (23.7x13.4") s-diag: 692mm (27.2")
Monitor-1: HDMI-0 res: 3840x2160 hz: 60 dpi: 163 size: 600x340mm (23.6x13.4")
diag: 690mm (27.2")
OpenGL: renderer: NVIDIA GeForce GT 1030/PCIe/SSE2 v: 4.6.0 NVIDIA 535.171.04
direct render: Yes
Audio:
Device-1: Intel 100 Series/C230 Series Family HD Audio vendor: Dell driver: snd_hda_intel
v: kernel bus-ID: 00:1f.3 chip-ID: 8086:a170 class-ID: 0403
Device-2: NVIDIA GP108 High Definition Audio driver: snd_hda_intel v: kernel pcie:
speed: 8 GT/s lanes: 4 bus-ID: 01:00.1 chip-ID: 10de:0fb8 class-ID: 0403
Sound Server-1: ALSA v: k5.15.0-105-generic running: yes
Sound Server-2: PulseAudio v: 15.99.1 running: yes
Sound Server-3: PipeWire v: 0.3.48 running: yes
Network:
Device-1: Intel Ethernet I219-V vendor: Dell driver: e1000e v: kernel port: N/A bus-ID: 00:1f.6
chip-ID: 8086:15b8 class-ID: 0200
IF: enp0s31f6 state: up speed: 1000 Mbps duplex: full mac:
Drives:
Local Storage: total: 2.05 TiB used: 1.98 TiB (96.3%)
ID-1: /dev/sda vendor: SanDisk model: SD8SBAT-256G-1006 size: 238.47 GiB speed: 6.0 Gb/s
type: SSD serial: rev: 1006 scheme: GPT
ID-2: /dev/sdb vendor: Western Digital model: WDS100T2B0A-00SM50 size: 931.51 GiB
speed: 6.0 Gb/s type: SSD serial: rev: 20WD scheme: MBR
ID-3: /dev/sdd type: USB vendor: Western Digital model: WD My Passport 25E1 size: 931.48 GiB
type: N/A serial: rev: 1021 scheme: GPT
Partition:
ID-1: / size: 233.62 GiB used: 75.22 GiB (32.2%) fs: ext4 dev: /dev/sda3
ID-2: /boot/efi size: 47.2 MiB used: 6 MiB (12.8%) fs: vfat dev: /dev/sda2
ID-3: /home size: 915.82 GiB used: 720.74 GiB (78.7%) fs: ext4 dev: /dev/sdb1
Swap:
ID-1: swap-1 type: file size: 2 GiB used: 0 KiB (0.0%) priority: -2 file: /swapfile
USB:
Hub-1: 1-0:1 info: Hi-speed hub with single TT ports: 16 rev: 2.0 speed: 480 Mb/s
chip-ID: 1d6b:0002 class-ID: 0900
Device-1: 1-3:2 info: 816820090226 type: Mass Storage driver: usb-storage interfaces: 1
rev: 2.0 speed: 480 Mb/s power: 500mA chip-ID: 3207:0300 class-ID: 0806 serial:
Device-2: 1-5:3 info: Logitech Unifying Receiver type: Keyboard,Mouse,HID
driver: logitech-djreceiver,usbhid interfaces: 3 rev: 2.0 speed: 12 Mb/s power: 98mA
chip-ID: 046d:c52b class-ID: 0300
Device-3: 1-9:4 info: Western Digital My Passport (WD20NMVW) type: Mass Storage
driver: usb-storage interfaces: 1 rev: 2.1 speed: 480 Mb/s power: 500mA chip-ID: 1058:25e1
class-ID: 0806 serial:
Hub-2: 2-0:1 info: Super-speed hub ports: 10 rev: 3.0 speed: 5 Gb/s chip-ID: 1d6b:0003
class-ID: 0900
Sensors:
System Temperatures: cpu: 29.8 C pch: 55.5 C mobo: 27.8 C gpu: nvidia temp: 35 C
Fan Speeds (RPM): N/A gpu: nvidia fan: 86%
Repos:
Packages: note: see --pkg apt: 3773
Active apt repos in: /etc/apt/sources.list
1: deb [trusted=yes] http: //www.raqsoft.com/raqesproc/update/debian/ /
Active apt repos in: /etc/apt/sources.list.d/gambas-team-gambas3-jammy.list
1: deb [signed-by=/etc/apt/keyrings/gambas-team-gambas3-jammy.gpg] https: //ppa.launchpadcontent.net/gambas-team/gambas3/ubuntu jammy main
Active apt repos in: /etc/apt/sources.list.d/jonaski-strawberry-jammy.list
1: deb [signed-by=/etc/apt/keyrings/jonaski-strawberry-jammy.gpg] https: //ppa.launchpadcontent.net/jonaski/strawberry/ubuntu jammy main
Active apt repos in: /etc/apt/sources.list.d/krupkat-code-jammy.list
1: deb [signed-by=/etc/apt/keyrings/krupkat-code-jammy.gpg] https: //ppa.launchpadcontent.net/krupkat/code/ubuntu jammy main
Active apt repos in: /etc/apt/sources.list.d/official-package-repositories.list
1: deb http: //packages.linuxmint.com virginia main upstream import backport
2: deb http: //archive.ubuntu.com/ubuntu jammy main restricted universe multiverse
3: deb http: //archive.ubuntu.com/ubuntu jammy-updates main restricted universe multiverse
4: deb http: //archive.ubuntu.com/ubuntu jammy-backports main restricted universe multiverse
5: deb http: //security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
Active apt repos in: /etc/apt/sources.list.d/vivaldi.list
1: deb [arch=amd64] https: //repo.vivaldi.com/stable/deb/ stable main
Active apt repos in: /etc/apt/sources.list.d/vscode.list
1: deb [arch=amd64,arm64,armhf] http: //packages.microsoft.com/repos/code stable main
Active apt repos in: /etc/apt/sources.list.d/vscodium.list
1: deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https: //download.vscodium.com/debs vscodium main
Info:
Processes: 286 Uptime: 41m wakeups: 4 Memory: 15.54 GiB used: 3.94 GiB (25.4%) Init: systemd
v: 249 runlevel: 5 Compilers: gcc: 11.4.0 alt: 11/12 clang: 14.0.0-1ubuntu1.1
Client: Unknown python client inxi: 3.3.13

Listbox widget, in addition to the selectbox widget

Hi Isaiah,

Would be great if a listbox widget was added. The issue with selectbox, is that sometimes you want people to see all or more of the options available. And possibly have the vertical scroll as an option too.

Warnings during build, in iUI modules' source

Issue:

Warnings during build, in iUI modules' source

Build Output (home path redacted):

~/.vmodules/iui/src/deprecated_stuff.v:22:3: notice: assigning 0 to a reference field is only allowed in unsafe blocks
20 | return &MenuItem{
21 | text: text
22 | icon: 0
| ~~~~~~~
23 | click_event_fn: fn (mut win Window, item MenuItem) {}
24 | }
~/.vmodules/iui/src/image.v:43:3: notice: assigning 0 to a reference field is only allowed in unsafe blocks
41 | mut img := &Image{
42 | text: ''
43 | img: 0
| ~~~~~~
44 | width: width
45 | height: h
~/.vmodules/iui/src/modal.v:39:3: notice: assigning 0 to a reference field is only allowed in unsafe blocks
37 | in_width: 500
38 | in_height: 300
39 | close: 0
| ~~~~~~~~
40 | }
41 | }
~/.vmodules/iui/src/page.v:40:3: notice: assigning 0 to a reference field is only allowed in unsafe blocks
38 | text_cfg: draw_cfg()
39 | in_height: 300
40 | close: 0
| ~~~~~~~~
41 | }
42 | }
~/.vmodules/iui/src/ui.v:314:3: notice: assigning 0 to a reference field is only allowed in unsafe blocks
312 | pub fn Window.new(cfg &WindowConfig) &Window {
313 | mut win := &Window{
314 | gg: 0
| ~~~~~
315 | theme: cfg.theme
316 | bar: 0
~/.vmodules/iui/src/ui.v:316:3: notice: assigning 0 to a reference field is only allowed in unsafe blocks
314 | gg: 0
315 | theme: cfg.theme
316 | bar: 0
| ~~~~~~
317 | config: cfg
318 | font_size: cfg.font_size
~/.vmodules/iui/src/ui.v:319:3: notice: assigning 0 to a reference field is only allowed in unsafe blocks
317 | config: cfg
318 | font_size: cfg.font_size
319 | graphics_context: 0
| ~~~~~~~~~~~~~~~~~~~
320 | }
321 |

Result:

Project IS built, and executable DOES run without errors.

iUI:

v0.0.20

VLang:

V 0.4.4 c9933da

v-analyzer extension (included for completeness, but it happens in Bash without VSCodium too):

v0.0.4

VSCodium (included for completeness, but it happens in Bash without VSCodium too):

Version: 1.85.2
Release: 24019
Commit: c8a36a69377856369f139f39ee56dd3838130fbf
Date: 2024-01-19T18:30:44.948Z
Electron: 25.9.7
ElectronBuildId: undefined
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Linux x64 5.15.0-94-generic

System Info:

System:
Kernel: 5.15.0-94-generic x86_64 bits: 64 compiler: gcc v: 11.4.0 Desktop: Cinnamon 6.0.4
tk: GTK 3.24.33 wm: muffin vt: 7 dm: LightDM 1.30.0 Distro: Linux Mint 21.3 Virginia
base: Ubuntu 22.04 jammy
Machine:
Type: Desktop System: Dell product: OptiPlex 5040 v: N/A serial: Chassis:
type: 3 serial:
Mobo: Dell model: 0R790T v: A00 serial: UEFI-[Legacy]: Dell v: 1.2.7
date: 01/15/2016
Battery:
Device-1: hidpp_battery_0 model: Logitech M570 serial: charge: 35% rechargeable: yes
status: Discharging
CPU:
Info: quad core model: Intel Core i5-6500 bits: 64 type: MCP smt: arch: Skylake-S
rev: 3 cache: L1: 256 KiB L2: 1024 KiB L3: 6 MiB
Speed (MHz): avg: 972 high: 1114 min/max: 800/3600 cores: 1: 974 2: 900 3: 900 4: 1114
bogomips: 25599
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
Device-1: NVIDIA GP108 [GeForce GT 1030] driver: nvidia v: 535.154.05 pcie: speed: 8 GT/s
lanes: 4 ports: active: none off: HDMI-A-1 empty: DVI-D-1 bus-ID: 01:00.0 chip-ID: 10de:1d01
class-ID: 0300
Device-2: Realtek RTL2838 DVB-T type: USB driver: dvb_usb_rtl28xxu,rtl2832_sdr bus-ID: 1-1:2
chip-ID: 0bda:2838 class-ID: 0000 serial:
Display: x11 server: X.Org v: 1.21.1.4 driver: X: loaded: nvidia
unloaded: fbdev,modesetting,nouveau,vesa gpu: nvidia display-ID: :0 screens: 1
Screen-1: 0 s-res: 3840x2160 s-dpi: 162 s-size: 602x341mm (23.7x13.4") s-diag: 692mm (27.2")
Monitor-1: HDMI-0 res: 3840x2160 hz: 60 dpi: 163 size: 600x340mm (23.6x13.4")
diag: 690mm (27.2")
OpenGL: renderer: NVIDIA GeForce GT 1030/PCIe/SSE2 v: 4.6.0 NVIDIA 535.154.05
direct render: Yes
Audio:
Device-1: Intel 100 Series/C230 Series Family HD Audio vendor: Dell driver: snd_hda_intel
v: kernel bus-ID: 00:1f.3 chip-ID: 8086:a170 class-ID: 0403
Device-2: NVIDIA GP108 High Definition Audio driver: snd_hda_intel v: kernel pcie:
speed: 8 GT/s lanes: 4 bus-ID: 01:00.1 chip-ID: 10de:0fb8 class-ID: 0403
Sound Server-1: ALSA v: k5.15.0-94-generic running: yes
Sound Server-2: PulseAudio v: 15.99.1 running: yes
Sound Server-3: PipeWire v: 0.3.48 running: yes
Network:
Device-1: Intel Ethernet I219-V vendor: Dell driver: e1000e v: kernel port: N/A bus-ID: 00:1f.6
chip-ID: 8086:15b8 class-ID: 0200
IF: enp0s31f6 state: up speed: 1000 Mbps duplex: full mac:
Drives:
Local Storage: total: 2.05 TiB used: 1.95 TiB (95.0%)
ID-1: /dev/sda vendor: SanDisk model: SD8SBAT-256G-1006 size: 238.47 GiB speed: 6.0 Gb/s
type: SSD serial: rev: 1006 scheme: GPT
ID-2: /dev/sdb vendor: Western Digital model: WDS100T2B0A-00SM50 size: 931.51 GiB
speed: 6.0 Gb/s type: SSD serial: rev: 20WD scheme: MBR
ID-3: /dev/sdd type: USB vendor: Western Digital model: WD My Passport 25E1 size: 931.48 GiB
type: N/A serial: rev: 1021 scheme: GPT
Partition:
ID-1: / size: 233.62 GiB used: 62.52 GiB (26.8%) fs: ext4 dev: /dev/sda3
ID-2: /boot/efi size: 47.2 MiB used: 6 MiB (12.8%) fs: vfat dev: /dev/sda2
ID-3: /home size: 915.82 GiB used: 717.13 GiB (78.3%) fs: ext4 dev: /dev/sdb1
Swap:
ID-1: swap-1 type: file size: 2 GiB used: 1.2 MiB (0.1%) priority: -2 file: /swapfile
USB:
Hub-1: 1-0:1 info: Hi-speed hub with single TT ports: 16 rev: 2.0 speed: 480 Mb/s
chip-ID: 1d6b:0002 class-ID: 0900
Device-1: 1-1:2 info: Realtek RTL2838 DVB-T type: Video driver: dvb_usb_rtl28xxu,rtl2832_sdr
interfaces: 2 rev: 2.0 speed: 480 Mb/s power: 500mA chip-ID: 0bda:2838 class-ID: 0000
serial:
Device-2: 1-3:3 info: 816820090226 type: Mass Storage driver: usb-storage interfaces: 1
rev: 2.0 speed: 480 Mb/s power: 500mA chip-ID: 3207:0300 class-ID: 0806 serial:
Device-3: 1-5:4 info: Logitech Unifying Receiver type: Keyboard,Mouse,HID
driver: logitech-djreceiver,usbhid interfaces: 3 rev: 2.0 speed: 12 Mb/s power: 98mA
chip-ID: 046d:c52b class-ID: 0300
Device-4: 1-9:5 info: Western Digital My Passport (WD20NMVW) type: Mass Storage
driver: usb-storage interfaces: 1 rev: 2.1 speed: 480 Mb/s power: 500mA chip-ID: 1058:25e1
class-ID: 0806 serial:
Hub-2: 2-0:1 info: Super-speed hub ports: 10 rev: 3.0 speed: 5 Gb/s chip-ID: 1d6b:0003
class-ID: 0900
Sensors:
System Temperatures: cpu: 29.8 C pch: 56.0 C mobo: 27.8 C gpu: nvidia temp: 35 C
Fan Speeds (RPM): N/A gpu: nvidia fan: 86%
Repos:
Packages: note: see --pkg apt: 3728
Active apt repos in: /etc/apt/sources.list
1: deb [trusted=yes] http: //www.raqsoft.com/raqesproc/update/debian/ /
Active apt repos in: /etc/apt/sources.list.d/gambas-team-gambas3-jammy.list
1: deb [signed-by=/etc/apt/keyrings/gambas-team-gambas3-jammy.gpg] https: //ppa.launchpadcontent.net/gambas-team/gambas3/ubuntu jammy main
Active apt repos in: /etc/apt/sources.list.d/jonaski-strawberry-jammy.list
1: deb [signed-by=/etc/apt/keyrings/jonaski-strawberry-jammy.gpg] https: //ppa.launchpadcontent.net/jonaski/strawberry/ubuntu jammy main
Active apt repos in: /etc/apt/sources.list.d/krupkat-code-jammy.list
1: deb [signed-by=/etc/apt/keyrings/krupkat-code-jammy.gpg] https: //ppa.launchpadcontent.net/krupkat/code/ubuntu jammy main
Active apt repos in: /etc/apt/sources.list.d/official-package-repositories.list
1: deb http: //packages.linuxmint.com virginia main upstream import backport
2: deb http: //archive.ubuntu.com/ubuntu jammy main restricted universe multiverse
3: deb http: //archive.ubuntu.com/ubuntu jammy-updates main restricted universe multiverse
4: deb http: //archive.ubuntu.com/ubuntu jammy-backports main restricted universe multiverse
5: deb http: //security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
Active apt repos in: /etc/apt/sources.list.d/vscode.list
1: deb [arch=amd64,arm64,armhf] http: //packages.microsoft.com/repos/code stable main
Active apt repos in: /etc/apt/sources.list.d/vscodium.list
1: deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https: //download.vscodium.com/debs vscodium main
Info:
Processes: 293 Uptime: 8h 24m wakeups: 24 Memory: 15.54 GiB used: 5.92 GiB (38.1%) Init: systemd
v: 249 runlevel: 5 Compilers: gcc: 11.4.0 alt: 11/12 clang: 14.0.0-1ubuntu1.1
Client: Unknown python client inxi: 3.3.13

treetable

hi, can you add a treetable widget

It is showing an error.

It is showing the following error and I am running the latest version of V 0.4.4.

/Users/ar1trabanik/.vmodules/iui/src/buttongroup.v:50:22: error: cannot assign to `this.selected`: expected `&iui.Checkbox`, not `&iui.Component`
   48 |                 tar.is_selected = true
   49 |             }
   50 |             this.selected = e.target
      |                               ~~~~~~
   51 |             this.invoke_mouse_up(e.target, e.ctx)
   52 |         })

iui/menu.v:201:7: error: unknown method or field: `iui.MenuItem.draw_event_fn`.

When I'm trying to compile, in particular, Vide, I get the following error:

.vmodules/iui/menu.v:201:7: error: unknown method or field: `iui.MenuItem.draw_event_fn`.
2 possibilities: `add_child`, `set_click`.
  199 |         })
  200 |     }
  201 |     item.draw_event_fn(app, &Component(item))
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  202 | }

I've gotten this with both the latest version of IUI and the version of IUI that Vide was built with for 0.0.7-alpha.

After some digging, the function, does in fact, not exist.

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.