Daily Post Image from Upsplash

March: 15

Notes

Tasks

[ ] - Prepare Discord Jam R&D [ ] - Travel Jam Repo

2025

Solana Soul

  • 12:14AM

    Focus will be in two parts, the first is the generic module layout and basic modules for a demo application. Before building the main application, the demo would be like a quick precursor to the main application.

  • 01:19AM

    Okay, for this crate and future application, we would place the focus on error.rs and build it around thiserror crate. We should also look into the logging crate but that can be next, hmm.

Github Tj Action

  • 05:29PM

    Looks like the tj-action file changes was compromised and there needs to be a drop-in replacement for the action. After replacing the action, I will go through all our tokens and replace them all with new ones, i.e token and secret rotation. I do not think there was much of a security risk but it would make sense to be safe.

GA Matrix Round 1

  • 10:38PM

    Usually I been using other people’s matrixes for github actions, but I think it is time to build my own! The last time I wrote one was for the unity builds but now I am going to try it for the publishing of the crates, npm and pip packages.

    Something like this below would be nice:

    publish_crates:
    needs: ['deploy', 'alter', 'globals']
    name: Publish Crates
    strategy:
    matrix:
    package:
    - { name: 'q', condition: needs.alter.outputs.q }
    - { name: 'jedi', condition: needs.alter.outputs.jedi }
    if: matrix.package.condition == 'true'
    uses: KBVE/kbve/.github/workflows/rust-publish-crate.yml@main
    with:
    package: ${{ matrix.package.name }}
    secrets:
    CRATES_TOKEN: ${{ secrets.CRATES_TOKEN }}

    It would make sense that I save this information inside of the git notes, so more information can be found there. Okay, we had to run two jobs, one that would filter through the matrix to see what needs to be built and then the second job would be the actual publishing. This can be later updated for the pip and npm packages too.

Nx Graph

  • 08:57PM

    Nx graph has a static output that runs under :

    Terminal window
    pnpm nx graph --file=./apps/kbve/kbve.com/public/nx/index.html

    Which can be used to generate an additional nx embed, combined with the report. Report + Graph under the projects astro page would be a nice update for the site. I will make an issue ticket with that as a future update, definitely when I want to switch out of rust and do some astro or javascript.

2024

Travel

Travel Game Jam! We are thinking David Goliath or a boeing flappy bird style game, hmmm.

Bell just reminded me of the Mighty Max concept and maybe we could use that as a base concept for the game?

There are only 69 hours left in the jam, we got this!

The repo for the last mini game was under nextjs-react-fish-chip-built-request , now we could go ahead and create a new one.

Okay! The demo for the pipeline looks perfect, so time to test case this with the travelbox gamejam.

We will have to create a new react app with the vite bundler!

Run : pnpm nx g @nx/react:app react-phaser-travelbox --bundler=vite

Then we would update the ci-beta twith this code block.

# [React] -> Travel Box
- name: React Travel Box
if: needs.alter.outputs.reacttravelbox == 'true'
uses: ./.github/actions/kbve-shell
with:
flag: '-build react-phaser-travelbox'
create_pull_request: true
github_token: ${{ secrets.GITHUB_TOKEN }}
pull_request_title: 'react-travelbox-built-request'
pull_request_body: 'React TravelBox Built Request'

Now the game build itself, mapping out the menu will be easy and we can at least start from there. The configurations are next on the journy!

The first was the NX Project JSON for building out the application, which we can extend the project.json to help us handle it.

"build": {
"executor": "@nx/vite:build",
"outputs": ["{options.outputPath}"],
"defaultConfiguration": "production",
"options": {
"outputPath": "apps/kbve.com/public/embed/js/travelbox",
"emptyOutDir": true
},
"configurations": {
"development": {
"mode": "development"
},
"production": {
"mode": "production"
}
}
}

This way the game that gets built can go directly into the travelbox embed and we can work from there.

After setting up the build command within the nx project, ./kbve.sh -nx react-phaser-travelbox:build, we can add our rollup configurtions too.

rollupOptions: {
external: ['fs', 'path', 'process'],
output: {
// ES Module Output
format: 'es', // ES module format
// Change the output directory structure and naming
entryFileNames: `travelbox.js`,
chunkFileNames: `[name].js`,
assetFileNames: `[name].[ext]`,
},
},

We will come back to this on a later date, probably need to adjust the configuration of the chunking, but it will get that initial file down.

Third step will be to make it so that we adjust the travelbox/index.astro to load the new travelbox build.

TravelBox Menu

Getting started on the TravelBox Menu? This will be the menu of the game, while I am trying to remember the different parts of the menu haha.

TravelBox GamePlay

The gameplay for the travelbox and the design around it will be a bit of a test casing for us.

2023