C++ Scripting

Open-source C++ projects categorized as Scripting

Top 23 C++ Scripting Projects

  • V8

    The official mirror of the V8 Git repository

    Project mention: Boehm Garbage Collector | news.ycombinator.com | 2024-01-21

    https://chromium.googlesource.com/v8/v8.git/+/HEAD/include/c...

    Due to the nature of web engine workloads migrating objects to being GC'd isn't performance negative (as most people would expect). With care it can often end up performance positive.

    There are a few tricks that Oilpan can apply. Concurrent tracing helps a lot (e.g. instead of incrementing/decrementing refs, you can trace on a different thread), in addition when destructing objects, the destructors typically become trivial meaning the object can just be dropped from memory. Both these free up main thread time. (The tradeoff with concurrent tracing is that you need atomic barriers when assigning pointers which needs care).

    This is on top of the safey improvements you gain from being GC'd vs. smart pointers, etc.

    One major tradeoff that UAF bugs become more difficult to fix, as you are just accessing objects which "should" be dead.

  • AutoHotkey

    AutoHotkey - macro-creation and automation-oriented scripting utility for Windows.

    Project mention: I need help! I believe I have someone able to see my screen, record my keys, alter windows sys files, alter reg keys, phish webpages, inject custom script-code into genuine windows apps, load webpages as installers, fake uninstall, fake shutdown, tons more from one file. Please tell me anything! | /r/antivirus | 2023-06-19

    DownloadAHK() { global wb wb.Stop() file := A_Temp "\ahk-install.exe" switchPage("downloading") Sleep 10 if !Download("https://autohotkey.com/download/ahk-install.exe", file, "DownloadAHK_Progress") { MsgBox 0x2010,, Download failed. switchPage("start") return } Run "%file%" /exec waitclose %A_ScriptHwnd% /exec downloaded "%file%" ExitApp } Exec_WaitClose(hwnd) { DetectHiddenWindows On WinWaitClose ahk_id %hwnd% } Exec_Downloaded(file) { ; global SilentMode := true DetermineVersion() QuickInstall()

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • CopyQ

    Clipboard manager with advanced features

    Project mention: Very specific macro clipboard software | /r/software | 2023-08-30

    Try CopyQ https://github.com/hluk/CopyQ

  • sol2

    Sol3 (sol2 v3.0) - a C++ <-> Lua API wrapper with advanced features and top notch performance - is here, and it's great! Documentation:

    Project mention: Any tips for how to make moddable games? | /r/gamedev | 2023-05-20

    As someone said, make the game data-driven is a good first step but I will say, also have some sort of way to add additional game logic. For C++ games, lua is really easy to embed the interpreter in your C++ binary, read in the files from a directory (like /mods) with the C++ filesystem api new in C++17, and it's very easy to use SoL to write an API for lua specific to your game. Many games use lua in this way and it's probably the most common mod path setup.

  • luau

    A fast, small, safe, gradually typed embeddable scripting language derived from Lua

    Project mention: Building a baseline JIT for Lua automatically | news.ycombinator.com | 2024-01-11

    As far as I can tell, they aren't.

    http://lua-users.org/wiki/SandBoxes

    There is a lot of information there, but it doesn't handle resource exhaustion, execution time limits or give any guarantees. It does indicate that it's possible, and has a decent example of the most restrictive setup, which is a good start. But I would for example compare it with Luau's SECURITY.md.

    From https://github.com/luau-lang/luau/blob/master/SECURITY.md:

    > Luau provides a safe sandbox that scripts can not escape from, short of vulnerabilities in custom C functions exposed by the host. This includes the virtual machine and builtin libraries. Notably this currently does not include the work-in-progress native code generation facilities.

    > Any source code can not result in memory safety errors or crashes during its compilation or execution. Violations of memory safety are considered vulnerabilities.

    > Note that Luau does not provide termination guarantees - some code may exhaust CPU or RAM resources on the system during compilation or execution.

    So, even luau will have trouble with untrusted code, but it specifies exactly what happens and so on. I think that's fair enough.

  • ChaiScript

    Embedded Scripting Language Designed for C++

  • REFramework

    Scripting platform, modding framework and VR support for all RE Engine games

    Project mention: I just ordered a quest 2 what game should i experience first (free im broke now that i bought it but i plan on getting resident evil 4 remake) | /r/VRGaming | 2023-12-09

    Yeah the VR mode is unfortunately exclusive to PlayStation. There is a VR mod for older RE games, but it doesn’t support RE4.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • nbind

    :sparkles: Magical headers that make your C++ library accessible from JavaScript :rocket:

  • mtasa-blue

    Multi Theft Auto is a game engine that incorporates an extendable network play element into a proprietary commercial single-player game.

    Project mention: Open source but but commercial use is paid | /r/opensource | 2023-05-15

    If the code is compiled, you'd have to pull a few more tricks. But to be fair that is also an issue even if your code is not source available - people can (and do) decompile closed-source programs and hack on them. My personal favourite of that is https://multitheftauto.com/ where the community reverse engineered GTA San Andreas to add multiplayer

  • v8pp

    Bind C++ functions and classes into V8 JavaScript engine

  • RE-UE4SS

    Injectable LUA scripting system, SDK generator, live property editor and other dumping utilities for UE4/5 games

    Project mention: Super Duper "Requires Duper Disk" | /r/GroundedGame | 2023-10-18

    Orax QoL Mod - https://www.nexusmods.com/grounded/mods/107 - Used for stack size, build-from-chest range, pallet capacity, mutation slots, day/night length Minimap - https://www.nexusmods.com/grounded/mods/96 - adds floating minimap to upper right corner (Minimap also required replacement DLL: https://github.com/UE4SS-RE/RE-UE4SS/releases/tag/v2.5.2) 250 Stack Size - https://www.nexusmods.com/grounded/mods/73 - obsolete, overruled by QoL Mod, but not removed from files Skip Intro - https://www.nexusmods.com/grounded/mods/111 - skip to main menu faster on launch

  • open-builder

    Open "Minecraft-like" game with multiplayer support and Lua scripting support for the both client and server

  • Ark

    ArkScript is a small, fast, functional and scripting language for C++ projects

    Project mention: Dealing with documentation | /r/ProgrammingLanguages | 2023-04-23

    This results in two websites: - the documentation of the language on the "main" website, https://arkscript-lang.dev ; - the technical documentation (+ modules) on doxygen: https://arkscript-lang.dev/impl/

  • RaZ

    Modern & multiplatform 3D game engine in C++17

  • sfall

    sfall - Engine modifications for Fallout 2

    Project mention: CRPG that will run on very low end laptop, some intel hd? | /r/gamingsuggestions | 2023-05-14

    Fallout 2 - Install Sfall or the open source re-implementation for a better experience. Install the Restoration patch if you want additional content.

  • DotX64Dbg

    x64Dbg plugin that enables C# plugins with hot-loading support and scripting.

  • luacxx

    C++11 API for creating Lua bindings

  • Cleny

    Cleny is An Interpreted Coding Language Used To Facilate UI Structuring And Styling For CLI Based Projects

  • shpp

    Call c++ functions from a shell with any arguments of any types parsed automatically

  • wrenpp

    Minimal, zero dependency C++ binding generator for the Wren programming language

  • nelson

    The Nelson Programming Language (by nelson-lang)

  • scrift

    New generation shell for everyone.

  • xflrpy

    xflrpy is a python enabled version of xflr5 for scripting and design optimization.

    Project mention: Xflrpy – a Python enabled version of XFLR5 for scripting and design optimization | news.ycombinator.com | 2023-08-05
  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2024-01-21.

C++ Scripting related posts

Index

What are some of the best open-source Scripting projects in C++? This list will help you:

Project Stars
1 V8 22,506
2 AutoHotkey 8,208
3 CopyQ 7,721
4 sol2 3,860
5 luau 3,539
6 ChaiScript 2,873
7 REFramework 2,453
8 nbind 1,963
9 mtasa-blue 1,259
10 v8pp 865
11 RE-UE4SS 832
12 open-builder 689
13 Ark 537
14 RaZ 502
15 sfall 291
16 DotX64Dbg 186
17 luacxx 155
18 Cleny 109
19 shpp 96
20 wrenpp 96
21 nelson 85
22 scrift 48
23 xflrpy 42
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com