An open API service indexing awesome lists of open source software.

https://github.com/zdimension/zdimension


https://github.com/zdimension/zdimension

Last synced: about 1 month ago
JSON representation

Awesome Lists containing this project

README

          

# Hey there!

[LinkedIn](https://www.linkedin.com/in/tom-niget/)  [Twitter](https://twitter.com/zdimension_)
[Blog](https://zdimension.fr)

I'm Tom Niget (pronounced /ni.ʒɛ/), I'm 22, living in France and currently:
- working on [compilers](https://typon.nexedi.com/) and cloud infrastructure at [Rapid.Space](https://www.rapid.space/) after getting an engineering degree in Computer Science at the [Sophia Antipolis engineering school (Polytech Nice)](https://polytech.univ-cotedazur.fr/)
- teaching CPU design, Linux, system administration, parallel programming, and some other things at my alma mater [Polytech Nice](https://polytech.univ-cotedazur.fr/) and at [IUT Nice Côte d'Azur](https://iut.univ-cotedazur.fr/)

I've wandered in many areas of the world of computers; from [budgeting software](https://github.com/zdimension/CrediNET) to [disk management utilities](https://github.com/zdimension/SharpBoot) in my younger years, from [real-time image processing](https://github.com/zdimension/tpepeip1) to [logic programming](https://github.com/zdimension/si4-s8-options), from [type theory](https://github.com/zdimension/hm-infer-scheme) to [digital circuits](https://github.com/zdimension/logisim-pong). I've written [programming languages](https://github.com/HassiumTeam/Hassium), [a Python IDE](https://github.com/TuringApp/Turing), a [game](https://github.com/zdimension/wordle-ce) for TI-84 calculators, [low-level drivers](https://github.com/CosmosOS/Cosmos) for a managed kernel, and run [Rust code on logic circuits](https://twitter.com/zdimension_/status/1554953047847337985).

I won first place in a [European CTF competition](https://esisar.grenoble-inp.fr/en/about/csaw-results) with some friends while in high school, my work has been featured in [a CS teachers journal](https://www.epi.asso.fr/revue/lu/l1806n.htm) (in French) and [a Kotaku article](https://www.kotaku.com.au/2018/02/decompiled-tomb-raider-source-code-reveals-loads-of-vulgar-commentary/), and I've [front-paged /r/programming](https://www.reddit.com/r/programming/comments/t0pzxb/tired_of_safe_programming_embed_c_directly_in/) with a [cursed Rust crate](https://github.com/zdimension/embed-c).

From time to time, I [write blog posts](https://zdimension.fr/) about things that I find interesting.

![GitHub Stats](https://github-readme-stats.vercel.app/api?username=zdimension&count_private=true&show_icons=true&include_all_commits=true&theme=nord)
![Top Langs](https://github-readme-stats.vercel.app/api/top-langs/?username=zdimension&layout=compact&hide=lua&theme=nord)

# Best friends

C#     Git     JetBrains     Python     Rust

# Education

- [2020; 2023] Engineering Degree in Computer Science, [Polytech Nice](https://polytech.univ-cotedazur.fr/)
- [2018; 2020] Preparatory class for Engineering Schools, [Polytech Annecy](https://www.polytech.univ-smb.fr/)

# Projects

## Author

### Current

- \[2022; now) C Racket Rust Python [parm_extended](https://github.com/zdimension/parm_extended) - ARM CPU implemented from scratch in logic circuits on [Digital](https://github.com/hneemann/Digital), [blog post here](https://zdimension.fr/crabs-all-the-way-down/)
- home-made optimizing assembler and linker
- freestanding optimizing C compiler
- Scheme interpreter and REPL
- VT100 emulator
- MIDI player
- basic HTML rendering engine
- async-based cooperative tasking
- \[2021; now)  Rust OpenGL Neo4j Python [graphrust](https://github.com/zdimension/graphrust) - GPU-accelerated large graph (>1M nodes) viewer for a web scraping project
- with (not yet released) Neo4j-based Facebook scraper (full DB is >180M nodes)

### Past

-       2025       Python [ADE Scraper](https://github.com/zdimension/ade-scraper) - resource scraper for the ADE planning system
-       2024       Python [elecanalysis](https://github.com/zdimension/elecanalysis) - Automatic electricity cost calculator and comparator
- \[2023; 2024] Python C++ [Typon](https://typon.nexedi.com/) - Work-in-progress research Python-to-C++ compiler with a focus on concurrency and interoperability
-       2023       Python [PlexDLWeb](https://github.com/zdimension/plexdlweb) - Web UI for downloading media from Plex without the Plex Pass
-       2023       Python [openhab-config-gen](https://github.com/zdimension/openhab-config-gen) - Set of tools that generates openHAB configuration files, InfluxDB alerts and ping checks from a list of Modbus-over-TCP equipments – research project
-       2023       Rust [physics_rust](https://github.com/zdimension/physics_rust) - [Algodoo](http://www.algodoo.com/) clone using the [Bevy](https://github.com/bevyengine/bevy) engine/ECS system and the [Rapier](https://github.com/dimforge/rapier) physics engine (more or less another attempt at doing what [phytestcs](https://github.com/zdimension/phytestcs) was supposed to be, but this time I'm willing to admit that I'm not smart enough to write a proper physics engine)
-       2022       Java Python [security-iot-notre-projet](https://github.com/zdimension/security-iot-notre-projet) - JavaCard applet for storing an RSA keypair and signing stuff with it, with a Python client and REPL
-       2022       Rust [macro-forth](https://github.com/zdimension/macro-forth) - Forth implemented in a Rust declarative macro using tt-munchers, [blog post here](https://zdimension.fr/stack-machines-and-where-to-find-them/)
-       2022       Rust [usbrawmap](https://github.com/zdimension/usbrawmap) - USB scancode mapper / driver for old nonstandard keyboards
-       2022       Rust [hm-infer-rs](https://github.com/zdimension/hm-infer-rs) - Hindley-Milner type inference for Scheme, in Rust; with REPL
-       2022       C# [hm-infer-cs](https://github.com/zdimension/hm-infer-cs) - Hindley-Milner type inference for Scheme, in C#
-       2022       Racket [hm-infer-scheme](https://github.com/zdimension/hm-infer-scheme) - Hindley-Milner type inference for Scheme, in Scheme
- \[2021; 2023] Rust [inline-vbs](https://github.com/zdimension/inline-vbs) - Embed VBScript (and JScript, Ruby, Perl, ...) code seamlessly inside Rust using the Active Scripting COM APIs, [blog post here](https://zdimension.fr/how-i-learned-to-stop-worrying-and-love-macros/)
-       2022       Rust [embed-c](https://github.com/zdimension/embed-c) - Embed C code at compile time inside Rust using C2Rust, [blog post here](https://zdimension.fr/how-i-learned-to-stop-worrying-and-love-macros/)
-       2022       C [WordleCE](https://github.com/zdimension/wordle-ce) - Wordle implementation on the TI CE calculator family
-       2021       Prolog [si4-s8-options](https://github.com/zdimension/si4-s8-options) - school courses choice solver
-       2021       C++ [red_blue_graph_solver](https://github.com/thomasarmel/red_blue_graph_solver_1) - algorithmic analysis of the "red-blue" graph problem related to connectivity inference
-       2021       Logisim circuit [logisim-connectfour](https://github.com/zdimension/logisim-connectfour) - Connect Four implemented as a logic circuit
-       2021       Logisim circuit [logisim-pong](https://github.com/zdimension/logisim-pong) - Pong implemented as a logic circuit
-       2021       C# Windows Forms [FastMark](https://github.com/zdimension/FastMark) - fast, efficient watermarking tool
-       2021       Java [soyouz](https://github.com/zdimension/pns-si3-qgl-2021-soyouz) - school project / boat and sailor control code for a pirate battleship game + 2D/3D game simulator
-       2021       Angular CSS TypeScript [ps6](https://github.com/zdimension/2020-2021-ps6-polytechnicois) - school project / quiz web-app with an emphasis on accessibility and usability
-       2020       Python [logic](https://github.com/zdimension/logic) - symbolic first-order predicate logic expression manipulation tools
-       2020       Java [takenoko](https://github.com/zdimension/takenoko) - school project / "Takenoko" board game, AI players
-       2020       C++ [sudoku](https://github.com/zdimension/sudoku) - sudoku solver using a backtracking algorithm
- \[2020; 2021] C# SFML [phytestcs](https://github.com/zdimension/phytestcs) - simple, scriptable physics engine
- \[2019; 2020] PHP Laravel JavaScript  MySQL [polytheque](https://github.com/zdimension/polytheque) - blog / article system mainly used for hosting CS lessons, tutorials and learning resources for my classmates
- \[2018; 2019] Python OpenCV [tpepeip1](https://github.com/zdimension/tpepeip1) - school research project / measuring heart rate from a live webcam video stream, using OpenCV
- \[2018; 2020] C [unidos](https://github.com/zdimension/unidos) - userland MS-DOS emulator based on Unicorn engine, forked from [original](https://github.com/aquynh/unidos)
- \[2018; 2019] Python Qt [Turing](https://github.com/TuringApp/Turing) - pseucodode / Python IDE made for teaching and beginners, featured on [EPI](https://www.epi.asso.fr/revue/lu/l1806n.htm) (French CS/IT teachers association), available from [Ubuntu](https://packages.ubuntu.com/source/focal/turing) and [Debian](https://packages.debian.org/buster/turing) package repositories
- \[2017; 2021] C C++ [TOMB5](https://github.com/TOMB5/TOMB5) - *Tomb Raider: Chronicles* disassembly and decompilation (x86, MIPS) project, featured on [Kotaku](https://www.kotaku.com.au/2018/02/decompiled-tomb-raider-source-code-reveals-loads-of-vulgar-commentary/)
-       2016       C# Windows Forms [GestionFichiersEleves](https://github.com/zdimension/GestionFichiersEleves) - small utility developed for my high school; automatically computes what textbooks a student needs based on what they're majoring in
- \[2016; 2021] C# Windows Forms [USBFastBoot](https://github.com/zdimension/USBFastBoot) - start a VM on an ISO file or USB drive from the context menu
- \[2015; 2017] C# [Hassium](https://github.com/HassiumTeam/Hassium) - object-oriented scripting language
- \[2015; 2021] C# Windows Forms [SharpBoot](https://github.com/zdimension/SharpBoot) - multiboot CD / USB creation tool, similar to *XBoot* or *YUMI*, featured on [CNET](https://download.cnet.com/SharpBoot/3000-18513_4-76449825.html)
- \[2014; 2015] C# [IMPression](https://github.com/zdimension/IMPression) - math and numeric algorithms library with a parser and WPF user interface including 2D/3D plotting features
-       2014       C# Windows Forms [SharpRenamer](https://github.com/zdimension/SharpRenamer) - basic batch file renaming tool
-       2014       C# Windows Forms [SharpSweeper](https://github.com/zdimension/SharpSweeper) - minesweeper clone
-       2014       C# [RegistryFS](https://github.com/zdimension/RegistryFS) - the Windows Registry as a Dokan userspace FS
- \[2014; 2015] C# Windows Forms [CrediNET](https://github.com/zdimension/CrediNET) - personal budgeting app
-       2013       C# [Split# Network Toolkit](https://github.com/zdimension/splitsharpnettoolkit) - prototype of a web server for a prototype of a programming language
-       2010       VB.NET Windows Forms [ZBiblio](https://github.com/zdimension/zbiblio) - software for managing collections of movies
-       2010       VB.NET Windows Forms [mdi-notepad](https://github.com/zdimension/mdi-notepad) - simple MDI notepad

## Contributor

### Current

- \[2020; now)  Java [Logisim-evolution](https://github.com/logisim-evolution/logisim-evolution) (maintainer) - digital logic circuit design and simulation tool
- helped with huge refactors and modernization of legacy code
- wrote the Buzzer component and its sound synthesis module, supporting fully customizable different waveform types
- ported the Telnet component from [Digital](https://github.com/hneemann/Digital/)

### Past

-       2024       TypeScript [Immich](https://github.com/immich-app/immich) - self-hosted photo management solution (Google Photos alternative)
-       2023       Python [Themerr-plex](https://github.com/LizardByte/Themerr-plex) - plugin for Plex Media Server that adds theme songs to movies using ThemerrDB
-       2022       Rust [cargo-breaking](https://github.com/iomentum/cargo-breaking) - cargo command for automatically detecting breaking changes between versions of a project
-       2022       Rust [restest](https://github.com/iomentum/restest) - declarative REST API testing utilities
- \[2017; 2022] [TRWiki / TRosettaStone3](https://trwiki.earvillage.net/) (maintainer for various community projects) - Wiki / knowledge base about the classic Tomb Raider games series from 1996-2000
- converted the old source document to Wiki format
- catalogued hundreds of items from the games
- helped document various file formats
- \[2014; 2015] C# [Cosmos](https://github.com/CosmosOS/Cosmos) - C# operating system construction kit
- wrote a PS/2 keyboard driver with key layout handling, some ACPI tools
-       2013       C# [Ocular](https://github.com/zdimension/Ocular) - WYSIWYG HTML editor, similar to Adobe Dreamweaver

![GitHub Profile Views Counter](https://komarev.com/ghpvc/?username=zdimension)