[ home / bans / all ] [ qa / jp ] [ spg ] [ f / ec ] [ b / poll ] [ tv / bann ] [ toggle-new / tab ]

/qa/ - Questions and Answers

Questions and Answers about QA

New Reply

Options
Comment
File
Whitelist Token
Spoiler
Password (For file deletion.)
Markup tags exist for bold, itallics, header, spoiler etc. as listed in " [options] > View Formatting "


[Return] [Bottom] [Catalog]

File:HD-wallpaper-firefox-world….jpg (104.7 KB,800x667)

 No.110398

I wanna get into writing browsers by forking something that already exists then adding modifications.
Should I start with Chromium(Blink) or Firefox(Gecko)?

I like Mozilla, but this is a field I have only superficial knowledge of.

 No.110400

Isn't firefox more customizable as a base and also not as fuck-y with its restrictions like chrome is?

 No.110401

FF also renders CSS more logically than chrome. Liekly so that there's alot more user-friendlyness in it.
But I'm note sure which does better with memory management and optimizing the V8 JS engine. And which one has an easier to understand codebase.

 No.110402

Just use librewolf as a base

 No.110403

add ftp, gopher, gemini support or i'm never downloading

 No.110404

>>110401
Well when it comes to memory management it's almost certainly chrome.

 No.110406

>>110402
near suggestion, but what I want to do is not technically secure and I fear that some of these types of suggestions would create pains to work around

 No.110407

>>110406
Well what's the general idea of what you want to do?

 No.110408

>>110407
What I'll actually do will be easier to know when I know how these things work, but we can just say that it's an internal use browser that either performs a set of operations upon viewing an approved webpage, allows for a way to sidestep the app marketplace and/or, as a simple example, appends to the functionality of window.open to react and read certain properties about where the browser is positioned on the OS(which monitor and it's XY)

 No.110448

It looks like the main thing I'd have to do is to figure out a way to extend the ability of webworkers, from a set of approved domains, to access OS information.
Also minimize the browser into the notice-bar.

Then you could do push notifications or have scripts on approved websites perform riskier tasks.

 No.110450

there are so many chromium forks

 No.110451

>>110450
find me the specific one that allows me to do exactly what I want...

 No.110480

File:[Erai-raws] Fumetsu no An….webm (1.1 MB,1920x1080)

https://github.com/jun7/wyeb
https://github.com/vimb
https://qutebrowser.org

people that are involved with these browsers (as users tweakers or developers) will likely know some stuff that you'll be interested in learning

>find me the specific one that allows me to do exactly what I want...
do you want to have a browser or do you want to make a browser? your ideal browser could easily be just firefox with a few extensions, no need to commit tens of hours into making a new browser

 No.110482

>>110480
What I want to do is closer to adding functionality to the scripting engine. JavaScript's interfacing with the browser. Extensions are not viable because they must be approved on chrome or the Firefox market place.

You shouldn't naysay effort because you have none. It comes off as making everything you say worthless.

 No.110485

or did you mean something like installing a browser with extensions added. Suppose that could work, but I'm not interested in doing something that doesn't further my own abilities.

 No.110487

>>110398
Start with something like Lynx and then move onto Surf or NetSurf. Then start contributing to Palememe.

 No.110489

File:ponko10.png (558.59 KB,1320x390)

>>110482
If that's all you want, just use Webkit or some other browser engine and build a minimal UI around it. You can have a lot of fun with that, rendering to a GPU buffer and then using the Dear ImGui library as the UI.
In comparison, finding your way around huge codebases like chromium and firefox will just waste you a bunch of time, and even then they might be architected in a way that makes it pretty complex to extend the javascript engine. Overall, it sounds like a retard move to me.

Webkit specifically makes it very easy to extend its javascript engine. Here is an article I found with a quick google search

Anyway, I wish you luck, anon. These sorts of projects are fun to think about, but it's very easy to mess up early on, make it harded for yourself that way and then just give up halfway through...

 No.110490

>>110489
Of course its complicated. Smart people get to do interesting things beyond program applications. Building actual environments to do things(engines) is interesting.

I dunno how webkit is going to be different from gecko or blink. But I guess that's what I need to find out

 No.110492

>>110489
>>110490
I say use Gecko if you can. The only browsers using it (at least as far as I'm aware) are all Firefox forks of one kind or another. It's a very good web engine, and I'd be cool to see a standalone browser that isn't a modified version of Firefox using it.

 No.110493

I'm trending towards learning how to use Gecko, because WebKit is icky iOS stuff and Blink is probably more corporate and less oriented towarda open source contribution. But it's just industry impression at this point since it doesn't seem like anyone has done browser development here.

 No.110494

electron is literally the thing you want

 No.110495

>>110494
In terms of functionality, yes.
In terms of performance, no
In terms of fun, no

 No.110496

also isn't electron's JS not 1:1 compatible with browser JS

 No.110498

>>110496
that's like saying c++ on windows isn't compatible with c++ on linux

 No.110499

>>110498
I looked a bit harder and Electron uses NodeJS to run scripts. That's a very different application of JS than browsers. And it would break any code written for IndexedDB or storage. And any ReactJS code probably break since SSR isn't done with interactivity in mind

 No.110501

So I don't think it even works in terms of functionality. I'd hit a problem with how Electron uses the NodeJS environment rather than the browser Gecko/Blink/Webkit style

 No.110502

and also the ability to use the built in functionality of browsers is much more important. So the Electron idea doesn't work here. It has to be a browser modification, more specifically a modification to a browsers JS scripting engine

 No.110503

it's neat that VSCode is written in Electron though. I never knew that.

 No.110504

>>110503
NO! it's not neat at all! electron is chromium garbage and it sucks. you want a good text editor? use sam.

 No.110506

vs code as an editor is alright
it fills the niche between notepad++ and a full blown Visual Studio/Eclipse type IDE

 No.110509

Upon further reading it seems that since it runs a chromium frame executed through NodeJS that it can manage to do 1:1 compatibility with webstorage functionality. But You're having NodeJS manage the chrome frames and browser calls which is surely going to be a mess.

So yeah, I agree that you could get the functionality I want out extending the browser script to conditionally use the Electron API, but it wouldn't be as intellectually stimulating and... well... it's NodeJS. Browser functionality is useful and reinventing that in NodeJS with the Electron API is just not going to be more productive than spending the time to understand Firefox's implementations and stuff

 No.110514

>>110506
just use ed. seriously. just use ed.




[Return] [Top] [Catalog] [Post a Reply]
Delete Post [ ]

[ home / bans / all ] [ qa / jp ] [ spg ] [ f / ec ] [ b / poll ] [ tv / bann ] [ toggle-new / tab ]