@axby

18 Followers
134 Following
40 Posts
I like writing Rust, C/C++, and Lua for web pages thanks to #webassembly #wasm. Check out my simple Lua/Rust games in a browser/more project (AlexGames), and my LaTeX equation display scientific calculator in a browser/Android (AlexCalc). Currently living in Halifax, NS, Canada.
Websitehttps://alexbarry.net
Githubhttps://github.com/alexbarry
LocationHalifax, NS, Canada

https://www.nature.com/articles/s41598-025-10551-8

Using CRISPR to regraft millions-of-years-gone genes back into a human liver, recreating an enzyme that can relieve gout and kidney disease.

Just past all the greed and hatred and shortsighted selfishness, just behind the horrors, there is an age of miracles ahead of us, within reach.

Genomic insertion of ancestral uricase into human liver cells to determine metabolic consequences of pseudogenization - Scientific Reports

The biological role of urate (uric acid) during primate evolution has been unclear ever since it was discovered over 100 years ago that humans have unusually high levels of the small molecule compared to most other mammals. Humans (including all apes) are uncharacteristically susceptible to the build-up of urate because we no longer have a functional uricase enzyme capable of oxidizing this highly insoluble molecule. We have now utilized CRISPR technology to insert functional ancestral uricase into the genome of human liver cells to address recent metabolic hypotheses that our ancestral primates inactivated uricase as a mechanism to increase triglyceride production in response to fructose and/or starvation. Uricase expression is confirmed in both hepatocyte monolayer and spheroid tissue cultures, and its expression reduces intracellular urate levels. The presence of uricase is also shown to prevent an increase in triglyceride production upon cellular uptake of fructose in both culture conditions. Our results make progress that further describes a potential advantageous biological role of urate during primate evolution.

Nature

@protonprivacy Proton Mail isn't working for me, the web and iOS apps say "Servers not reachable" or "Internal Server Error".

Proton Drive seems to work fine, though.

A new beta for Fractal, message pinning in Element X, and c++ bindings for vodozemac. That and more happened This Week In Matrix!

https://matrix.org/blog/2024/09/27/this-week-in-matrix-2024-09-27/

This Week in Matrix 2024-09-27

Matrix, the open protocol for secure decentralised communications

Thanks all for the boosts/favourites. Here's a link to the source, along with more information and a list of games: https://github.com/alexbarry/AlexGames#readme

Feedback welcomed/needed, I don't have any telemetry so I have no idea what people like/dislike.

Also on #fdroid , though note the Android app is just an offline web version in a WebView, and an experimental Android native version (with no multiplayer / saved state at the moment): https://f-droid.org/packages/net.alexbarry.alexgames/

GitHub - alexbarry/AlexGames: Simple Lua/Rust games available on web and more

Simple Lua/Rust games available on web and more. Contribute to alexbarry/AlexGames development by creating an account on GitHub.

GitHub

@pluralistic I was wondering if you’d like my open source collection of simple mobile games, my attempt at resisting enshittification in an especially enshittified space: https://alexbarry.github.io/AlexGames

Games are written in Lua or Rust, and I have support for web, Android and cross platform PC (wxWidgets). The goal is to be able to send a link to a friend and play together with no accounts or other BS. (Or play solo). Dockerfile provided for easy self hosting, in case I end up enshittifying.

AlexGames

Collection of simple Lua and Rust games that can be played in your browser. Includes solitaire, word games, chess, go, checkers. Supports local or websocket multiplayer.

AlexGames, giochi semplici anche in multiplayer - Le Alternative -

AlexGames è una raccolta di giochi semplici da poter fare sia da soli che in multiplayer. Ci sono scacchi, backgammon e moltissimi altri!

Le Alternative
Added #rust #rustlang support for my simple #webassembly #wasm web games project: https://alexbarry.github.io/AlexGames . Reversi and "gem match" where you swap gems to make lines of three or more. Also added an #android app on #fdroid https://f-droid.org/packages/net.alexbarry.alexgames/ . Some existing #lua games include solitaire, minesweeper, chess, go, checkers, and backgammon.
AlexGames

Collection of simple Lua and Rust games that can be played in your browser. Includes solitaire, word games, chess, go, checkers. Supports local or websocket multiplayer.

Simple open source Lua games in a browser: https://alexbarry.github.io/AlexGames
#lualang #wasm #webassembly #webdev #gamedev #webgame

Some of the games: solitaire, minesweeper, chess, go, checkers, backgammon, "word mastermind"

* supports multiplayer via #websocket
* English dictionary for word puzzle games
* share game state via URL
* upload arbitrary games as a zip of Lua files
* automatic undo/redo and history browsing built in (requiring only a few API calls in each game)

AlexGames

Collection of simple Lua and Rust games that can be played in your browser. Includes solitaire, word games, chess, go, checkers. Supports local or websocket multiplayer.

AlexGames: simple Lua games in a browser with multiplayer support, self hosting friendly.

https://lemmy.ca/post/18821047

AlexGames: simple Lua games in a browser with multiplayer support, self hosting friendly. - Lemmy.ca

TL;DR: try my Lua web games here, see github for self-hosting instructions: https://alexbarry.github.io/AlexGames [https://alexbarry.github.io/AlexGames] Hi all, here’s a hobby project I’ve been working on: I wrote a bunch of simple Lua games, compiled the Lua interpreter to web assembly, and defined a simple API to draw on a canvas and handle input. It all builds to static HTML/JS/WASM, except a few hundred lines of python for a websocket server for multiplayer. I recently added some dockerfiles so I think it should be easy to self host. Here is the web version on github pages: https://alexbarry.github.io/AlexGames/ [https://alexbarry.github.io/AlexGames/] , and the source on github [https://github.com/alexbarry/AlexGames] (self-hosting instructions in the README). I’ll list some of the games: * local/network multiplayer: chess, go, checkers, backgammon, gomoku * single player or network multiplayer: minesweeper * single player only: solitaire, “word mastermind”[1], “endless runner”, “fluid mix”, “spider swing”, “thrust” [1]: it may not technically be multiplayer, but my partner and I enjoy picking our own hidden word and sharing the puzzle state as a URL or just passing a phone to each other. Part of my motivation is to avoid ads on mobile games, and to be able to play different multiplayer web games with friends without having to get them to make an account and all that (just share the generated URL, it contains a multiplayer session ID). I also like the idea of having my own private web games server, and not having to be reliant on some service that might eventually get enshittified. I figure that if I can throw together a similar game in a few hundred lines of Lua, then no one should have to deal with full screen ads or pay ~$10 to play them. Especially since most mobile games that I like are simple and I only play them for a few minutes at a time, maybe only a few times per week. Self hosting isn’t necessary to try it out, but without SSL it should just be a simple one-line command to host the HTTP and websocket server with docker compose. For SSL support it is a few more steps, I added steps to the README: one command to build the static HTML (so you can copy it to your web hosting server, which should already take care of SSL), and another to host the websocket server, which can have your SSL certs passed as parameters. But you don’t strictly need the websocket server, it should just fail to connect after a few seconds and then you can play the games without network multiplayer. You can even use my websocket server and your own static HTML, just add &ws_server=wss://alexbarry.net:55433 as a URL parameter to your own URL. I haven’t self hosted much on my public server, so I’d love to hear feedback on how to better handle SSL certs. Ideally you could just choose to not use SSL for your websocket server, but firefox at least prevents you from connecting to a websocket server without SSL if you’re using SSL to visit the page itself on the same server. (On a local network without SSL it’s fine, though) Some features that I’m proud of: * the network multiplayer works pretty well, I’m pleased with websockets (previously I was hoping to get WebRTC working but I didn’t have much luck). On the wxWidgets and Android prototypes I had a normal socket server working too, but I’ve focused on the web version since it’s good enough * an English dictionary for word puzzle games. (aside: loading ~220k English words as javascript strings and a javascript array took like 12 MB of browser memory or more, but I got it down to ~6 MB by moving the dictionary to C managed memory) * state sharing via URL: for most games I serialize the state and then you can export it as a base 64 string in a URL. This is useful to keep playing on a different device, send a puzzle that you liked to a friend, or for “word mastermind”, to choose your own word and get your friend to guess it. * built in autosave, undo/redo, and browsing previous saved states. I used the same code to render state previews that I wrote to render the games for normal play, so all a game has to do is implement state serialization, implement a few APIs to get that state, and call “save_state” whenever the player makes a useful move. Then games can simply call a few lines to add an “undo” and “redo” button, and those can call a one line function to fetch the previous or next state. (I’d like to add a full history tree at some point, but for now if you undo many times and make a new move, you lose the moves that you un-did (“undo-ed”?)) * playing arbitrary games as zips of Lua files. While the self hosting community might not need this much (since they can just add their own games to the source and rebuild), I figured many people might be interested in writing a game without having to build and host my project. So I added support for unzipping bundles of Lua source files and storing them in the built in emscripten filesystem in the browser. I added an example game and an API reference, see the “Options” menu and the “Upload Game Bundle” section. Let me know what you think! I’d love to hear feedback, or get new game contributions or bug fixes / features.

My hobby project from a few years ago: https://alexbarry.github.io/AlexCalc/

A scientific calculator with LaTeX equation display, supporting variables, units, complex numbers. Runs locally in your browser with #webassembly. I wrote the core code in #cpp #cplusplus and compiled it to #wasm for the web application, and native Android code for the #android version (https://play.google.com/store/apps/details?id=net.alexbarry.calc_android). Try “3 + 4j”, “5 angle 30”, or “100 km / (1 hr + 30 minutes) to mph”.

AlexCalc

Scientific calculator with LaTeX equation display, variables, units, complex numbers.