collection manger search made by AI

55 views
Skip to first unread message

Jo mo

unread,
Apr 17, 2025, 12:23:52 PMApr 17
to FPGAwars: explorando el lado libre

Hello guys,

I just made a search function for the collection manager! (see joined videoclip)

Warning: i made it by "vibe coding" (with an IA) , it took me 4 hours of copy-pasting errors in the GPT4.1. So i think it is more accurate to call it brute force coding ;-)

Remark: GPT4.1 in windsurf (is fully free until the 21 of April).

i join all the collectionmanager2 folder but the only modified files modified files are

collectionManager.html
style.css
collectionManager.js
event.js

If you want to try this, just save a copy of your original "collectionManager2" in a safe place and replace the folder with the one in the zip file.


Remark 2:  I am very disappointed with this IA subject! at first glance the tools look really interesting but at the same time some of the biggest experts are saying that IA will destroy soon humanity!(And i found those thesis, quite logical...)
So what to do, should we start using (it like we use hand calculators to help us doing faster mathematics). Or should we avoid using it, or thinking about it hopping that the other humans will also stop using it and big AI companies will stop this performance race and save humanity doing so...??

For now, i decided to used, time to time, the "free version" of AI, because i want to stay aware of what this tools a really able to do!


Big hug to all of you!
icestudio_2025-04-17_18.14.18.webm

charli va

unread,
Apr 17, 2025, 1:01:18 PMApr 17
to fpga-wars-explora...@googlegroups.com

Hi Joaquim! An interesting and useful feature Joaquim! and I'm not one to judge whether AI is good or bad. These are strange times, but I'll give you my point of view.

On the one hand, I'm clear that AI is already here in the market, and not wanting to see and accept it is like not wanting to see the elephant in the room.

Banks and engineering firms are using it. The other day, I even read from their CEO that Google already generates 26% of its code with AI.

Some compare it to the arrival of the first calculators or compilers (for me, it has nothing to do with it, but I understand the comparison, and in some cases, it might make sense). I check it from time to time to see the state of the art and know how the panorama is and I have used it for some routine tasks to test it  (cleaning csv formats or things of this type that are tedious to do by hand with relatively good results). I also use it from time to time as a search engine, when I cannot find specific things in the usual search engines (in this sense they are quite agile although the information bias is significant).

For me, it doesn't make sense for development, but these are personal issues, and I understand that in many circumstances these tools can help people, depending on their situation, learn or seemingly speed up development (although my theory, based on the little I've tested, is that it takes longer to debug what you want to generate than if you did it from scratch).

In any case, and without getting lost in ramblings, I'll tell you about generating functional code for open source software projects because this is a different topic and one that's currently in the spotlight of almost everyone.

I have to update our license sooner rather than later. I'm going to include a DCO. You can see the example I sent you in the image, but the original belongs to the Penpot project (it's the first one I found to give you an example, but it's being added to almost all large projects). Look for the DCO section: https://github.com/penpot/penpot/blob/develop/CONTRIBUTING.md

Captura de pantalla 2025-04-17 a las 18.29.43.png

Basically, the issue is this. Leaving aside the question of whether it's more or less interesting to use AI for programming or whether it's going to destroy the world, take away our jobs, and so on, what's happening right now is that apparent AI is nothing more than a rough database interpolation, which in many cases leads to giving you entire code fragments that may belong to proprietary projects or with licenses incompatible with those of the project it's being incorporated into, in addition to potentially violating any intellectual property rights.

This could lead to serious legal problems; it remains to be seen what will happen. Governments are clearly willing to give generative AI companies a free hand, as is being seen with the creative field (image, video, etc.), but I don't know what could happen legally over time. In any case, large projects with resources and teams of lawyers and others are covering their backs for whatever might come. So, as they say in Spain, "WHEN YOU SEE YOUR NEIGHBOR'S BEARD SHAVING, SOAK YOURS." I've been putting this off for a while, and I don't think we can drag it out any longer!

As I mentioned, I'm not the judge in this regard. What I would appreciate is if you indicated if you've used AI in a PR, so I can review those PRs more carefully. The tests I've run leave a lot to be desired, despite all the marketing they want to tell us, aside from the legal issues.

I've been trying for years to eliminate the technological dependence on pointless third-party libraries, and I don't want to get into a dependency on vibe-bugs that are difficult to fix.

In any case, as I said, the project belongs to the community, and we should all decide together what to do with these kinds of things.

Here's this meme I saw the other day and it made me smile:

GorFGiKWAAA-E3K.jpeg

Nice day!




--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.
Para ver este debate, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/5162b063-5fca-4578-9d84-33ab603584e2n%40googlegroups.com.

charli va

unread,
Apr 17, 2025, 1:11:37 PMApr 17
to fpga-wars-explora...@googlegroups.com

But come on... the market probably knows where to go even if I think otherwise...

Captura de pantalla 2025-04-17 a las 19.10.15.png

Jo mo

unread,
Apr 17, 2025, 9:29:14 PMApr 17
to FPGAwars: explorando el lado libre
Hi Charli,

Thanks for your views on the subject!

Regarding AI, like a lot of people, i believe that within a few months, it will become evident that AI can produce results better than humans in almost all intellectual fields. 
This means those of us with jobs might need to be a bit concerned.

Our society needs to quickly invent a smarter way of functioning. "Intellectual" work in exchange for money will likely decrease significantly in the coming years.

In fact, soon the most "useful human skills" will be physical labor (using hands, etc.). Making and maintaining reliable robots ( to replace humans) is complex.
eg:  The first "pizaiolo robot" restaurants of the worls is now closed (lasted two years, probably not making enough money to cover the costs). This being said this "PAZZI" concept is still alive, they opened a restaurant in Zurich.

Those AI progress, will force us to rethink the all think (in terms of human career's and human safety), and I hope we can find peaceful solutions.

Regarding licenses, I also think they will become obsolete. I understand that until now, people needed to be paid for their development or creative work. 
However, it never seemed right to me that big pharmaceutical companies can make a lot of money by protecting "vital knowledge" at the expense of people's health.

We need to find a way to ensure that people who open-source their work can live decently. 
Additionally, those who haven't had the opportunity for good education should also be able to meet their basic needs, regardless of where they live.

Perhaps with AI, human knowledge and creative possibilities will be more evenly shared.
    -Those who have studied more might become lazy using AI and lose competencies.
    -Those with less education will be able to create things they couldn't imagine before.
But both categories may become more efficient, they might target bigger goals then before AI times.

For the "search function" example I posted, I did it as an exercise. It's not ready for a pull request. The code is even commented in French ;-),
I will just try using it a bit on my icestudio installation which is very often a "custom one" :-).

I think we just need to wait a bit longer. Society will tell us what to do with AI code in the open-source community. In the best case, it will bring more people to contribute to open-source projects.
And if AI tools are good enough, they will introduce fewer bugs than humans. In the worst case, the code quality might suffer.
I hope that, in the end, the code will become more universal and AI will be able to integrate our individual coding ideas and techniques into existing code.

One problem is that today, having AI find solutions for us can feel a bit humiliating. But this could change if we decide that the idea behind implementing a function is more important than the implementation itself. 
It's all about deciding individually where we want to focus our efforts.

For example, actually (without AI) using about the same amount of effort, you can:
- write a simple program in assembly code.
- or create something like ICEstudio using Node.js.
And only a crazy person would try coding ICEstudio in assembly!

Often, when I write an administrative letter, I create a rough draft because I can't write beautiful sentences. But all the content is there, so I have no problem giving it to an AI to polish. 
I don't need to be proud of writing a nice letter. that's my personal choice ;-)

I know this goes a bit against the proverb "It's the journey that matters, not the destination." But today, we're all afflicted by the same disease. We always want more. This could change if we understand that we need to slow down, use fewer screens, reconnect with nature, etc. It's not easy to change how endorphins are released in our brains or fight against these addictions.

Sorry guys for this long message full of "not definitive" thinkings /statements! :-)

Have a good Easter-weekend

Obijuan

unread,
Apr 19, 2025, 5:44:31 PMApr 19
to FPGAwars: explorando el lado libre
Amazing Joaquim! Thanks a lot! 
All the improvements related to the collection manager are very very very welcome. For me that is the most important part in Icestudio
This feature is really useful. Thanks

Best regards, Juan


Jo mo

unread,
Apr 20, 2025, 4:56:55 AMApr 20
to fpga-wars-explora...@googlegroups.com
Gracias Juan,

I will try to have a Closer look at thaht code generated with AI. After all it should be quite simple! A search/filter function in a database is not rocket science ;-)
If i manage to clean that code on thaht plugin i will coment here. And if we all agree, i will launch a PR.

In the meantime, i wish you all to enjoy some nice easter foodl😉

Big hug

--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.

charli va

unread,
Apr 20, 2025, 5:23:34 AMApr 20
to fpga-wars-explora...@googlegroups.com
Hi Joaquim, please don't spend more time in this until you read my next post in this thread.

Have a nice day my friends!

charli va

unread,
Apr 20, 2025, 12:56:52 PMApr 20
to fpga-wars-explora...@googlegroups.com
Hello Joaquim! First of all, I don’t want you to misinterpret this email, please. You know how much I value you as a friend and consider you one of the greatest assets of this community. So, I ask you to take everything I’m about to write with all the affection in the world, which is how I’ve written it.

As I mentioned before, I’m not the one to judge whether something should or shouldn’t be done with AI. If you’d like, and if people are willing to dive in, we could open a parallel philosophical debate about it (I’m serious, even if it’s off-topic, I think, like with other important things in life, we should engage more in debate and discuss constructively—something our society needs more than bread to eat).

The reason for this email is that I’ve reviewed what you sent (I always make an effort to value all contributions, rest assured I’ll never undervalue anything).

The reason I commented in the previous email is that I didn’t want you to spend time cleaning up code that isn’t right, and I’ll try to explain why. I hope this email can serve as a mini-guide or at least help us approach these things correctly from the start, so you can keep improving the collection manager, already on the right track, whether you use ChatGPT or do it yourself.

I won’t get into whether to use AI tools or not. You could have used them, and the code could have been acceptable for a PR. As I’ve said, I’m not going to be the judge there because, as I’ve often pointed out, I’m not the owner of the project. However, I am the person most involved with the code and making significant internal changes, so I feel responsible for trying to steer these efforts so they truly add value and don’t detract in the short term. The great danger here is that it’s “easy” to create things that seem to work but are like putting a stick in the spokes of a bike wheel.

As everything is picking up great momentum, I want everyone who gets excited about contributing to do so on the right path, so we don’t fall back into patching temporary solutions that end up staying forever or creating incomprehensible things that are hard to follow or have a steep learning curve.

What you sent, functionally, does what it’s supposed to, but internally it doesn’t respect how Icestudio works. Basically, it’s a “brute force” solution, a patch (and, as I said, I won’t get into whether it’s better or worse programmed).

Icestudio, though it may not seem like it, is more complex than it appears, and one of the things that’s taking me a lot of time is restructuring the entire core without starting from scratch. Little by little, I’ve been reorganizing the internals (and there’s still more to do), all while ensuring Icestudio keeps working and even improves with each change. This internal structure isn’t just about moving code around; thousands of new lines have been written to create an internal integration protocol and a dedicated working API.

ChatGPT clearly didn’t understand anything and built a solution as it would for a simple webpage script. I’ll try to explain how it should have been done (and in fact, I’m sending it resolved with a video so you can see it in action). At the end of the email, i'm putting a link to download the relevant "well made code" (for some reason gmail don't permit me attach to the email).

One of the tasks I’m prioritizing is documenting Icestudio’s internal plugin system, as it’s the natural way for the system to grow. Everything is plugins, and they communicate with each other through a system of messages and events, after the next wip i'll have two focus, the "collection store" and documentation to motivate others to contribute.

The collection manager isn’t an independent element; it relies on other Icestudio plugins and services to get its data. Therefore, we must see the entire system’s operation as a whole—not out of whim, but because if it’s not done right, functionalities that depend on everything following a standard could break.

What do I mean by “nothing breaks”? For example, the collection tree relies on another component that maintains a database of blocks scanned from the hard drive and keeps a virtual tree of it (to know if a node is open or closed, if a block is in use, etc.). Other plugins could interfere with this at some point (e.g., imagine you or someone else creates a component that, when you open a folder, shows the block icons at the bottom so you can easily drag them… I just thought of this on the spot, it might not make sense, but the idea I want to convey is that there’s a communication and interaction protocol between the different pieces. If we break this organized structure, things might stop working, or in the future, someone who expects things to work a certain way might crash or struggle to debug, thinking it’s their bug when the issue is that a specific service was altered in a non-standard way).

There’s another danger in this regard: ChatGPT, for example, has added a ton of try-catch blocks (a pattern I want to eliminate as much as possible because a poorly managed try-catch is like having an illness you don’t want to acknowledge).

Since ChatGPT naturally didn’t understand how the system works as a whole, it’s also not clear to me that it properly maintained the event flow of the communication bus between plugins (I haven’t analyzed every line, but I got the sense it didn’t maintain the correct flow).

In a complex system, this is very delicate. It’s one thing to use these systems for a specific functionality and another to use them, as in this case, in “vibe coding” mode, like “take all this and give me this other functionality…”

So, to make this constructive, as I mentioned earlier, I’ve developed the same functionality, and I’ll try to explain the proper steps. I’m attaching the folders to replace. I haven’t done the PR because that’s your job, Joaquim ;) In fact, as I mention later, I’d love for you to keep developing it if you’re up for it (you have my full support and help in the process).

Before the explanation, I’d insist that whenever you want to tackle an improvement, we discuss it on GitHub, like we did with what I proposed to @lmcapacho. I think it’s been a super constructive experience, and my idea is to keep doing that. I haven’t opened more issues because no one else has raised their hand, but if someone wants to work on something, just say so, and we’ll start opening tasks. There’s zero pressure—Luis Miguel is moving at his own pace, he’s taken on that task and will take as long as he needs. If it becomes urgent at some point, we’ll lend a hand, or if he gets tired and doesn’t want to finish it alone, he just has to say so. I think good vibes have always prevailed, and the idea is to keep it that way.

For example, the ideal would be to open a task like the one for the code blocks we’re discussing because the collection manager has many possible improvements. If you’re excited about it, phew, that’d be awesome, and I’m willing to help and guide you until we gain traction—count on me without hesitation.

I propose, Joaquim, that if you’re motivated by this module, which is also super useful, we dive in. Open a proposal for discussion on GitHub, we’ll work on it together, and you can get started. For example, I was going to suggest that, based on my code, you get motivated to make the search show open folders. That’d be a good point to solidify your knowledge, see how to manage the tree… The search could be optimized better; I did it your way, parsing the DOM, but in the right place and propagating events correctly. However, it might be more efficient to use the database directly and render the corresponding tree (this would need to be measured; I’m not sure it’s a clear improvement, but it’d be interesting to evaluate). And there are tons of other things on my list.

Whether you use ChatGPT or not to carry out these tasks, everyone should go with what feels most comfortable. I emphasize this because I don’t want the email’s purpose to be misunderstood—I’m not criticizing you for using ChatGPT, but rather that the code isn’t implemented correctly.

Let’s get to the right solution.

First, you need to understand the plugin system minimally. There are different types of plugins:

* System plugins, which have no interface and are processes. Soon, the API will be a plugin, and other components will be able to “request,” for example, synthesizing a specific block or saving a bitstream, etc.
* Independent window plugins, like the serial terminal. A new window opens, and the plugin “lives” in its own universe, though it has a way to request things (in the next WIP, the board manager will be this type and will use Icestudio services to get boards, save them, etc.).
* Embedded window plugins, like the collection manager, which coexist within Icestudio’s graphical window. This is complex because the plugin can have its own interface, colors, etc., and must not interfere with Icestudio.

Let’s focus on the embedded plugin, which is what concerns us. Since the system is designed so anyone can create a plugin, there’s a tricky point: the plugin shouldn’t break Icestudio. And since it’s web technology, playing with CSS, etc., it’s super easy for external code to break Icestudio.

For this, in embedded windows like the collection manager, we use an artifact called shadow DOM (you can look it up if you want). If you open Icestudio’s inspector on the collection manager, you’ll see this:

shadow.png

This indicates that the entire HTML node is inside a shadow DOM, which is essentially an independent element with its own CSS events, etc. (this is the basis of web components used by frameworks like React, Vue, etc.).

Because of this, the plugin has two base CSS files: host.css and style.css. The styles that affect the plugin itself go in style.css, and if we need to add CSS that, for some reason.

The styles that will affect the plugin itself will go in style.css, and if we want to add any CSS that, for some reason, needs to be inherited by Icestudio, it will be added to host.css (the host is the node that will embed our shadow DOM). In general, host.css will always remain empty.

Then, in the case of the Collection Manager, you have the folders related to the stylesheets for the light and dark themes.

So, in general, for example, in this case, for the search input, I’ve added the only two styles I needed to style.css.

Now, the code—let’s see how this should have been integrated correctly.

All plugins have an HTML file with the plugin’s base content (it can be modified later, but so to speak, this is what will be loaded initially into the shadow DOM).

In this case, just like ChatGPT did, the search bar is added:

input.png

In my case, I didn’t add an icon like ChatGPT did, to begin with, because I don’t think it’s necessary. I’ve implemented a real-time search: as you type, starting from two characters, it filters (we’d need to check on modest hardware to see if it slows things down). In any case, you could add an icon and make it search when you hit enter or click the icon. Personally, I like real-time search for filters. If you delete the input, the filter clears. An improvement could be to add an “X” to the right of the input when searching, which, when clicked, clears it.

On the other hand, especially for embedded plugins, the ideal is to always try to use the Font Awesome icons that come included with Icestudio.

https://fontawesome.com/search?o=r&s=solid

We only have the free, open-source ones included, but there are plenty (magnifying glasses and anything else you might need). Why is this? To ensure everything done in Icestudio has a consistent aesthetic. In the new version, I’m restructuring icons and a ton of other things that right now are a bit of a mess, each from a different source.

I mention this because, in ChatGPT’s version, an icon was included directly as an SVG source. Icestudio is already quite overloaded, and although it may seem trivial, an SVG consists of several nodes and is something that’s hard to maintain in the future (color changes, aesthetic consistency with other icons, etc.).

As I said, my version doesn’t have an icon, but it could be one of the changes Joaquim makes. Instead of real-time, you could switch to a click-based search with a magnifying glass. I think this is what I mentioned we should discuss, as it’s an important component.

With this, the search bar would already appear in our Collection Manager. Now let’s give it functionality.

This case is ideal because, by doing it right, we not only add a search feature to the Collection Manager but also, in one fell swoop, any other components that might need a search function in a tree would get it automatically. Let me explain.

The correct way to proceed would have been to first create an event handler for the input in the Collection Manager. To do this, you’d add a block similar to what’s done for handling click events on the tree:

As I mentioned, Icestudio has an internal API, and I hope it keeps growing so we can create plugins very quickly. To achieve this, I’m encapsulating functionalities as they arise (I have a huge list for the API, but they’re for the future, and since they haven’t been needed yet, I haven’t invested time in them—I implement what I need as I go). Among these functionalities, Icestudio’s API manages mouse and keyboard events. The idea is that plugins, whenever possible, don’t need to touch the DOM or manipulate jQuery directly—all that kind of stuff will be handled by Icestudio’s API.

In this case, you specify the ID of the element to capture, pass the shadow DOM node (since it belongs to the plugin, and otherwise Icestudio wouldn’t be able to access it), and then provide the function that will handle the events in the plugin (Icestudio captures the events, manages them, etc., and calls the relevant user functions).

events.png

This makes it easier in the future for multiple plugins to associate with event captures on similar elements, allowing them to perform different actions independently without knowing about each other or risking blocking one another.

The management function inside the Collection Manager is super simple:

handleTree.png

Why is it so simple? Because the collection tree has its own component within Icestudio. It’s a component for creating nested trees. In this case, it’s used to display collections, but the tree could be used for anything else. Once again, the idea is to create components that can be reused in plugins easily.

For example, in the new version I’m about to release, we’ll have a board manager to edit, create, etc., boards directly from Icestudio. It uses this same component. All the work of displaying the tree, etc= etc., doesn’t need to be redone—you just load the component and link specific user functions to certain events (clicks on leaf elements, folder clicks, etc.).

The components are located in ![🎃](https://abs-0.twimg.com/emoji/v2/svg/1f383.svg "Calabaza de noche de brujas") resources/libs/Icestudio

There, little by little, all the core parts of Icestudio will be modularized. For this specific case, since we didn’t have the input event handled, I had to implement it. Now the good thing is that for any future component or plugin, we already have the input event captured (and this will keep happening with whatever we need—checkboxes, etc.). We capture input instead of, say, keyup, because input allows capturing the “paste” event.

So, just this once, we had to touch the file GUI/WaffleGUI.js inside that folder, specifically the activateEventsFromId function.

As I mentioned, for this type of input, we won’t need to touch it again, and as I said, if we keep advancing with plugins, developing new ones will become much more agile.

And as you can see in the Collection Manager’s user function, within our function, we call a function from the CollectionsTree component called filter.

We also had to implement this function, which is similar to the one ChatGPT implemented for filtering but located in the GUI/WaffleUITree.js component.

I implemented two functions: the main one, filter, which receives the text to search for, and another one you can see in the image that sets the visibility state of the containing folders.


tree.png

The filtering algorithm is ultra-simple and brute force—it could be optimized a lot, but as you can see in the video, it’s more than functional.

Now, the same applies: any other component that uses the WaffleUITree component (e.g., the board manager) will already have search functionality without needing to implement anything. In other words, from now on, if we use the tree component in a plugin and need to filter it, there’s no need to implement it because this method is generic in the component and provides this functionality.

This is the idea behind components: if we expand functionalities in plugins coherently and in an organized way, current and future plugins will have more and more resources to implement things easily and quickly.

My implementation time for this was 15-20 minutes, including the fact that I had to implement a couple of generic things I wish I’d had. If not, I probably would have delivered this functionality in about 10 minutes.

It’s clear I know the system, and I’m not trying to boast about speed (I’m slow at developing). For me, speed isn’t the important part. If I hadn’t known any of this, I probably would have spent 4 or 5 hours researching the modules, how the current system works, how to implement it, etc. But what I’m trying to convey is that if we talk things through, propose, and discuss, I can help you take the right path and learn to move faster, so Icestudio truly grows not like a Frankenstein but like a vigorous plant from its roots.

In the case of adding ChatGPT’s functional code, we gain nothing more than a search bar. We add complexity to the module, make it harder to follow, debug, and break the general flow, etc., etc., etc.

As I mentioned above, Joaquim, my intention isn’t to dismiss your effort but to help and push us to build something truly worthwhile and distinctive—something no ChatGPT will ever build. I want to move forward, a lot, but not at any cost.

I leave the PR in your hands, and if you’re up for adding several improvements (open a post on GitHub and let’s discuss—this module is super useful and interesting to build together!), you can do the PR with all of them or progressively. (The one I see as straightforward is expanding the tree node functionality so nodes appear open. I know how to do it, but give it a think if you’re up for it to get into the component’s dynamics, and if you need it, I’ll guide you.)

I’m attaching the complete Collection Manager to avoid mistakes, along with the WaffleGUI.js file, which needs to go in /resources/libs/Icestudio/GUI/, and the WaffleUITree.js file, which needs to go in /resources/libs/Icestudio/GUI/Widgets/.

Little by little, Icestudio is being renewed and rebuilt from the inside. I know we’ve been at it for many years, and sometimes it feels like we’re not moving forward, but very soon, all this effort will come together. We need to keep the discussion open about versioning, future priorities, and I need to share my roadmap with you so you can see where I’m heading and tell me what you think. There’s a lot to do, but let’s do it well and together!

I’m sorry for going on so long—this was a tough email for me to write. I hope you receive it with open arms; that’s my most sincere intention.

A big hug to everyone!

The sources are here:



filter_proposal.mp4

Jo mo

unread,
Apr 20, 2025, 8:34:06 PMApr 20
to FPGAwars: explorando el lado libre
Ola Carlos,

No problem, my friend! i don't take it badly at all! As you know i know very little about node.js and Icestudio guts. But with pleasure, i can use sometime to learn a bit!

Thank you so much for having spend your time for analyzing the AI code and then supply possible corrections and all that valuable information (which, i am sure, will be useful for more people too)

So next, i will first, go in details trough this huge amount of information you just posted, to try understanding it sufficiently. Then, when i am a bit stuck, as you suggested, i will open a GitHub issue to post were i am and get some help!

About the filtering, i also prefer your real-time solution, it is much more user friendly (the video looks great)!
for the expanding of the nodes (or auto-unfolding when filtering), i also tough about it but fear that in some cases the unfolded tree could be very big and make more difficult to find the right block (or maybe we can unfold automatically just the highest (collection) level ) (to be discussed in the future github issue ;-))!

Once again Carlos thank you so much for your tremendous amount of time on this post and i fully agree with 99 percent of the contents ;-)

Big hug and lest move on to MIGA  (Make Icestudio Great Again ;-) !

charli va

unread,
Apr 21, 2025, 9:57:17 AMApr 21
to fpga-wars-explora...@googlegroups.com
It's a pleasure, Joaquim! Thank you for pushing and proposing new things, as well as investing time in them. You're a real driving force!

If you have any questions, don't hesitate to let me know. Anything I can help with, count me in. I'm simply mentioning the GitHub thing to open a discussion with more people in the community who don't come here. But if it's more convenient or easier for you, we can talk here perfectly.

Disagreeing for less than 20% of a conversation usually makes the conversation very fruitful ;)

A big hug!


--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages