home.social

#personalprojects — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #personalprojects, aggregated by home.social.

fetched live
  1. RE: bloor.tw/@bloor/11651326474545

    I favorited this a while back but now it resurfaced so I need to boost it because it is telling a story about my life.

    #DIY #PersonalProjects #RollYourOwn

  2. RE: bloor.tw/@bloor/11651326474545

    I favorited this a while back but now it resurfaced so I need to boost it because it is telling a story about my life.

    #DIY #PersonalProjects #RollYourOwn

  3. Update no one asked for:

    I just learned about Firefly3, a budget app that can be self hosted. I've added it to my homelab set up.

    codeberg.org/keithnator3000/ho

    Feedback on what to host and make myset up more secure and pro is always welcome. It is always a good day to learn!

    #Homelab #Selfhosted #Budget #Firefly #Firefly3 #PersonalProjects

  4. Update no one asked for:

    I just learned about Firefly3, a budget app that can be self hosted. I've added it to my homelab set up.

    codeberg.org/keithnator3000/ho

    Feedback on what to host and make myset up more secure and pro is always welcome. It is always a good day to learn!

    #Homelab #Selfhosted #Budget #Firefly #Firefly3 #PersonalProjects

  5. life doesn't get fuller just because time passes. it gets fuller through memories.

    that's why i built an ABC tracker for 2026. 26 letters, 26 experiences, all mine. solo wine bar night counts as much as a festival. the point is experiencing new things

    owlex.de/en/posts/2026-03-27-m

    #WebDev #PersonalProjects

  6. Extracted the memory card icon today and displayed it in a terminal. :blobcat_smilehappyeyes:

    #emulator #emulators #PS1 #personalprojects #software

  7. Extracted the memory card icon today and displayed it in a terminal. :blobcat_smilehappyeyes:

    #emulator #emulators #PS1 #personalprojects #software

  8. Eleventy is super fun. Thanks, @jgarber, for the suggestion! In just a couple of hours this morning (while also switching over our wifi network and setting up a laptop for a friend), I've got all my posts imported, tags working, slugs for all the old underscore posts so I don't need redirects, and a bunch of cleanup done.

    Another weekend and I might be able to actually switch this thing!! #weekendHacking #personalProjects #blogging #hashtagOverload #eleventy #openSource

  9. Eleventy is super fun. Thanks, @jgarber, for the suggestion! In just a couple of hours this morning (while also switching over our wifi network and setting up a laptop for a friend), I've got all my posts imported, tags working, slugs for all the old underscore posts so I don't need redirects, and a bunch of cleanup done.

    Another weekend and I might be able to actually switch this thing!! #weekendHacking #personalProjects #blogging #hashtagOverload #eleventy #openSource

  10. I'm now running 60 automated fediverse accounts, packaged in an award-winning project that once got mentioned in the Rolling Stone magazine.

    "...offering up everything from a constantly-updated view of the weather at the South Pole to one that posts excerpts from the City of New York's archives of civic data..."

    Go check them out!

    bots.stefanbohacek.com

    #CreativeCoding #PersonalProjects

  11. I'm now running 60 automated fediverse accounts, packaged in an award-winning project that once got mentioned in the Rolling Stone magazine.

    "...offering up everything from a constantly-updated view of the weather at the South Pole to one that posts excerpts from the City of New York's archives of civic data..."

    Go check them out!

    bots.stefanbohacek.com

    #CreativeCoding #PersonalProjects

  12. Really happy how this portion of my casual game project is coming along! I've implemented track segments that can be combined into complete tracks, and cars that can follow them.

    There's currently jank due to discontinuities in the track and no interpolation between rotation angles for the cars, but for being the more vector math heavy part of the project it's looking good enough for now.

    Now to combine the grid and the track!

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  13. Really happy how this portion of my casual game project is coming along! I've implemented track segments that can be combined into complete tracks, and cars that can follow them.

    There's currently jank due to discontinuities in the track and no interpolation between rotation angles for the cars, but for being the more vector math heavy part of the project it's looking good enough for now.

    Now to combine the grid and the track!

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  14. Using a day sick in bed to work on my game. Starting to work on the car racing portion of the game, which will be the framing device to tie together plays of the grid.

    If you've played pocket card jockey you'll get it, it's kinda hard to explain why and that game barely tries.

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  15. Using a day sick in bed to work on my game. Starting to work on the car racing portion of the game, which will be the framing device to tie together plays of the grid.

    If you've played pocket card jockey you'll get it, it's kinda hard to explain why and that game barely tries.

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  16. Working on configurable board generation to create easier and harder boards for different game states. I'm also thinking of ways to adjust the "friendliness" of the row the grid refills from. This way I'll be able to adjust how the game plays at different difficulty levels through a custom resource.

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  17. Working on configurable board generation to create easier and harder boards for different game states. I'm also thinking of ways to adjust the "friendliness" of the row the grid refills from. This way I'll be able to adjust how the game plays at different difficulty levels through a custom resource.

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  18. Been doing some refactoring, but now I've also added "goal tokens" which will be scored when they reach the bottom of the grid. For now they just do a janky little animation when they reach the bottom.

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  19. Been doing some refactoring, but now I've also added "goal tokens" which will be scored when they reach the bottom of the grid. For now they just do a janky little animation when they reach the bottom.

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  20. Added animation to block position updates with Tweeners. The tween only takes a duration as an argument, so for now I'm multiplying the duration by the vertical distance to be traveled to make things fall at the same rate.

    This doesn't work when I apply an easing function though, so that remains on the figure-out-later list

    In the background I'm also working on generating boards that aren't just uniformly random.

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  21. Added animation to block position updates with Tweeners. The tween only takes a duration as an argument, so for now I'm multiplying the duration by the vertical distance to be traveled to make things fall at the same rate.

    This doesn't work when I apply an easing function though, so that remains on the figure-out-later list

    In the background I'm also working on generating boards that aren't just uniformly random.

    #Godot
    #GodotEngine
    #Gamedev
    #CasualGames
    #PersonalProjects
    #WIP

  22. Implemented loading a new row of tokens from a reserve area below the grid. This revealed a bug where I was compacting empty columns horizontally, but was filling the empty spaces with columns which all referenced the same array. Now each empty column is its own chunk of memory.

    Continuing to think about different levers for scaling the difficulty without slanting the odds too far in the player's favor

    #Godot #GodotEngine #Gamedev #CasualGames #PersonalProjects #WIP

  23. Implemented loading a new row of tokens from a reserve area below the grid. This revealed a bug where I was compacting empty columns horizontally, but was filling the empty spaces with columns which all referenced the same array. Now each empty column is its own chunk of memory.

    Continuing to think about different levers for scaling the difficulty without slanting the odds too far in the player's favor

    #Godot #GodotEngine #Gamedev #CasualGames #PersonalProjects #WIP

  24. Another day's work on my casual puzzle game and groups can be clicked to remove them, and the grid updates vertically and horizontally.

    Next on the docket is animating the tokens between grid updates.

    #Godot #GodotEngine #Gamedev #CasualGames #PersonalProjects #WIP

  25. Another day's work on my casual puzzle game and groups can be clicked to remove them, and the grid updates vertically and horizontally.

    Next on the docket is animating the tokens between grid updates.

    #Godot #GodotEngine #Gamedev #CasualGames #PersonalProjects #WIP

  26. From seeing Uma Musume: Pretty Derby getting popular, to it making me want to replay Pocket Card Jockey, to getting addicted for a week, to coming up with ideas to make my own Pocket Card Jockey-like.

    Fighting to implement systems as quickly as possible before getting into the weeds of visuals. Got a breadth-first traversal of the grid to find contiguous islands.

    #Godot #GodotEngine #Gamedev #UmaMusume #PocketCardJockey #CasualGames #PersonalProjects #WIP

  27. From seeing Uma Musume: Pretty Derby getting popular, to it making me want to replay Pocket Card Jockey, to getting addicted for a week, to coming up with ideas to make my own Pocket Card Jockey-like.

    Fighting to implement systems as quickly as possible before getting into the weeds of visuals. Got a breadth-first traversal of the grid to find contiguous islands.

    #Godot #GodotEngine #Gamedev #UmaMusume #PocketCardJockey #CasualGames #PersonalProjects #WIP

  28. Turning NASA Wake-up Calls into data


    by @beet_keeper

    For a while back then I was into space flight again. Scientists, science communicators, and engineers were all excited for a new era of rocket launches and the potential unification of the human race as we look towards the future.

    During that time I discovered Colin Fries’ work in the NASA History Division to document all NASA “Wake-up calls”. A wake-up call is simply a piece of music used to wake astronauts on missions, a different piece of music, daily, for the duration of the flight.

    Take, for example, the last Space Shuttle mission (Space Transportation System) STS-135; it was in flight for 13 days, and the wake-up call on day one was Coldplay’s Viva la Vida, while on day 13 it was Kate Smith singing God Bless America.

    As a huge music buff who has the radio or music television on 18 hours a day, I really wanted to delve into this further. While Colin’s work is great, it’s just a PDF file (@wtfpdf). A PDF is not an ideal file format for querying data and gleaning new insights. So, while I wanted to explore it, I first decided to turn it into a true dataset. The result was a set of resources, a website, a JSON, a CSV, and an SQLite database which are each more functional and more maintainable over time.

    Lets take a look at the results and nasawakeupcalls.github.io below!

    #ApacheTika #Code #Coding #DataWrangling #Datasette #DatasetteLite #DH #DigitalHumanities #glam #harkive #NASA #NASAWakeUpCall #NASAWakeUpCalls #OpenData #PersonalProjects #Science #Space #SpaceHistory #Twitter #WakeUpCall

  29. #makers, #coders of the #fediverse, how do you escape the trap of "not doing the thing?"

    I spend my whole day at work with ideas for one of my projects popping into my head that I'm excited to implement, but then I get home and play a video game and watch Youtube until I go to bed. Why is it so hard to get started?

    Any tips and tricks for making the on-ramp back to where you left off as smooth as possible?

    #PersonalProjects #Motivation #Procrastination

  30. #makers, #coders of the #fediverse, how do you escape the trap of "not doing the thing?"

    I spend my whole day at work with ideas for one of my projects popping into my head that I'm excited to implement, but then I get home and play a video game and watch Youtube until I go to bed. Why is it so hard to get started?

    Any tips and tricks for making the on-ramp back to where you left off as smooth as possible?

    #PersonalProjects #Motivation #Procrastination

  31. I'm finally writing a #blog post, after not posting anything since November. It's not the post I was planning on writing, but instead it's about how I'm trying to get myself back on track after life got in the way for a few months.

    While I was in it, I really didn't think I'd ever be able to get back to the projects I had to put on hold, but now I see the light at the end of the tunnel. Excited to be back!

    #motivation #writing #personalProjects #projects

  32. I'm finally writing a #blog post, after not posting anything since November. It's not the post I was planning on writing, but instead it's about how I'm trying to get myself back on track after life got in the way for a few months.

    While I was in it, I really didn't think I'd ever be able to get back to the projects I had to put on hold, but now I see the light at the end of the tunnel. Excited to be back!

    #motivation #writing #personalProjects #projects

  33. Async Bottom-Up Javascript State Management

    positive-intentions.com/blog/a

    This investigation comes from my work on a #P2P #ChatApp. I found it tricky in a #FunctionalProgramming approach to handle #Async #Messages from peers needing the latest #State values. The challenge? How #JavaScript scopes variables in #Callbacks.

    I wanted to explore a solution out of curiosity to see if it could work. I'm not trying to push "yet another #StateManagement library." This is about my #LearningProcess for use in #PersonalProjects.

    #Programming #WebDev #Code #SoftwareDevelopment #OpenSource #PeerToPeer

  34. Async Bottom-Up Javascript State Management

    positive-intentions.com/blog/a

    This investigation comes from my work on a #P2P #ChatApp. I found it tricky in a #FunctionalProgramming approach to handle #Async #Messages from peers needing the latest #State values. The challenge? How #JavaScript scopes variables in #Callbacks.

    I wanted to explore a solution out of curiosity to see if it could work. I'm not trying to push "yet another #StateManagement library." This is about my #LearningProcess for use in #PersonalProjects.

    #Programming #WebDev #Code #SoftwareDevelopment #OpenSource #PeerToPeer

  35. ThoughtStream.me finally has a "forgot my password" flow!
    Something I probably should put in earlier, but ah well.

    #WebDev #PersonalProjects #Code

  36. ThoughtStream.me finally has a "forgot my password" flow!
    Something I probably should put in earlier, but ah well.

    #WebDev #PersonalProjects #Code

  37. "Encryption at Rest" for JavaScript Projects

    Following a previous post (infosec.exchange/@xoron/113446), which can be summarized as: I'm tackling bottom-up state management with an extra twist: integrating encryption at rest!

    I created some updates to the WIP pull-request. The behavior is as follows.

    - The user is prompted for a password if one isn't provided programmatically.
    - This will allow for developers to create a custom password prompts in their application. The default fallback is to use a JavaScript prompt().
    - It also seems possible to enable something like "fingerprint/face encryption" for some devices using the webauthn api. (This works, but the functionality is a bit flaky and needs to be fixed before rolling out.)
    - Using AES-GCM with 1000000 iterations of PBKDF2 to derive the key from the password.
    - The iterations can be increased in exchange for slower performance. It isn't currently configurable, but it might be in the future.
    - The salt and AAD need to be deterministic and so to simplify user input, the salt as AAD are derived as the sha256 hash of the password. (Is this a good idea?)

    The latest version of the code can be seen in the PR: github.com/positive-intentions

    I'm keen to get feedback on the approach and the implementation before i merge it into the main branch.

    #JavaScript #Encryption #IndexedDB #WebDevelopment #CryptoAPI #FrontendDev #ReactHooks #StateManagement #WebSecurity #OpenSource #PersonalProjects

  38. "Encryption at Rest" for JavaScript Projects

    Following a previous post (infosec.exchange/@xoron/113446), which can be summarized as: I'm tackling state management with an extra twist: integrating encryption at rest!

    I created some updates to the WIP pull-request. The behavior is as follows.

    - The user is prompted for a password if one isn't provided programmatically.
    - This will allow for developers to create a custom password prompts in their application. The default fallback is to use a JavaScript prompt().
    - It also seems possible to enable something like "fingerprint/face encryption" for some devices using the webauthn api. (This works, but the functionality is a bit flaky and needs to be fixed before rolling out.)
    - Using AES-GCM with 1000000 iterations of PBKDF2 to derive the key from the password.
    - The iterations can be increased in exchange for slower performance. It isn't currently configurable, but it might be in the future.
    - The salt and AAD need to be deterministic and so to simplify user input, the salt as AAD are derived as the sha256 hash of the password. (Is this a good idea?)

    The latest version of the code can be seen in the PR: github.com/positive-intentions

    I'm keen to get feedback on the approach and the implementation before i merge it into the main branch.

    #JavaScript #Encryption #IndexedDB #WebDevelopment #CryptoAPI #FrontendDev #ReactHooks #StateManagement #WebSecurity #OpenSource #PersonalProjects

  39. "Encryption at Rest" for JavaScript Projects

    I'm developing a JavaScript UI framework for personal projects, and I'm tackling state management with an extra twist: integrating encryption at rest!

    Inspired by this React Hook: Async State Management (positive-intentions.com/blog/a), I’m extending it to support encrypted persistent data. Here's how:

    ✨ The Approach:

    Using IndexedDB for storage.

    Data is encrypted before saving and decrypted when loading using the Browser Cryptography API.

    Event listeners will also be encrypted/decrypted to avoid issues like browser extensions snooping on events.

    The password (should never be stored) is entered by the user at runtime to decrypt the data. (Currently hardcoded for now!)

    The salt will be stored unencrypted in IndexedDB to generate the key.

    🔗 Proof of Concept:
    You can try it out here: GitHub PR (github.com/positive-intentions). Clone or run it in Codespaces and let me know what you think!

    ❓ Looking for Feedback:
    Have I missed anything? Are there better ways to make this storage secure?

    Let's make secure web UIs a reality together! 🔒

    #JavaScript #Encryption #IndexedDB #WebDevelopment #CryptoAPI #FrontendDev #ReactHooks #StateManagement #WebSecurity #OpenSource #PersonalProjects

  40. "Encryption at Rest" for JavaScript Projects

    I'm developing a JavaScript UI framework for personal projects, and I'm tackling state management with an extra twist: integrating encryption at rest!

    Inspired by this React Hook: Async State Management (positive-intentions.com/blog/a), I’m extending it to support encrypted persistent data. Here's how:

    ✨ The Approach:

    Using IndexedDB for storage.

    Data is encrypted before saving and decrypted when loading using the Browser Cryptography API.

    Event listeners will also be encrypted/decrypted to avoid issues like browser extensions snooping on events.

    The password (should never be stored) is entered by the user at runtime to decrypt the data. (Currently hardcoded for now!)

    The salt will be stored unencrypted in IndexedDB to generate the key.

    🔗 Proof of Concept:
    You can try it out here: GitHub PR (github.com/positive-intentions). Clone or run it in Codespaces and let me know what you think!

    ❓ Looking for Feedback:
    Have I missed anything? Are there better ways to make this storage secure?

    Let's make secure web UIs a reality together! 🔒

    #JavaScript #Encryption #IndexedDB #WebDevelopment #CryptoAPI #FrontendDev #ReactHooks #StateManagement #WebSecurity #OpenSource #PersonalProjects

  41. Notes for June 24-30

    I spent most of my free time this week mostly talking to people, since I would like to have a bunch of things sorted out before Summer sets in (the season itself appears somewhat indecisive since it’s(...)

    #3dprinting #ai #gaming #homeautomation #notes #personalprojects #work

    taoofmac.com/space/notes/2024/

  42. I ran a character creation test with 2 people last night and both made characters they liked in under 20mins. That's a pretty good sign.

    Today I made a few adjustments to how I was presenting the rules based on their feedback, and I made a page on statuses.

    Next, I have some more ritual ideas and a variety of combat stuff to finish writing.

    #personalproject #personalprojects

  43. I ran a character creation test with 2 people last night and both made characters they liked in under 20mins. That's a pretty good sign.

    Today I made a few adjustments to how I was presenting the rules based on their feedback, and I made a page on statuses.

    Next, I have some more ritual ideas and a variety of combat stuff to finish writing.

    #personalproject #personalprojects

  44. Taking a personal project detour to work on a quick webapp which I hope will help with my ability to get long-running idle tasks like doing laundry done. The idea is a way to generate QR codes to put up near areas where these tasks occur that will point to a page that has timers for each step in the process.

    Basically, when I put the laundry in I'll scan the QR code and hit start, and I'll be notified when the washer is done, and again after the dryer is done

    #webdev #adhd #PersonalProjects

  45. Watched the original season of Bee and Puppycat after learning that the show on #netflix is basically the first season compressed into 3 episodes plus the second season.

    That show made me want to make art... What shows give other people the itch to be creative?

    The other thing that really puts me in the mood to create is the book "The Night Circus" by Erin Morgenstern

    So many ideas, so little time and motivation

    #BeeAndPuppycat #Animation #Art #Creativity #PersonalProjects #Projects #books