Giter VIP home page Giter VIP logo

mangohud's People

Contributors

adelks avatar andrealmeid avatar baryluk avatar billli11 avatar boukehaarsma23 avatar dadschoorse avatar danyspin97 avatar dependabot[bot] avatar etaash-mathamsetty avatar evelikov avatar evelikov-work avatar faalagorn avatar flightlessmango avatar forthereallys avatar gort818 avatar guihkx avatar hannesmann avatar jackun avatar joshua-ashton avatar krathalan avatar larskraemer avatar lukashoracek avatar newbytee avatar noxphasma avatar sfrcorne avatar skrungly avatar sporif avatar stephanlachnit avatar theevilskeleton avatar valters-tomsons 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mangohud's Issues

Manual build instructions unclear / Missing distro

Hi, there's no documented dependencies in the readme and when running the build.sh it only has support for a few named linux distros. Modified line 53 to read *"buntu"|"Linux Mint"|"Debian"|"Zorin OS"|"Pop!_OS") and then the script downloaded required dependencies.

Issue with configuration files

Putting MangoHud.conf inside the folder of the game, or using MANGOHUD_CONFIG= doesn't overwrite the configurations inside ~/.config/MangoHud/MangoHud.conf

Won't run when compiled with -D_GLIBCXX_ASSERTIONS

FYI: You can safely disregard this issue if you wish, since by default MangoHud doesn't enable GCC hardening flags, such as -D_GLIBCXX_ASSERTIONS.

But I decided to report it here anyway, just in case. Quick background info: I'm building a Flatpak package for MangoHud. Currently, it can build both 64 and 32-bit libraries just fine, and they mostly work too (well, except for this error and the missing glxinfo binary in Flatpak).

However, the installation part is a problem at the moment. I have to manually copy the .so to whatever Flatpak app I want to use the HUD on (e.g. Steam, Lutris), due to some Flatpak restrictions. I'm still trying to find a solution to install MangoHud "globally".

Anyway, back to the issue. To build Flatpak apps we use flatpak-builder, and by default they enable these hardening flags in GCC (they can be bypassed though, that's why I said you can disregard this issue).

But a few commits ago, MangoHud was working just fine with the build made by flatpak-builder. Now, it fails to run with the following error:

$ env MANGOHUD=1 vkcube
/usr/include/c++/9.2.0/bits/stl_vector.h:1042: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = CPUData_; _Alloc = std::allocator<CPUData_>; std::vector<_Tp, _Alloc>::reference = CPUData_&; std::vector<_Tp, _Alloc>::size_type = long unsigned int]: Assertion '__builtin_expect(__n < this->size(), true)' failed.

I'm not a C/C++ programmer, so it was kinda difficult for me to find out where the error was coming from, especially because I have mango/lib32-mango installed here on Arch and they were working just fine. After some Googling, I tried to modify the PKGBUILD to include just the -D_GLIBCXX_ASSERTIONS flag and I've also disabled stripping the debug info from the binary.

Bingo! Here's what gdb tells me:

$ env MANGOHUD=1 gdb -quiet vkcube
Reading symbols from vkcube...
(No debugging symbols found in vkcube)
(gdb) r
Starting program: /usr/bin/vkcube 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
/usr/lib/../share/gcc-9.2.0/python/libstdcxx/v6/xmethods.py:731: SyntaxWarning: list indices must be integers or slices, not str; perhaps you missed a comma?
  refcounts = ['_M_refcount']['_M_pi']
/usr/include/c++/9.2.0/bits/stl_vector.h:1042: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = CPUData_; _Alloc = std::allocator<CPUData_>; std::vector<_Tp, _Alloc>::reference = CPUData_&; std::vector<_Tp, _Alloc>::size_type = long unsigned int]: Assertion '__builtin_expect(__n < this->size(), true)' failed.

Program received signal SIGABRT, Aborted.
0x00007ffff7c2df25 in raise () from /usr/lib/libc.so.6
(gdb) bt
#0  0x00007ffff7c2df25 in raise () from /usr/lib/libc.so.6
#1  0x00007ffff7c17897 in abort () from /usr/lib/libc.so.6
#2  0x00007ffff570c984 in std::__replacement_assert (__file=__file@entry=0x7ffff5787f98 "/usr/include/c++/9.2.0/bits/stl_vector.h", __line=__line@entry=1042, 
    __function=__function@entry=0x7ffff57b8890 "std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = CPUData_; _Alloc = std::allocator<CPUData_>; std::vector<_Tp, _Alloc>::referen"..., __condition=__condition@entry=0x7ffff5787e58 "__builtin_expect(__n < this->size(), true)")
    at /usr/include/c++/9.2.0/x86_64-pc-linux-gnu/bits/c++config.h:463
#3  0x00007ffff570af17 in std::vector<CPUData_, std::allocator<CPUData_> >::operator[] (__n=4, this=0x7ffff57d7a08 <cpuStats+8>) at /usr/include/c++/9.2.0/bits/locale_facets.h:877
#4  CPUStats::UpdateCoreMhz (this=0x7ffff57d7a00 <cpuStats>) at ../../src/cpu.cpp:210
#5  0x00007ffff570b1bc in CPUStats::UpdateCPUData (this=0x7ffff57d7a00 <cpuStats>) at ../../src/cpu.cpp:150
#6  0x00007ffff570be3c in CPUStats::Init (this=0x7ffff57d7a00 <cpuStats>) at ../../src/cpu.cpp:143
#7  0x00007ffff570c124 in CPUStats::CPUStats (this=0x7ffff57d7a00 <cpuStats>) at ../../src/cpu.cpp:99
#8  0x00007ffff56f5158 in __static_initialization_and_destruction_0 (__initialize_p=1, __priority=65535) at ../../src/cpu.cpp:220
#9  _GLOBAL__sub_I_cpu.cpp(void) () at ../../src/cpu.cpp:220
#10 0x00007ffff7fe272a in call_init.part () from /lib64/ld-linux-x86-64.so.2
#11 0x00007ffff7fe2831 in _dl_init () from /lib64/ld-linux-x86-64.so.2
#12 0x00007ffff7fe6603 in dl_open_worker () from /lib64/ld-linux-x86-64.so.2
#13 0x00007ffff7d2bd79 in _dl_catch_exception () from /usr/lib/libc.so.6
#14 0x00007ffff7fe5eee in _dl_open () from /lib64/ld-linux-x86-64.so.2
#15 0x00007ffff7bdf34c in ?? () from /usr/lib/libdl.so.2
#16 0x00007ffff7d2bd79 in _dl_catch_exception () from /usr/lib/libc.so.6
#17 0x00007ffff7d2be13 in _dl_catch_error () from /usr/lib/libc.so.6
#18 0x00007ffff7bdfab9 in ?? () from /usr/lib/libdl.so.2
#19 0x00007ffff7bdf3da in dlopen () from /usr/lib/libdl.so.2
#20 0x00007ffff7de783c in ?? () from /usr/lib/libvulkan.so.1
#21 0x00007ffff7debe6e in vkCreateInstance () from /usr/lib/libvulkan.so.1
#22 0x00005555555576b5 in ?? ()
#23 0x00007ffff7c19153 in __libc_start_main () from /usr/lib/libc.so.6
#24 0x00005555555597ae in ?? ()

If you chose to fix this (but again, you don't have to), let me know if I can provide any other information.

Thanks.

Installation doesn't work on Ubuntu

Using Ubuntu 19.10:

$ '/home/vadi/Downloads/MangoHud-v0.2.0/MangoHud/install.sh' 
cp: '.local' and '/home/vadi/.local' are the same file
cp: '.config' and '/home/vadi/.config' are the same file
sed: can't read /home/vadi/.local/share/vulkan/implicit_layer.d/mangohud32.json: No such file or directory
sed: can't read /home/vadi/.local/share/vulkan/implicit_layer.d/mangohud64.json: No such file or directory
vadi@gooseberry:~$ 

"Logging" label position needs to be based on the hud position

Currently, the label seems to be hardcoded to be at the top right. However, if you move the hud with MANGOHUD_CONFIG to the top right, it will mask the label.

A solution is to move the label at the opposite of where the hud is:

  • If the hud is top left, display it top right and vice-versa.
  • If the hud is bottom left , display it bottom right and vice-versa.

VRAM not showing

I tried to make vram and ram show into the hud, but apparently it doesn't work on my system. The configuration is read (as you can see, no frame_timing and additional core_load) but ram and vram is ignored. Is there a way to get an output on why that is? Like, a log or something? I guess it simply can't find where to look for.

Here are my launch options:

MANGOHUD_CONFIG=cpu_temp,gpu_temp,core_load,ram,vram,frame_timing=0 MANGOHUD=1 gamemoderun %command%

(Removing gamemoderun didn't change anything, so that's not the issue)

I'm using manjaro (latest version) with an RX580 with the latest mesa-version.

Screenshot

HUD displayed by default, and incorrectly on SteamPlay games

When MangoHUD is being installed into the system, games running with SteamPlay will display dxvk hud by default. If you add MANGOHUD=1, then both huds are displayed at the same time.

HOW TO REPRODUCE

  • Open Steam for Linux, and enable SteamPlay.
  • Install Quake Champions, or any other DXVK game.
  • Open the game
    2
    If you add the env var MONGOHUD=1, it will show both HUDS at the same time.
    3

WHAT WORKS FINE
Running the game with wine and steam for windows and adding the env var MONGOHUD=1.
1

GPU stats dissapears with Life Is Strange 2

When I use MangoHud with Life Is Strange 2, GPU stats appears on the launcher, but as soon I press on Play, GPU stats dissapears

Here is the launcher (GPU appears):

Life Is Strange_2

Here is the game itself (GPU disappears):

Life Is Strange 2

Is it posible to display just time?

That's how I used MSI Afterbunrer years ago on Windows.

Currently the HUD will still show renderer (DXVK and its version, for instance), FPS / frametime.

Usage inside Steam Linux Runtime

I want to use this tool on Rise of the Tomb Raider, but I am on Arch Linux and this game requires some outdated libraries that only still ship on Ubuntu, so I run it through Steam Linux Runtime. I must point that I got to this solution after a month long chat with Feral support where they couldn't provide much help.

So, the SLR overlays the libraries over the host system, and this overlay hides mangohud library and the implicit_layer.d files. Because of that, the HUD is missing when running Vulkan games inside SLR. Is it possible to make the files visible under SLR so I can have the HUD?

Enable CPU load at log files

Hello,

As I can see by benchmarks by @flightlessmango, it's possible to log CPU load, as by this results for instance: https://flightlessmango.com/benchmarks/phA-M1biogE

However, the build I'm currently using (and, AFAIK, other users as well, given their results) this data is not write on log files, possible related to this line: https://github.com/flightlessmango/MangoHud/blob/master/src/logging.h#L54

It would be possible to enable this for all users? Is there any motivation in disabling this feature by default?

Thanks!

No MangoHud.conf file found anywhere

This seems strange, but I can't find the .conf file anywhere on my system. I've looked not only in the default location, but did a system wide search for it, but nothing was found.
Could you add something to show how the .conf file is supposed to look so I can just create one?

Ryzen 5 2600x
16GB DDR4 3200
Sapphire Nitro+ RX580
Pop!_OS 19.04

MangoHud doesn't work on Kubuntu 19.10

I installed MangoHud on Kubuntu 19.10, and I checked to see if it is installed successfully, and I found these files:
~/.local/share/MangoHud/libMangoHud.so
~/.local/share/vulkan/implicit_layer.d/mangohud32.json
~/.local/share/vulkan/implicit_layer.d/mangohud64.json

but I can't find the file libMangoHud32.so, I don't know if this is related to Ubuntu dropping the support for 32bit packages from Ubuntu starting from version 19.10, or not.

Anyway, trying to run any 64bit game with MANGOHUD=1 freeze the game during loading, and I had to kill the game, otherwise, it will load forever.

Consider using libXNVCtrl instead of NVML?

Hello,

I don't know if this happens only in older GPUs from NVIDIA, but MangoHud can't report GPU usage properly at all.

That's because nvmlDeviceGetUtilizationRates() currently returns NVML_ERROR_NOT_SUPPORTED on my GTX 660. It's also observable when using nvidia-smi:

$ nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader
[Not Supported]

Which I find weird, because the documentation for that function clearly states:

Description
Retrieves the current utilization rates for the device's major subsystems.

FERMI_OR_NEWER%

Well, the GTX 660 has a Kepler-based architecture, which is the successor of Fermi, so it should be working...

Not everything is lost, though. The nvidia-settings utility is able to actually report GPU usage (percentage):

$ nvidia-settings -tq '[gpu:0]/GPUUtilization'
graphics=8, memory=4, video=0, PCIe=0

Of course it's not ideal for MangoHud to keep calling nvidia-settings to query these values. For that, there is a C library called libXNVCtrl, developed by NVIDIA:

https://github.com/NVIDIA/nvidia-settings/tree/master/src/libXNVCtrl

Sample codes are available as well:

https://github.com/NVIDIA/nvidia-settings/tree/master/samples

P.S.: I'm not entirely sure if libXNVCtrl could fully replace all the NVML bits you guys are using, but it's definitely worth taking a look.

Thanks!

32-bit games work with the HUD, but not 64-bit Games.

An odd bug is happening where, no matter what I try, the loader for HUD will work on 32bit games (Sonic Mania, Borderlands 2, even Source Filmmaker!), but not on 64-bit games (A Hat In Time, Shadow of the Tomb Raider, The Witcher III: Wild Hunt, HITMAN 2). I tried different Proton versions, I opted out of the steam beta. I even compiled it myself, with the exact same issues. Sonic Mania works, but Hitman 2 does not.

There seems to be a 64-bit library that Steam isn't loading that does not load the HUD, and i can't quite put my finger on what. Any help would be greatly appreciated!

Installing the package "vulkan-headers" required on Arch

I needed to install the package "vulkan-headers" to get the hud working on Arch. Without it games seemed to freeze early in the starting process if the hud was enabled.

It's not one of the dependencies build.sh checks for, but I noticed the build process tries to compile it, so I assume it not being in the dependencies is intentional.

It looks like the compilation of it fails though, hence why installing the package was needed.
Here's what seems to be the relevant error:

Cloning into '/home/sasamus/Downloads/Temporary/MangoHud/build/meson32/modules/Vulkan-Headers'... [22/25] Compiling C++ object 'src/25a6634@@MangoHud@sha/overlay.cpp.o'. ../../src/overlay.cpp: In function ‘void init_gpu_stats(device_data*)’: ../../src/overlay.cpp:794:26: warning: unused variable ‘instance_data’ [-Wunused-variable] 794 | struct instance_data *instance_data = device_data->instance; |

I don't know if installing the package is a better solution than compiling it, but at least it seems to work fine for me.

This was tested with the latest master, which is at this commit as of writing this.

Vega 3 gets 0% use

I use an AMD Athlon 200GE APU with Vega 3 Graphics and my gpu load is 0% :/

Option to start with hidden MangoHud

I really like how to toggle MangoHud with a hotkey.
Unfortunately, MangoHud must always be displayed on game startup before manually be toggled off.

In my use case, I'd like to start a game with MangoHud initially being hidden and only toggle it on on demand.
Any chance this can be implemented?

gpu_load and gpu_temp are missing with Feral3D

I run the official 0.1.0 release and found out that the gpu_load and gpu_temp values are not displayed if a games runs with Feral3D (Shadow of the Tomb Raider) while on DXVK titles and titles using "true" Vulkan it is shown.

My Steam launch options:
MANGOHUD=1 MANGOHUD_CONFIG=cpu_temp,gpu_temp,core_load,ram,vram,frame_timing %command%

Tomb Raider (Feral 3D / Vulkan):
Screenshot_20200209_173854

Bright Memory (DXVK):
Screenshot_20200209_174211

Also I noticed that the parameter vram and ram seems not to work at all as you can see in both screenshots.

My Specs:
OS: openSUSE Tumbleweed
Kernel: 5.4.14
GPU: NVidai GTX 1080
Driver: 440.59
Vulkan: 1.1.119
MangoHUD: 0.1.0
CPU: AMD Ryzen 1800X
Chipset: AMD X370 (if this might matter due to the missing values)

Did I do something wrong, is this an NVidia driver things since MangoHUD is based on the MesaHUD?

And last but not least are there any additional informations I can give?

Thank you for your help in advance :)

Kind regards,
Vortex

hotkey ignores #comment

### Change toggle keybinds for the hud & logging
# toggle_hud=F12
# toggle_logging=F2

F12 is default screenshot button.
pressing F12 still toggles the hud on and off....
setting =0 does disable it

toggle_hud=0
toggle_logging=0

i have by default to hide the hud.

### Disable / hide the hud by deafult
no_display

MangoHud incompatible with EA Origin

No matter what I do, on multiple different Wineprefixes for different games I have installed on EA Origin, MangoHud crashes Origin immediately after the window opens. The HUD shows up for a moment, the little thing starts spinning, and then it freezes, crashes, and the "Origin has experienced a problem and must close" window pops up, no matter what. I've tried it with both a manually-built install and just a release download install, on separate Wineprefixes with separate Origin installs for Jedi Fallen Order, Titanfall 2, and Battlefield V. None of them seem to work, and I didn't see an issue on the issues threads. Also, while typing this, I figured I'd try the AUR packages, and still got the same result.
Distribution: Arch Linux
Kernel: 5.6.0-rc1-1-tkg-pds
mesa: mesa-tkg-git-20.1.0_devel

yay -Q | grep -ie vulkan -ie mesa
lib32-mesa-demos 8.4.0-1
lib32-mesa-tkg-git 20.1.0_devel.120191.a603822b2fc-1
lib32-vulkan-icd-loader 1.2.132-1
mesa-demos 8.4.0-2
mesa-tkg-git 20.1.0_devel.120191.a603822b2fc-1
vulkan-caps-viewer 2.03-2
vulkan-headers 1:1.2.132-1
vulkan-html-docs 1:1.2.132-1
vulkan-icd-loader 1.2.132-1
vulkan-tools 1.2.131.1-1

Issue with GPU load

GPU load = 0% all the time, and it doesn't change at all.

Darksiders_Genesis

System information:
OS: Kubuntu 19.10 - kernel: 5.3.0-29
GPU: AMD Radeon HD 8750M
CPU: Intel core I5 4200M
Driver: Mesa 20-dev (obiaf ppa)

Memory leak when used with DX9 applications

zany130.zip
for example hat in time does this https://youtu.be/Ryq41Iu7NDU it's the same in trails in the sky (DX9) bully and valkyrie chronicles 1 they will all crash right away

the mem leak also happens in vkcube but not in directx 11 games only hat in time seems to be memleaking and rise of the tombraider works fine

steps to reproduce:

  1. launch any dx9 game with PROTON_USE_D9VK=1 MANGOHUD=1 %command% in steam
  2. Mango hud will load and show your fps etc.
  3. observe freeze and possible mem leak(not all memleak) within the first minute of running the game ( games will more or less consistently crash at the same point)
  4. try any non directx9 game that is or can be translated to vulkan with MANGOHUD=1 %command%
  5. mango hud loads fine and game does not freeze
inxi -Fxxxza --no-host
System:    Kernel: 5.4.16-29-tkg-MuQSS x86_64 bits: 64 compiler: gcc v: 9.2.0 
           parameters: BOOT_IMAGE=/boot/vmlinuz-linux54-tkg-MuQSS root=UUID=db3314cf-97c1-46aa-a6c8-05cde55c83e6 rw 
           quiet nvidia-drm.modeset=1 apparmor=1 security=apparmor resume=UUID=45c1ddfa-1329-44cb-94b6-e74c8bd86bd2 
           udev.log_priority=3 
           Desktop: KDE Plasma 5.17.5 tk: Qt 5.14.0 wm: kwin_x11 dm: SDDM Distro: Manjaro Linux 
Machine:   Type: Desktop System: Gigabyte product: X470 AORUS ULTRA GAMING v: N/A serial: <filter> 
           Mobo: Gigabyte model: X470 AORUS ULTRA GAMING-CF v: x.x serial: <filter> UEFI: American Megatrends v: F50 
           date: 11/27/2019 
CPU:       Topology: 8-Core model: AMD Ryzen 7 2700X bits: 64 type: MT MCP arch: Zen+ family: 17 (23) model-id: 8 
           stepping: 2 microcode: 800820D L2 cache: 4096 KiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 118381 
           Speed: 3957 MHz min/max: 2200/3700 MHz boost: enabled Core speeds (MHz): 1: 3957 2: 4131 3: 4084 4: 4171 
           5: 4065 6: 4069 7: 3862 8: 4180 9: 4089 10: 4170 11: 3611 12: 4080 13: 4020 14: 4186 15: 3674 16: 4078 
           Vulnerabilities: Type: itlb_multihit status: Not affected 
           Type: l1tf status: Not affected 
           Type: mds status: Not affected 
           Type: meltdown status: Not affected 
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp 
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization 
           Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP: disabled, RSB filling 
           Type: tsx_async_abort status: Not affected 
Graphics:  Device-1: NVIDIA GP104 [GeForce GTX 1080] vendor: Gigabyte driver: nvidia v: 440.44 bus ID: 0a:00.0 
           chip ID: 10de:1b80 
           Display: x11 server: X.Org 1.20.7 driver: nvidia compositor: kwin_x11 tty: N/A 
           OpenGL: renderer: GeForce GTX 1080/PCIe/SSE2 v: 4.6.0 NVIDIA 440.44 direct render: Yes 
Audio:     Device-1: NVIDIA GP104 High Definition Audio vendor: Gigabyte driver: snd_hda_intel v: kernel 
           bus ID: 0a:00.1 chip ID: 10de:10f0 
           Device-2: Advanced Micro Devices [AMD] Family 17h HD Audio vendor: Gigabyte driver: snd_hda_intel v: kernel 
           bus ID: 0c:00.3 chip ID: 1022:1457 
           Sound Server: ALSA v: k5.4.16-29-tkg-MuQSS 
Network:   Device-1: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel bus ID: 05:00.0 chip ID: 8086:2723 
           IF: wlp5s0 state: down mac: <filter> 
           Device-2: Intel I211 Gigabit Network vendor: Gigabyte driver: igb v: 5.6.0-k port: f000 bus ID: 07:00.0 
           chip ID: 8086:1539 
           IF: enp7s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
           IF-ID-1: anbox0 state: down mac: <filter> 
Drives:    Local Storage: total: 3.01 TiB used: 2.48 TiB (82.2%) 
           ID-1: /dev/nvme0n1 vendor: Samsung model: SSD 970 EVO 250GB size: 232.89 GiB block size: physical: 512 B 
           logical: 512 B speed: 31.6 Gb/s lanes: 4 serial: <filter> rev: 2B2QEXE7 scheme: GPT 
           ID-2: /dev/nvme1n1 vendor: Samsung model: SSD 960 EVO 250GB size: 232.89 GiB block size: physical: 512 B 
           logical: 512 B speed: 31.6 Gb/s lanes: 4 serial: <filter> rev: 3B7QCXE7 scheme: GPT 
           ID-3: /dev/sda vendor: Seagate model: ST1000DM010-2EP102 size: 931.51 GiB block size: physical: 4096 B 
           logical: 512 B speed: 6.0 Gb/s rotation: 7200 rpm serial: <filter> rev: CC43 scheme: GPT 
           ID-4: /dev/sdb vendor: Seagate model: ST2000DX002-2DV164 size: 1.82 TiB block size: physical: 4096 B 
           logical: 512 B speed: 6.0 Gb/s rotation: 7200 rpm serial: <filter> rev: CC41 
           ID-5: /dev/sdc type: USB vendor: Patriot model: N/A size: 57.70 GiB block size: physical: 512 B 
           logical: 512 B serial: <filter> rev: PMAP scheme: MBR 
Partition: ID-1: / raw size: 215.45 GiB size: 211.06 GiB (97.97%) used: 150.88 GiB (71.5%) fs: ext4 dev: /dev/nvme0n1p2 
           ID-2: swap-1 size: 17.14 GiB used: 2.5 MiB (0.0%) fs: swap swappiness: 33 (default 60) 
           cache pressure: 50 (default 100) dev: /dev/nvme0n1p3 
Sensors:   System Temperatures: cpu: 59.1 C mobo: N/A gpu: nvidia temp: 34 C 
           Fan Speeds (RPM): N/A gpu: nvidia fan: 36% 
Info:      Processes: 425 Uptime: 1h 05m Memory: 15.64 GiB used: 6.32 GiB (40.4%) Init: systemd v: 242 Compilers: 
           gcc: 9.2.0 alt: 8 Shell: bash v: 5.0.11 running in: deepin-terminal inxi: 3.0.37 

Issue with VRAM readings

VRAM = 0 all the time, and it doesn't change at all.

System information:
OS: Kubuntu 19.10 - kernel: 5.3.0-29
GPU: AMD Radeon HD 8750M
CPU: Intel core I5 4200M
Driver: Mesa 20-devel (obiaf ppa)

Can't Compile MangoHud

$ ./build.sh install
sed: can't read /home/nutta/.local/share/vulkan/implicit_layer.d/mangohud32.json: No such file or directory
sed: can't read /home/nutta/.local/share/vulkan/implicit_layer.d/mangohud64.json: No such file or directory

New Feature: Show currently used driver

Hi,

it would be really nice if mangohud could show the currently in use driver.
This is handy especially for amd with the 3 different vulkan drivers, so that you can verify which one is in use atm.

Many thx,
Christian

MPV segmentation fault

0x00007fffc8fa8154 in overlay_CreateInstance(VkInstanceCreateInfo const*, VkAllocationCallbacks const*, VkInstance_T**) () from /home/catbox/.local/share/MangoHud/libMangoHud.so
(gdb) quit

checked with

gdb mpv

using mpv.conf

hwdec=vo_gpu
vo=gpu
# VULKAN
gpu-context=x11vk
gpu-api=vulkan
spirv-compiler=auto

this is my MangoHud.conf

### MangoHud configuration file
### Uncomment any options you wish to enable. Default options are left uncommented
### Use some_parameter=0 to disable a parameter (only works with on/off parameters)
### Everything below can be used / overridden with the environment variable MANGOHUD_CONFIG instead

### MANGOHUD=1 %command%

################ PERFORMANCE #################

### Limit the application FPS
fps_limit=60

### VSYNC [0-3] 0 = adaptive; 1 = off; 2 = mailbox; 3 = on
vsync=1

################### VISUAL ###################

### Display the current CPU information
cpu_stats
cpu_temp

### Display the current GPU information
gpu_stats
gpu_temp

### Display the frametime line graph
frame_timing=0

### Display the current system time
# time

### Change the hud font size (default is 24)
font_size=12

### Change the hud position (default is top-left)
position=top-left

### Display the current CPU load & frequency for each core
# core_load

### Display system ram / vram usage
ram
vram

### Disable / hide the hud by deafult
no_display

### Hud position offset
offset_x=0
offset_y=16

### Hud dimensions
width=133
height=69

### Hud transparency / alpha
background_alpha=0.01

### Crosshair overlay (default size is 30)
# crosshair
# crosshair_size=16
# crosshair_color=RRGGBB

################## INTERACTION #################

### Change toggle keybinds for the hud & logging
toggle_hud=F13
toggle_logging=F13
# toggle_hud=F12
# toggle_logging=F2

my ~/.profile

export MANGOHUD=1

mpv version
v0.32.0

vulkanapi version (vulkaninfo)
Vulkan Instance Version: 1.2.131
MangoHud 32/64bit (Vulkan Hud Overlay) Vulkan version 1.1.125

NVIDIA-SMI 440.59

setting MANGOHUD=0 fixes the issue

Deb/PPA packaging?

Any chance we could see this with a DEB packaging for releases or perhaps a PPA? :)

Parameter to enable all hud elements

First of all thank you for the hard work!

In DXVK DXVK_HUD=full enables all avaliable hud elements.

It would be great to have the same parameter in MangoHud

Getting NVIDIA Xid error on Skyrim Special Edition when 'gpu_timing' is enabled

My info:

CPU: Intel i5 3570k
GPU: NVIDIA GTX 660
RAM: 8 GB

Software:

NVIDIA Driver: 440.59
MangoHud: v0.2.0
Runtime: Flatpak
Steam: Beta Update (Feb 18, 2020)
Proton: 5.0-2

Launch options for Skyrim Special Edition:

PROTON_LOG=1 MANGOHUD=1 MANGOHUD_CONFIG=gpu_timing WINEDLLOVERRIDES="xaudio2_7=n,b" %command%

This is the Xid message that pops up in dmesg after you click the PLAY button in the game's launcher:

[ 3252.896909] NVRM: Xid (PCI:0000:01:00): 32, pid=16176, Channel ID 00000055 intr1 00000008 HCE_DBG0 00000110 HCE_DBG1 00000000

This crash also occurs if I set MANGOHUD_CONFIG=full instead, but after narrowing them down, I found out that the option crashing the game is gpu_timing.

The proton log file shows the following message too, which is probably the root cause:

[...]
Command buffer submitted multiple times before present.
This could lead to invalid data.
[...]

Full log file: steam-489830.log

Elementary OS

So I am using elementary os (hera) and when I try and install mangoHUD it says

# Checking Dependencies

Unable to find distro information!

Attempting to build regardless

./build.sh: line 112: meson: command not found
./build.sh: line 119: meson: command not found
./build.sh: line 127: ninja: command not found
./build.sh: line 128: ninja: command not found
cp: cannot stat 'build/release/usr/lib32/libMangoHud.so': No such file or directory
cp: cannot stat 'build/release/usr/lib64/libMangoHud.so': No such file or directory
cp: cannot stat 'build/release/usr/share/vulkan/implicit_layer.d/mangohud.json': No such file or directory
cp: cannot stat 'build/release/usr/share/vulkan/implicit_layer.d/mangohud.json': No such file or directory
sed: can't read build/package/MangoHud/.local/share/vulkan/implicit_layer.d/mangohud32.json: No such file or directory
sed: can't read /home/user/.local/share/vulkan/implicit_layer.d/mangohud32.json: No such file or directory
sed: can't read /home/user/.local/share/vulkan/implicit_layer.d/mangohud64.json: No such file or directory

So it is not working and I am not sure what the dependncies are so I cant install them manually. How could I find that info?

Can't build without nvidia-settings

Hi. I'm trying to build the master branch, and I got this error:
`eduardo MangoHud (master) $ ./build.sh install

Checking Dependencies

Unable to find distro information!

Attempting to build regardless

The Meson build system
Version: 0.52.1
Source dir: /home/eduardo/Downloads/MangoHud
Build dir: /home/eduardo/Downloads/MangoHud/build/meson64
Build type: native build
Project name: mangohud
Project version: v1.0.0
C compiler for the host machine: ccache cc (gcc 9.2.0 "cc (Gentoo 9.2.0-r2 p3) 9.2.0")
C linker for the host machine: GNU ld.bfd 2.32
C++ compiler for the host machine: ccache c++ (gcc 9.2.0 "c++ (Gentoo 9.2.0-r2 p3) 9.2.0")
C++ linker for the host machine: GNU ld.bfd 2.32
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program python3 found: YES (/usr/bin/python3)
Checking if "GCC atomic builtins" compiles: YES
Checking if "Supports timespec_get" compiles: YES
Checking for function "bswap32" : YES
Checking for function "bswap64" : YES
Checking for function "clz" : YES
Checking for function "clzll" : YES
Checking for function "ctz" : YES
Checking for function "expect" : YES
Checking for function "ffs" : YES
Checking for function "ffsll" : YES
Checking for function "popcount" : YES
Checking for function "popcountll" : YES
Checking for function "unreachable" : YES
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency x11 found: YES 1.6.9
Compiler for C supports arguments -Werror=implicit-function-declaration: YES
Compiler for C supports arguments -Werror=missing-prototypes: YES
Compiler for C supports arguments -Werror=return-type: YES
Compiler for C supports arguments -Werror=incompatible-pointer-types: YES
Compiler for C supports arguments -fno-math-errno: YES
Compiler for C supports arguments -fno-trapping-math: YES
Compiler for C supports arguments -Qunused-arguments: NO
Compiler for C supports arguments -Wmissing-field-initializers: YES
Compiler for C supports arguments -Wformat-truncation: YES
Compiler for C supports arguments -fvisibility=hidden: YES
Compiler for C++ supports arguments -Werror=return-type: YES
Compiler for C++ supports arguments -fno-math-errno: YES
Compiler for C++ supports arguments -fno-trapping-math: YES
Compiler for C++ supports arguments -Qunused-arguments: NO
Compiler for C++ supports arguments -Wnon-virtual-dtor: YES
Compiler for C++ supports arguments -Wmissing-field-initializers: YES
Compiler for C++ supports arguments -Wformat-truncation: YES
Compiler for C++ supports arguments -Wpointer-arith: YES
Compiler for C++ supports arguments -Wunused-variable: YES
Compiler for C supports arguments -Woverride-init: YES
Compiler for C supports arguments -Winitializer-overrides: NO
Compiler for C++ supports arguments -fvisibility=hidden: YES
Checking for function "dlopen" : NO
Library dl found: YES
Library pthread found: YES
Program glslangValidator found: YES (/usr/bin/glslangValidator)
Compiler for C supports link arguments -Wl,-Bsymbolic-functions: YES
Compiler for C supports link arguments -Wl,-z,relro: YES
Build targets in project: 7
Found ninja-1.8.2 at /usr/bin/ninja
The Meson build system
Version: 0.52.1
Source dir: /home/eduardo/Downloads/MangoHud
Build dir: /home/eduardo/Downloads/MangoHud/build/meson32
Build type: native build
Project name: mangohud
Project version: v1.0.0
C compiler for the host machine: gcc -m32 (gcc 9.2.0 "gcc (Gentoo 9.2.0-r2 p3) 9.2.0")
C linker for the host machine: GNU ld.bfd 2.32
C++ compiler for the host machine: g++ -m32 (gcc 9.2.0 "g++ (Gentoo 9.2.0-r2 p3) 9.2.0")
C++ linker for the host machine: GNU ld.bfd 2.32
Host machine cpu family: x86
Host machine cpu: i686
Program python3 found: YES (/usr/bin/python3)
Checking if "GCC atomic builtins" compiles: YES
Checking if "Supports timespec_get" compiles: YES
Checking for function "bswap32" : YES
Checking for function "bswap64" : YES
Checking for function "clz" : YES
Checking for function "clzll" : YES
Checking for function "ctz" : YES
Checking for function "expect" : YES
Checking for function "ffs" : YES
Checking for function "ffsll" : YES
Checking for function "popcount" : YES
Checking for function "popcountll" : YES
Checking for function "unreachable" : YES
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency x11 found: YES 1.6.9
Compiler for C supports arguments -Werror=implicit-function-declaration: YES
Compiler for C supports arguments -Werror=missing-prototypes: YES
Compiler for C supports arguments -Werror=return-type: YES
Compiler for C supports arguments -Werror=incompatible-pointer-types: YES
Compiler for C supports arguments -fno-math-errno: YES
Compiler for C supports arguments -fno-trapping-math: YES
Compiler for C supports arguments -Qunused-arguments: NO
Compiler for C supports arguments -Wmissing-field-initializers: YES
Compiler for C supports arguments -Wformat-truncation: YES
Compiler for C supports arguments -fvisibility=hidden: YES
Compiler for C++ supports arguments -Werror=return-type: YES
Compiler for C++ supports arguments -fno-math-errno: YES
Compiler for C++ supports arguments -fno-trapping-math: YES
Compiler for C++ supports arguments -Qunused-arguments: NO
Compiler for C++ supports arguments -Wnon-virtual-dtor: YES
Compiler for C++ supports arguments -Wmissing-field-initializers: YES
Compiler for C++ supports arguments -Wformat-truncation: YES
Compiler for C++ supports arguments -Wpointer-arith: YES
Compiler for C++ supports arguments -Wunused-variable: YES
Compiler for C supports arguments -Woverride-init: YES
Compiler for C supports arguments -Winitializer-overrides: NO
Compiler for C++ supports arguments -fvisibility=hidden: YES
Checking for function "dlopen" : NO
Library dl found: YES
Library pthread found: YES
Program glslangValidator found: YES (/usr/bin/glslangValidator)
Compiler for C supports link arguments -Wl,-Bsymbolic-functions: YES
Compiler for C supports link arguments -Wl,-z,relro: YES
Build targets in project: 7
Found ninja-1.8.2 at /usr/bin/ninja
ninja: Entering directory build/meson32' [1/25] Generating overlay.vert.spv.h with a custom command. ../../src/overlay.vert [2/25] Generating overlay.frag.spv.h with a custom command. ../../src/overlay.frag [11/25] Compiling C++ object 'src/25a6634@@MangoHud@sha/overlay.cpp.o'. FAILED: src/25a6634@@MangoHud@sha/overlay.cpp.o g++ -m32 -Isrc/25a6634@@MangoHud@sha -Isrc -I../../src -I../../include -I../../modules/Vulkan-Headers/include -I../../modules/ImGui/src -I. -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++14 -O3 -Werror=return-type -fno-math-errno -fno-trapping-math -Wno-non-virtual-dtor -Wno-missing-field-initializers -Wno-format-truncation -Wno-pointer-arith -Wno-unused-variable -fPIC -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS '-DPACKAGE_VERSION="v1.0.0"' -DNDEBUG -D_GNU_SOURCE -DHAVE_PTHREAD -DUSE_GCC_ATOMIC_BUILTINS -DHAVE_TIMESPEC_GET -DHAVE___BUILTIN_BSWAP32 -DHAVE___BUILTIN_BSWAP64 -DHAVE___BUILTIN_CLZ -DHAVE___BUILTIN_CLZLL -DHAVE___BUILTIN_CTZ -DHAVE___BUILTIN_EXPECT -DHAVE___BUILTIN_FFS -DHAVE___BUILTIN_FFSLL -DHAVE___BUILTIN_POPCOUNT -DHAVE___BUILTIN_POPCOUNTLL -DHAVE___BUILTIN_UNREACHABLE -fvisibility=hidden -DVK_USE_PLATFORM_XLIB_KHR -MD -MQ 'src/25a6634@@MangoHud@sha/overlay.cpp.o' -MF 'src/25a6634@@MangoHud@sha/overlay.cpp.o.d' -o 'src/25a6634@@MangoHud@sha/overlay.cpp.o' -c ../../src/overlay.cpp In file included from ../../src/cpu_gpu.h:18, from ../../src/overlay.cpp:49: ../../src/nvctrl.h:2:10: fatal error: NVCtrl/NVCtrl.h: No such file or directory 2 | #include "NVCtrl/NVCtrl.h" | ^~~~~~~~~~~~~~~~~ compilation terminated. [22/25] Compiling C++ object 'src/25a6634@@MangoHud@sha/cpu.cpp.o'. ninja: build stopped: subcommand failed. ninja: Entering directory build/meson64'
[5/25] Generating overlay.frag.spv.h with a custom command.
../../src/overlay.frag
[6/25] Generating overlay.vert.spv.h with a custom command.
../../src/overlay.vert
[23/25] Compiling C++ object 'src/25a6634@@MangoHud@sha/overlay.cpp.o'.
FAILED: src/25a6634@@MangoHud@sha/overlay.cpp.o
ccache c++ -Isrc/25a6634@@MangoHud@sha -Isrc -I../../src -I../../include -I../../modules/Vulkan-Headers/include -I../../modules/ImGui/src -I. -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++14 -O3 -Werror=return-type -fno-math-errno -fno-trapping-math -Wno-non-virtual-dtor -Wno-missing-field-initializers -Wno-format-truncation -Wno-pointer-arith -Wno-unused-variable -fPIC -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS '-DPACKAGE_VERSION="v1.0.0"' -DNDEBUG -D_GNU_SOURCE -DHAVE_PTHREAD -DUSE_GCC_ATOMIC_BUILTINS -DHAVE_TIMESPEC_GET -DHAVE___BUILTIN_BSWAP32 -DHAVE___BUILTIN_BSWAP64 -DHAVE___BUILTIN_CLZ -DHAVE___BUILTIN_CLZLL -DHAVE___BUILTIN_CTZ -DHAVE___BUILTIN_EXPECT -DHAVE___BUILTIN_FFS -DHAVE___BUILTIN_FFSLL -DHAVE___BUILTIN_POPCOUNT -DHAVE___BUILTIN_POPCOUNTLL -DHAVE___BUILTIN_UNREACHABLE -fvisibility=hidden -DVK_USE_PLATFORM_XLIB_KHR -MD -MQ 'src/25a6634@@MangoHud@sha/overlay.cpp.o' -MF 'src/25a6634@@MangoHud@sha/overlay.cpp.o.d' -o 'src/25a6634@@MangoHud@sha/overlay.cpp.o' -c ../../src/overlay.cpp
In file included from ../../src/cpu_gpu.h:18,
from ../../src/overlay.cpp:49:
../../src/nvctrl.h:2:10: fatal error: NVCtrl/NVCtrl.h: No such file or directory
2 | #include "NVCtrl/NVCtrl.h"
| ^~~~~~~~~~~~~~~~~
compilation terminated.
ninja: build stopped: subcommand failed.
cp: cannot stat 'build/release/usr/lib32/libMangoHud.so': No such file or directory
cp: cannot stat 'build/release/usr/lib64/libMangoHud.so': No such file or directory
cp: cannot stat 'build/release/usr/share/vulkan/implicit_layer.d/mangohud.json': No such file or directory
cp: cannot stat 'build/release/usr/share/vulkan/implicit_layer.d/mangohud.json': No such file or directory
sed: can't read build/package/MangoHud/.local/share/vulkan/implicit_layer.d/mangohud32.json: No such file or directory
sed: can't read /home/eduardo/.local/share/vulkan/implicit_layer.d/mangohud32.json: No such file or directory
sed: can't read /home/eduardo/.local/share/vulkan/implicit_layer.d/mangohud64.json: No such file or directory
`

I belive that this is related to nvidia-settings stuff, that I really don't have, as I use an AMD GPU. Is this a mandatory dependency?

Wine games specific config and display flexibility

-When trying to use a config file in application's folder using wine, it doesn't load and the default config used instead. So seems that there is no way to use specific config file for an application which runs through wine.

-Though I like a lot the look of this hud, I would like to have more control to displayed elements. As it is now, I didn't find a way to turn off CPU/GPU elements and graph. Seems that there is no option to display only FPS or CPU load for example. It also would be nice if have 3 modes(simple/full/no_display) and switch them from the shortcut key. Like Assassin's Creed Odyssey has.

Whole PC hangs when MANGOHUD_CONFIG=full is used

CPU: AMD Ryzen 5 2600
GPU: Nvidia GTX 1060 (440.59 driver)
OS: Arch
DE: Gnome 3.34.4/Xorg

So when a native or DXVK game is launched with MANGOHUD=1 MANGOHUD_CONFIG=full env variables, whole PC hangs - black screen, background audio stops, no reaction on pressing the num/caps lock key. Only reset helps.
When MANGOHUD_CONFIG is set to cpu_temp,gpu_temp,core_load,ram,vram which is, supposedly, the same as full, this problem does not appears.

20200225193234_1

HUD flickers on Dota 2 (Arch Linux)

I load the HUD via Steam launch options: MANGOHUD=1 %command% -vulkan
The HUD loads, but flickers constantly, I do not have the lib32 version installed anymore.

MangoHUD does not work on ZorinOS 15.1

Hello, how are you? First of all I would like to congratulate you for the work and I hope it will evolve even more and thus be a reference in the Linux world.

Well, I'm an editor on the Brazilian blog Diolinux and through the GamingOnLinux blog, I saw your tool and found it interesting and went to test it. But unfortunately on ZorinOS 15.1 Core (Gnome) and Lite (XFCE), MangoHUD is not working, I ran both the .sh script and tried to compile it and it was not. In theory ZorinOS uses the Ubuntu 18.04 base, and in some packages it can use the 18.04.1 base or the 18.04.3 base. I also saw that the meson is in version 0.47. I have a hybrid laptop from Dell (Intel + Nvidia), with a GTX 960M and using the 440.44 drivers. I wonder if you have any procedure to do or something like that. I am available to help.

Att
Ricardo

Flatpak package (for using with Steam)

First, thank you for creating this nice HUD!

While it's currently impossible to package a vulkan layer so that it would work with all flatpaks at once, MangoHud can be packaged as a flatpak extension for Steam flatpak app, for which it's probably the most useful.

I've submitted it here flathub/flathub#1371. If you'd like to (co)maintain the MangoHud flatpak (which is totally welcome), please let Flathub admins know (in that PR).

Segfault on launch with Could not find cpu temp sensor location

Mangohud 0.3.0 downloaded from Releases, installed without problems. Ubuntu 19.10, MacBookPro 6,2, Core i7-620M, nVidia Geforce GT 330M driver 340.107. As you can see, there's no Vulkan here. I'm trying to run Mangohud with Doom 3 via dhewm3 in 64-bit mode. Doom itself runs fine.

After it failed the first time I installed lm-sensors and did sensors-detect and then modprobed coretemp, no improvement. Running sensors shows a bunch of temps.

I tried disabling cpu_stats in the config file but it didn't help.

Am I missing something or is this possibly a bug? I'll happily provide any and all info to help fix it. Thanks.

Not XDG compliant

Install script and config handling should use XDG_CONFIG_HOME and XDG_DATA_HOME with fallback to current values.

How to change hotkeys?

How do you change the hotkeys such as F12 and F2? For me F12 is not very convenient because it conflicts with Yakuake.

Issue with installing MangoHud

I followed your install instruction, but ./build.sh install ends up with this error message:

In file included from ../../src/mesa/util/hash_table.c:50:
../../src/mesa/util/../main/hash.h:36:10: fatal error: GL/gl.h: No such file or directory
   36 | #include <GL/gl.h>
      |          ^~~~~~~~~
compilation terminated.
[6/8] Compiling C++ object 'src/25a6634@@MangoHud@sha/cpu.cpp.o'.
ninja: build stopped: subcommand failed.

I use Kubuntu 19.10

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.