Latest posts
HomeCtrl: Re-designing app interface
My homeCtrl app is finally running fine in Chrome on my android phone, but the interface is currently not very convinient, so I think I need to redesign that to make it easier to use from a phone or tablet or small screen. Let's get started right away!
HomeCtrl: Considering compression with Brotli
Allright guys, as mentioned in my previous article, I should now find how to deal with brotli decompression for my wasm file when downloading that from the server. Let's rock it baby 😆!
Working on WASM HomeCtrl implementation
Going back to the WASM implementation of the HomeCtrl tool now, since I just failed with my initial experiment with Kivy. If I can get the WASM version to work at least, then I might be able to use that from my phone for a while (until I find a better solution?)
Trying to re-implement HomeCtrl android app with kivy
So, lately I've been messing around a lot with my homectrl system since I had to replace the raspberry pi handling all this. And as a result of course, I also refactored the software layer (everything now available as part of the NervHome project, in the nvp/home folder) and broke the compatibility with my existing android app 🤣
Now it's time to try to restore this, but really, I don't want to have anything to do with the Android Studio, gradle, and IDE interactions in this process. So I'm now considering using kivy to provide a python implementation instead. Let's see where we can go with this…
Optimizing QT6 bindings
So, continuing today from the end of our last session, where I introduced some initial minimal QT6 bindings to be able to display a very simple window with a menu bar, and handling a signal connection in lua. This time, we will try to improve a bit on this initial implementation to try to collect all the QT signals automatically when generating the bindings 👍! Let's see if the idea I have will work 😎
Bindings generation for QT6
In this post I'm covering the compilation of QT6 on linux, and then I continue with more lua bindings on windows: that second part was a lot of fun actually, and I ended up with a working minimal QT window built completely from lua 😁! There is still a lot to do here, but who knows, maybe someday I'm gonig to replace pyQT6 this way ?! 🤣. Just keep reading below if you're interested in some painful errors or brief moment of joy on this journey
NervLand: A simple camera implementation
Hello world! Continuing our journey with vulkan I feel I'm now ready to build a dedicated “camera” class, and then figure out how to send user inputs to that camera: after all, all we really need here are the mouse events from the SDL window, right ? So, can't be that terrible to implement 🤣 Let's get started!
Quick journey with ffmpeg: improving audio stream with loudnorm
Hey hey! Tonight I feel like trying a very quick script generation: the goal will be to have an NVP command that I can use simply to renormalize the sound stream in a given input video file. This could be very handy to post-process my devlog recordings for instance.
<< Newer entries | Older entries >>
Blog History
2024
March
- 21 - NervLand: Adding support to perform timestamp queries
- 03 - NervLand: Implementing the DeepWater Ocean model from Proland
- 03 - NervLand: Equirectangular projection updated in WGSL
January
- 18 - NervLand: Precomputed Atmospheric Scattering Unit tests
- 05 - Python project: Face tracking in video
2023
October
September
- 21 - NervLand DevLog #31: Adding support to display the DamagedHelmet PBR model
- 16 - NervLand DevLog #30: Initial study and design setup for Proland ElevationProducer
- 06 - NervLand DevLog #29: Introducing Proland core elements
August
- 10 - NervLand DevLog #28: Textured PBR workflow
- 07 - NervLand DevLog #27: PBR Image based lighting
- 03 - NervLand DevLog #26: Physically Based Rendering (PBR) initial implementation
- 03 - NervLand DevLog #25: Introducing support for IMGUI
July
- 29 - ThumbGen: New elements design and SVG generators
- 28 - ThumbGen: Introducing drawsvg support
- 26 - NervLand DevLog #24: Extending support of text rendering
- 24 - ThumbGen: Adding support for background removal
- 22 - NervLand DevLog #23: Adding support for text rendering
- 19 - HomeCtrl: Re-designing app interface
- 14 - HomeCtrl: Considering compression with Brotli
- 13 - Working on WASM HomeCtrl implementation
- 10 - Trying to re-implement HomeCtrl android app with kivy
March
February
- 21 - NervLand: A simple camera implementation
- 21 - Quick journey with ffmpeg: improving audio stream with loudnorm
January
2022
December
November
- 26 - NervLand: LLVM JIT - Back to basics
- 16 - NervLand: Introducing support for push constants
- 11 - NervLand: Support to resize the window
- 09 - NervLand: Vertex buffers, bindings and attributes
- 04 - NervLand: Adding support of Vulkan Memory Allocator
- 04 - NervLuna: Continuing with VulkanApp restoring
October
September
August
July
- 22 - NervLand: Refreshing memory
- 10 - Arbitrage: Setting up arb monitoring on Aurora ?
- 06 - DeFi: Automating some claims
- 02 - NVP Framework: more cleanup and collecting transactions high level data
June
- 28 - NVP Framework clean up and consolidation
- 19 - Venturing into alternate blockchains: CELO network
- 15 - Crypto: adding support for ganache-cli
- 11 - Crypto: investigations around token pair checking system
- 02 - Crypto: Initial ArbitrageManager implementation
May
- 29 - Crypto: Collecting tokens and pairs from DEX
- 24 - Crypto: Computing EVM blockchain gas price statistics
- 22 - Crypto: Restoring automatic Linear Finance claims
- 20 - Solana study case: Withdrawing LPs from SunnyAG protocol
- 19 - NervProj: Finding & adding monitored coins
- 18 - Cryptoview: Restoring the charts panel
- 17 - Cryptoview: Restoring coins overview
- 14 - Quick project: Adding support for swimmingpool pump activation schedule [nodejs]
- 13 - Quick project: twitter api [python]
- 12 - Quick project: image processing tool [python]
- 10 - Quick project: filtering out corrupted gifs [python]
- 10 - NervProj: Restoring my crypto coins monitoring project
- 03 - NervProj: support for custom python env in scripts
- 02 - Fast Noise generation in python with FastNoise2
April
- 29 - Quick project: generating multiwords passwords - part 2 [python]
- 27 - NervProj: support for dedicated python env
- 25 - Quick project: translating text [python]
- 25 - Quick project: generating multiwords passwords [python]
- 23 - Quick project: Images overview generation [python]
- 22 - Quick project: File deduplication [python]
February
2021
June
- 23 - NervLuna: Adding support for custom class functions
- 14 - CryptoView: automatic charts update
- 12 - Pruning entries from SQlite database
- 07 - NervLuna: A first practical usage case - Part 2
- 04 - NervLuna: A first practical usage case - Part 1
2020
August
July
- 28 - NervLuna: Adding more input folders for nvCore bindings
- 13 - Building the new NervTech logo
- 09 - NervDraw: Building a RaphaëlJS rendering web app
- 07 - NervCode: Initial Virtual Keyboard display
- 01 - HomeCtrl: a touch of security
June
- 30 - Controlling our entrance gate from android app
- 23 - Building the basic FunctionObject
- 19 - NervLuna: generating bindings for nvCore - second run
- 18 - NervLuna: Handling C++ operators
- 17 - NervLuna: Fixing generated file names
- 15 - Generating bindings for the nvCore module
- 12 - NervCode: an innovating coding environment
- 10 - Support for const and static fields in NervLuna
- 09 - Adding support for fields inheritance in NervLuna
- 01 - Introducing NervLuna: the automatic C++/Lua binding generator
April
- 25 - JIT Compiler with LLVM - Part 5 - Bitcode, PCH, exceptions handling, module linking and more...
- 18 - JIT Compiler with LLVM - Part 4 - CRT dependency
- 16 - JIT Compiler with LLVM - Part 3 - Fixing the ModulePassManager crash
- 14 - JIT C++ compiler with LLVM - Part 2
- 10 - Dynamic C++ compilation with LLVM & clang
December
- 30 - Compilation ICU 65.1
2019
March
- 15 - Construction d'un cadre de lit
- 10 - Introduction to Deep Q-Networks
- 09 - Model-based policy networks
- 09 - Multi-actions vanilla policy Gradient
- 08 - Full policy Gradient agent for Reinforcement Learning
- 07 - Simple Policy gradient Training on armed bandit
- 05 - QNetwork learning
- 05 - Probabilistic QTable learning
- 04 - Simple QTable learning
February
January
- 12 - Using tensorflow queue system with CIFAR dataset
- 04 - SpinLock implementation in C++
- 03 - CIFAR-10 convolution network with batch normalization
- 02 - Recovering deleted GIT branch
- 01 - MNIST convolution network
2018
December
- 30 - MNIST Multilayer Perceptron network
- 30 - Simple MNIST Logistic regression
- 29 - Tensorflow setup - Second trial
- 28 - Upgrading Nvidia Drivers on Ubuntu
- 27 - Tensorflow install adventures
- 27 - String IDs in C++
2017
November
September
- 25 - Building Boost libraries for Android platform
- 24 - Cross-compile native mingw compilers for windows
- 21 - Setup Ragnarok map on ARK server
- 18 - Building Mingw64 compiler from sources on Linux
- 13 - Cross compiling C++ libraries for Android with CMake
- 08 - Crypto mining on solar panels
- 03 - Mon premier post