Activity

Darius Alexander Frobeen

I’m currently creating the option to create your own flavors by either uploading an audio file or creating one as well as either uploading an image or creating your own image in the app. The feature is nearly finished but still has some things I have to work on like for example the audio creation in the app this will take some time….
I also had to rewrite some code for the playback of the audio since I had written it to use different audio files for each flavor depending on the main flavor which was selected. I removed this unused code since I now only have one audio file per Flavor.
I hope nothing bad happens with the audio system because last time I changed something I had to redo the entire audio system…. It took so long (7h or so).
I’m still working on these features that’s why they are not finished on the images. Didn’t want to make one big and long devlog.

Attachment
Attachment
Attachment
1

Comments

_d3f4ult._.cracka_

Awesome

Darius Alexander Frobeen

I finished the multiplayer! The hardest part was the communication on the server and that all the changes get send to all people (except oneself). At the moment I still have some bugs in the multiplayer which I’m going to fix in the next devlog.

Now you can:

  • Create a game
  • Join a game
  • Manage Joined Players
  • Send chat message
  • Mute players
  • Set players to view only so they cant edit the dish

I am currently changing the download system to not download 100 files instead just 1 big zip file. And extract all the images from it and save them. It still doesn’t work correctly and throws an error at the moment.

0
Darius Alexander Frobeen

I’m nearly finished with the multiplayer as of now you can open a dish as a multiplayer if you are logged in your name will be used if not you will be prompted to enter a name. After that you get to see you code with which you can invite people.
People who want to join have to enter this code and will be able to join. When they join you will be prompted to allow them to enter or don’t allow them you can also mute them or set them to only view. If you let them join they are able to edit your dish with you you will see changes live and be able to chat with them in the chat (which still has some bugs). You can also manage all joined users you can:
kick them
mute them
set them to view only

This all is done using Sockets so that everything is live.
I also fixed some bugs with the border of the pixelated elements.

I sometimes found it hard to imagine how the join / create multiplayer flow works but that is finally behind me,
Something that was annoying was that I had to write 14 functions for each action that can be taken and what to do when someone else does this action.

This time there are a lot of images because there is quite a bit new stuff.

Attachment
Attachment
0
Darius Alexander Frobeen

This time the devlog is quite long because it took me round about 3h of work to get the masks to work. Since I have custom corner masks that make divs pixelated with the corners beeing a radius (in pixels) and I wanted to have the possibility of adding a border which only works if you don’t want to have a transparent background. And now I wanted to have a transparent background for the Multiplayer settings and had to crate the mask. the mask-image
is packet with 15 masks and that’s why it took soooooo long. I had to calculate where to put which mask and where I want to subtract the mask. And this took forever because the mask-composite
did not want to work how I wanted it to.

On the other hand I also finished the initial communication to the server for joining and creating the multiplayer “meeting”. I also had to fix a ton of bugs on the backend. I also added a chat function which doesnt work yet.

Overall it was quite a lot of trying out different combinations for the masks.

The code when it is compiled looks crazy (see last image)

Now It works!
FINALLY

Attachment
Attachment
Attachment
0
Darius Alexander Frobeen

I continued to fix a ton of bugs in the backend. But over time im getting used to express. By now i’ve been creating the multiplayer communication between server and client so that they don’t get out of sync. Its still a bit tough since I can’t try it yet because I haven’t finished the UI yet. That will be my next step hopefully everything works (Probably won’t). The hardest part was to get the communication to work because the client would send the packets / request to the server but the server(node.js) could’t get the body which was because I hadn’t set the Content-Type in the request. this was new because in PHP you don’t need that.
I don’t really have much to show yet. Its just the communication between client & server.

How it works:

  • User creates a “meeting” -> server creates the room in its ram. and adds the user to the room.
  • Server returns data to join room as well as a code to share and invite other users
  • the client sends a request to join a “meeting”
  • Server checks for an existsing meeting and sends the client a gameUUID and a endpointUUID thes identify the client as well as which “meeting” he currently is in.
  • Client connects to /multiplayer/live where the communication is via WebSockets (a lot faster and live) from there it gets all the changes, which flavors are “locked”(used by another user), what happens at the moment
0
Darius Alexander Frobeen

I rewrote the entire backend from PHP to Typescript (node.js though more like node.ts). It took a long time since the code in PHP was REALLY BAD and really unstructuredly written by me now the structure is a lot better and I also have type safety which is nice. The hardest part was learning how express works and how I can connect to the database. Now that works I probably still have some bugs in the backend but I will find them when I implement the new feature.
The new feature will be a “multiplayer”.
You will be able to cooperate on a dish.
This will be my first time coding a multiplayer thing . I’m excited to see how that will go…

I also created the logo for Flavor Synthesizer it’s a machine where glass tubes at the top filled with flavors are placed then they come mixed out at the bottom. What I might add are music particles for the playing of the music.

Attachment
0
Darius Alexander Frobeen

This time I fixed ONE BUG (actually more but this one was the hardest and took the longest). It was really bad the bug was somewhere in how the audio is played/resumed and so on. I thought I fixed it but I didn’t and this went one for quite some time. It took so long because there were bugs popping up everywhere. Even there where none were before. A bug that was fixed before was back just through one small change and finding that change was hard. All in all it works now with dragging between tracks and you can drag and drop flavors even when the dish is playing.
Also fixed a small bug where wen you deleted the entire name of a dish it would get replaced with “Unnamed”.

0
Darius Alexander Frobeen

I fixed the bug where when you drag a flavor between two tracks it duplicates but keeps the reference (really cursed) now it gets moved correctly! I forgot to remove the flavor from the other tracks flavor list. Just found another bug (lol) where the element bugs back to where it started when returning back to the original track

0
Darius Alexander Frobeen

I fixed a drag and drop bug (again…) where you couldn’t drag the flavors in the share / open share menu. Now it works again

Attachment
0
Darius Alexander Frobeen

I finally finished the Tutorial System. It took longer than expected. It also works on all devices and should make understanding the game a lot easier.

0
Darius Alexander Frobeen

Im currently working on the tutorial for the Game. Made a custom tutorial system.
Working on the Dish List tutorial still have some bugs but then it should.
I also fixed a bug where the corners of the pixelated divs were asymmetrical. Had to redo the entire masks and gradients.
I learned that drag and drop also works on mobile devices even though I read somewhere that it doesn’t but now the drag and drop works on all devices!

CHANGES:

  • Created Tutorial System (still in progress)
  • Bug fixes:
    • asymmetrical corners
    • fixed the drag & drop on mac os
    • Made drag & drop work on iphones / ipads (didnt know that that even works)
Attachment
Attachment
0
Darius Alexander Frobeen

Shipped this project!

Hours: 7.28
Cookies: 🍪 0
Multiplier: 10.84 cookies/hr

I developed a Java-based password manager with secure login, encrypted storage, and optional two-factor authentication.
I implemented password-derived encryption to ensure all data is protected at rest and only accessible after successful authentication.
I added TOTP-based 2FA to increase security beyond the master password.
Through this project, I learned how key derivation, file encryption, and authentication work together in practice

Darius Alexander Frobeen

Shipped this project!

Hours: 121.82
Cookies: 🍪 3585
Multiplier: 29.43 cookies/hr

I finished the first version of Flavor Synthesizer a Web Game where you create your own dishes by dragging flavors along a timeline in the end you can play them back and get your own dish. You can share these dishes with an ai generated image or via a custom flavor combination.
Overall I learned a lot about PHP and backend as well as React.

Darius Alexander Frobeen

This time I redid the entire database structure and php code since it was somewhat unstructured. I also added a restaurant where you can see the dishes other people published. I fixed a few bugs one of them was where the volumes were not saved. I also removed unused code since I want to ship it. I also made the UI/UX work on smaller devices. The main challange was finding the problems in code. Sometimes one small problem turned int a huge one. It was also really annoying to change the styles for the Smaller devices as well as touch devices since everything is different and I had to always reload the website on my phone to test it.

For the people who don’t want to read that text:
CHANGES:

  • Redid Database Structure & PHP Code
  • Added a Restaurant
  • Bug fixes:
    • The Volumes weren’t saved
  • Removing unused code / variables
  • Made the entire UI and UX better on Smaller devices

CHALLANGES:

  • It was sometimes really hard to find the problem…
  • Keeping track of what is still to do and what I already did (The devlogs helped a lot)
  • Making the UI fit for all screens was really annoying -> reload website on phone all the time
  • Debugging Bugs on an iPhone / iPad is kinda hard when the screen changes size when you want to inspect the console
0
Darius Alexander Frobeen

CHANGES:

  • Touch zooming works
  • Removed unnecessary complexity in some types
  • Touch Menus
  • Bug fixes:
    • Selected Flavors didn’t work
    • Touch adding flavor -> moving it left right made the start point drift

TODO:

  • Finish the restaurant

CHALLANGES:

  • Touch on Mobile is really hard -> to get the right scale (so that it isnt too fast or too slow)
0
Darius Alexander Frobeen
  • Created the README.md
  • Created Video for README

Still don’t really know what should be in a README file?! Just googled what should be…

0
Darius Alexander Frobeen

CHANGES:

  • Published 1-beta release finally
  • Bug fixes:
    • First render of Synth line didn’t render -> had smth. to do with React States (stale states)
    • Downloading Resources didn’t work correctly -> wrong paths

TODO:

  • Finish Touch support
  • create Readme
  • Bugs:
    • Zooming on touch not working yet
    • Think of a good use for the Box in the main menu (write a comment if you have an idea)

🎬 Video processing — check back later!

0
Darius Alexander Frobeen

CHANGES:

  • Ask before leaving when unsaved changes
  • Bug fixes:
    • Sharing -> creating new dish -> share information still there when sharing (really annoying to fix had to rewrite a lot of code)
    • Forking a dish -> sharing it -> share information not displayed in dish list
    • Selecting in Editor doesn’t work correctly / not at all on touch
    • Deleting didn’t work (Threw an error)

TODO:

  • Finish Touch support
  • Bugs:
    • Zooming on touch not working yet
    • Think of a good use for the Box in the main menu (write a comment if you have an idea)
Attachment
0
Darius Alexander Frobeen

CHANGES:

  • Add turn device notice
  • Add device not supported (too low resolution)
  • Bug fixes:
    • Can share multiple times by reopening the dish

TODO:

  • Finish Touch support
  • Bug fixes:
    • Forking a dish -> sharing it -> share information not displayed in dish list
    • Zooming on touch not working yet
    • Selecting in Editor doesn’t work correctly / not at all on touch
0
Darius Alexander Frobeen

CHANGES:

  • Added Touch support (Still working on it) (Hard…)
  • Bug fixes:
    • Resizing somethings didn’t work correctly

TODO:

  • Finish Touch support
  • Add turn device notice
  • Add device not supported (too low resolution)
  • Bug fixes:
    • Forking a dish -> sharing it -> share information not displayed in dish list
    • Zooming on touch not working yet
    • Can share multiple times by reopening the dish
Attachment
Attachment
0
Darius Alexander Frobeen

CHANGES:

  • Made it work for all screen sizes for:
    • Flavor Synth Editor
    • Share Dialog

TODO (Tomorrow):

  • Do the same for:
    • Think of a good use for the Box in the main menu (write a comment if you have an idea)
    • Bug fixes
Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
0
Darius Alexander Frobeen

CHANGES:

  • Made it work for all screen sizes for:
    • Main Menu
    • Main Flavor Selection Menu
    • Dish List (Doesn’t work correctly yet)
    • Open Shared Dish

TODO:

  • Do the same for
    • Flavor Synth Editor
    • Share Dialog
  • Think of a good use for the Box in the main menu (write a comment if you have an idea)
0
Darius Alexander Frobeen

CHANGES:

  • Changed the system of how the shared dishes are saved
  • Some bug fixes within the share system
  • Bug fixes with the title not beeing correct or setting the title of the last opened element
  • Added download button to export the dish as a file
  • Made the Public / Private Button work in the Dish List
  • Added View only Dish View

TODO:

  • Making the dishes that were shared in the dish list show the info (with correct UI)
  • Making the App work on Mobile / iPad
Attachment
Attachment
Attachment
0
Darius Alexander Frobeen
  • Changed the Share Dialog
  • Changed the Open Shared Dialog
  • Changed the backend:
    • Made it save the entire dish
    • Made it share the dish by reference (uuids) so that the dish can be changed by the owner
Attachment
Attachment
0
Darius Alexander Frobeen

Finished the Dish List (Options)
Made the name of the dish changable (forgot to mention that)

Attachment
Attachment
0
Darius Alexander Frobeen

Cleaned App.tsx as well as made the game more structured with a gameState instead of a lot of individiual states.

Attachment
0
Darius Alexander Frobeen

I made the Dish list look nicer (work).

It was hard to get the masks to work because it somehow didn’t work at some point it did…

Attachment
0
Darius Alexander Frobeen

Added a Main Menu
Todo: Add the list menu for viewing created dishes and editing shared ones
Challanges: Integrating the menu into the current structure

Attachment
0
Darius Alexander Frobeen
  • Made opening shared flavors / ai images / codes possible
  • Made sharing an url possible

It was hard to check if the uploaded ai generated image is one of the generated ones that actually are a dish. I learned how to hide data in the images

0
Darius Alexander Frobeen

Added custom confirm dialog & Created backend user management & made the share function work (can’t open them yet)

Currently working on the function to open the shared dishes

Attachment
0
Darius Alexander Frobeen

Shipped this project!

Hours: 3.07
Cookies: 🍪 20
Multiplier: 6.45 cookies/hr

I added a demo account
And fixed some bugs

Darius Alexander Frobeen

Currently working on the Share menu…
Finished (only client side):

  • Share Flavors
  • Share AI Image
  • Share Code
Attachment
0
Darius Alexander Frobeen

fix: fixed the scrolling when multiple lines where added
feat: added line controls: volume, mute, solo
currently working on: making the main controls: play, pause, stop, etc…

Attachment
0
Darius Alexander Frobeen

feat: Added new Images for each Flavor, Changed the background of the flavor list
fix: fixed some scrolling and resizing bugs
fix: Changed the View in the timeline

Attachment
0
Darius Alexander Frobeen

Added Zooming in the timeline as well as fixed some bugs, where you could go into the negative time

Attachment
0
Darius Alexander Frobeen

Started creating a Flavor List where you can drag`n drop flavors from and also preview the sounds

Attachment
0
Darius Alexander Frobeen

Trying to find good music that can be stiteched together…
It takes quite some time to find any…

Attachment
0
Darius Alexander Frobeen

Added Canvas functions like clearCanvas, fillCanvas, drawRect, fillRect, drawCircle, fillCircle, drawRoundedRect, fillRoundedRect

Attachment
0
Darius Alexander Frobeen

Bug fixes:
Saving a single image threw an exception
Removing rows works now

Attachment
3

Comments

aneezakiran07
aneezakiran07 about 2 months ago

COOL project!!! I needed this

averytoad65
averytoad65 about 2 months ago

This is a sick project! If possible, could you maybe add an outline to the screenshot selection to make it more apparent what the boundaries and position of it are? otherwise really cool tool!

Darius Alexander Frobeen
Darius Alexander Frobeen about 2 months ago

Thx! Yeah I can do that

Darius Alexander Frobeen

Shipped this project!

Hours: 7.46
Cookies: 🍪 26
Multiplier: 3.55 cookies/hr

Its a Website where you can paste a url and the program tries to find out the author, creation date and title of the article or website. It then lists it in a table where you can edit the data and export it as sources for you presentation.
It alsow warns you if the source is not trustworthy

I learned how to scrape websites in PHP.

Darius Alexander Frobeen

Finished all german sources:
Tagesschau
Zdf
Deutschlandfunk
Spiegel
Sueddeutsche
Zeit
Faz
Handelsblatt
Taz
Welt
Focus
Bild

Attachment
0
Darius Alexander Frobeen

Created Parsers for:
Deutschlandfunk
ZDF Heute
Spiegel
Süddeutsche
Zeit
Frankfurter Allgemeine Zeitung

Attachment
0
Darius Alexander Frobeen

Added Table UI
Added Formats for sources
Supported Formats:
-apa
-mla
-chicago
-harvard
-ieee
-din-iso-690

Attachment
0
Darius Alexander Frobeen

Changed chart library to JFreeChart and finished displaying transactions and when the happened.
Also display when Account was in debt (in red)

Attachment
0
Darius Alexander Frobeen

Shipped this project!

Hours: 6.9
Cookies: 🍪 168
Multiplier: 24.34 cookies/hr

I developed a Java-based password manager with secure login, encrypted storage, and optional two-factor authentication.
I implemented password-derived encryption to ensure all data is protected at rest and only accessible after successful authentication.
I added TOTP-based 2FA to increase security beyond the master password.

Through this project, I learned how key derivation, file encryption, and authentication work together in practice. I also improved my skills in secure software design, Java development, and project documentation.

Darius Alexander Frobeen

Shipped this project!

Hours: 0.69
Cookies: 🍪 5
Multiplier: 7.66 cookies/hr

I developed a web app that merges multiple WebUntis accounts into one timetable.
I learned how to work with APIs, PWAs, and push notifications, enabling real-time updates when lessons change or are canceled.

Darius Alexander Frobeen

Shipped this project!

Hours: 6.63
Cookies: 🍪 75
Multiplier: 11.33 cookies/hr

I build my own Portfolio
I learned how to work with React and Hooks

Darius Alexander Frobeen

Bux fixes:

  • Encryption was saved as bytes in Json Objects which corrupted the data so that it could no longer be loaded
Attachment
0
Darius Alexander Frobeen

Updated CV

Attachment
2

Comments

saisadwiikkatam
saisadwiikkatam about 2 months ago

I am curious to know about the inspiration behind your circle glitter effect..
On the initial page and between the pages

Darius Alexander Frobeen
Darius Alexander Frobeen about 2 months ago

I tought of a cool animation at the begining like an intro and thought it would be cool to have a transition of the particles into the logo of the website and then back into a random position and then the website fading in after it has loaded. So before the transition into the logo there would be a loading animation with the particles and then they transition. In the end it was too performance inefficient that i chose not to do it like this

Darius Alexander Frobeen

Changed the way the Images are saved and displayed (previewed) also added support for changing image format and its resolution

Attachment
0
Darius Alexander Frobeen

Added a Window for viewing recently made screenshots as well as save them, save them all, retake them, preview them, change thair name

Attachment
0
Darius Alexander Frobeen

Fixed the bug that the lessons wont be parsed correctly and the information wes not extracted correctly. After Untis changed thair APIs

Attachment
0
Darius Alexander Frobeen

Finished Language support with a button to change language

Attachment
2

Comments

Legndary26
Legndary26 2 months ago

does languege change works with dom or u hv a seprete webpage for it

Darius Alexander Frobeen

Its made with a custon React element, where you pass the languages you have as arguments (either strings or react elements)