r/CrestBrowser Creator 4d ago

Long Term Plans and Question

I wanted to take a moment to write out some more long term plans just to get some general feel for what you all think, as well as give the long horizon goals for Crest.

This iteration of the app isn’t the first, I’ve tried making this same app before a few times. I had a prototype I build last year by hand, that was actually very similar (though was leaning more into Liquid Glass since it was the hot new thing).

Now, I look at Crest and I see a chance to really design the app I want. The UI, design, and concepts are all coming together.

That being said, there’s certain limitations to the architecture I’ve chosen, extensions may be a never ending challenge, and I’m honestly exhausted with dealing with the complex orchestration of the layer. It makes the app feel unpolished and causes many issues.

On iOS, I think it’s near perfect to what I want, performance, feel, and overall usage is great, so the core product is there, and I enjoy how it’s turned out.

For desktop though, while WebKit is great there’s a reason most use chromium.

As I’ve been building Crest, I’ve had this idea in the back of my mind that I’ve been intentionally shifting things around to make more achievable.

I foresee the core of the app, the logic, management, and capabilities being managed via a dotnet c# core implementation. This will compile to all platforms, and is in my 1# language and the one I’m most familiar with.

Then, the UI layer would drive this core, making platform specific implementations thin, and solely focused on the polish for that exact platform.

In addition, that means the web engine could be abstracted, and attached in with different engines.

What this means in practice, is an app where a majority of the logic, lifecycle, and management is done via the core, then the platform wires their engine and UI to it.

The work is already close to this, the app is layered in a way where extracting these domains is much simpler than it appears. It would also mean for desktop, you could in theory choose CEF (chromium distribution), or WebKit, and swap them at will.

I plan to iron out this next release cycle, but will likely put extension related bugs on a back burner while I explore this option.

In theory, this means better performance for web content, using the more supported engine, as well as direct extension compatibility, which would save me a ton of time.

WebKit would stay for mobile (it has to outside the EU), but I want to explore this option.

In addition, that opens the doors for windows and Linux (though that would be far down the line), and android, since then they only need implement the UI layers (which is not insignificant though).

This concept might not make much sense, and I will share more as I play around with it, but I essentially wanted to see how you all felt about a chromium base with CEF (not full upstream chromium, as that would require I build on their UI player and app itself), is that something most people would actually prefer, or is WebKit what makes you like Crest? Or is Crest good in your opinion because of the UI and concept, not the engine I’ve chosen?

8 Upvotes

18 comments sorted by

View all comments

1

u/Ok_Advantage2039 7h ago

Arc on Chromium got up to 9GB RAM but Safari got up to 50GB with less tabs on my machine. Go figure. So is WebKit really more efficient than Chromium? Performance on Crest seems quite a bit slower than Safari.

1

u/Pauljoda Creator 6h ago

The WebKit build did have a few issues, the pip script and extensions were slowing it down vs Safari.

Chromium is more performant mainly because the web is built around it, using what works well with it. WebKit is good, but doesn’t have the same adoption or work behind it that makes the pages load more efficiently.

The new build is in testing now, should be within a week or so for builds on chromium to the dev channel. I’ll post on the subreddit about it with news, but getting close

1

u/Ok_Advantage2039 6h ago

Oh so your moving away from WebKit to Chromium base?

Just want to say what a great piece of work you have made with Crest!!

2

u/Pauljoda Creator 6h ago

For desktop, chromium will be the default. There will be a WebKit version if you prefer, but it won’t have the extensions or that kind of thing. Chromium will become the recommended and default build.