#SwiftUI Webkit Alto Browser

1 messages · Page 2 of 1

idle bobcat
#

then apparently I had to use scene padding?

#

I'll send the demo vid now

dim hazel
#

bird > birb

devout shore
devout shore
# idle bobcat

lol we realy gotta find a way to make the window look good in light mode

devout shore
# dim hazel its fine

it looks like it would eat mashed potatoes, macaroni and cheese, white bread sandwiches, and casseroles

#

( its white as fuck )

idle bobcat
# devout shore looks Fire

ty!! I spent forever yesterday comparing the settings from different macos apps to make it look as native and good as possible but it's worth it đŸ„č

#

@dim hazel here you go

devout shore
#

idk if it will look cooler

#

but i kinda want to see

idle bobcat
devout shore
#

lemme make the figma file copyable

#

so you can expand the banner if needed

idle bobcat
#

Cuz I sorta just took the image from the figma

idle bobcat
#

Just the bottom part

#

So I can expand the gradient

#

Rn im abit constrained by the logo needing to be in the centre

#

looking at figma docs rn, why is the cursor so goofy lol

devout shore
#

alr should be good

#

idk just mess with that

#

alr im gonna take a 20 minute break cuz ive been coding for almost 20 hours

idle bobcat
#

take a rest, dont burn out !

devout shore
#

im gonna finish getting OpenADK intigrated first

#

once Ive done that yall wont have any issues with compatibility and the project will no longer be in a transitional state

#

meaning I can take a nap and yall can test things, make bug and featur listings on the goofy notion, then make Pr's for fixed without it all needing to be reintigrated

upper coral
#

Wen roadmap

#

Wen OKRs

devout shore
#

just finished mearging the new OpenADK system into alto

devout shore
#

its in notion tho 💀

upper coral
#

Wen iOS

devout shore
#

uhhhh ngl

upper coral
#

This is my favorite Discord thread

devout shore
# upper coral Wen iOS

I mostly made the backend browser agnostic so i can check but maybe its posible with some tweeks

upper coral
#

Is it open source?

devout shore
#

yup

#

codes in a bad state right now

upper coral
devout shore
#

I would currently describe it as "jumbled and barely functional" since we just swapped to our new OpenADK package

upper coral
#

People hate spaghetti code but forget that it tastes good (with cheese on top)

devout shore
#

sry for spelling mistakes Ive been coding for 22 hours strait

#

@idle bobcat @dim hazel @empty drift @dreamy dome I have now migrated code over to working on OpenADK feel free to fix the things I left out

#

I did the bare minimum since im so tired anything I so will suck

#

both Alto and OpenADK should be updated now

dreamy dome
#

I will probably work on improving the sidebar layout

empty drift
#

If something doesn’t follow it should be revised until it does

devout shore
#

ngl rn most everything is kinda botched

#

most of it isnt commented but at this point any more code I add will be low quality since im on 0 hours of sleep

#

if yall refactor it that would be a good first step

empty drift
#

I will document stuff with DocC as I use them

devout shore
#

since i basicly just made sure that OpenADK intigrated fine then dipped

devout shore
#

pov i'm actually just one of jace's many alts

dreamy dome
#

i cloned the repo and tried to build in xcode but i get No such module 'OpenADK' . Its probably doing something wrong does anyone know how to fix it

devout shore
#

i need to make an install guide

#

but basicaly all you do is copy the github link and past it here:

#

just past it in the search bar

#

then in the Add to Project part select Alto

#

or what would most likely be better is you make a workspace file

#

then just drag the project file for OpenADK cloned from the github

dreamy dome
devout shore
#

nah I had to look it up the first time

dreamy dome
dreamy dome
devout shore
#

just install it from source

#

it will be better anyways

#

In this video, I would like to introduce you to Xcode frameworks and how to apply these to projects and workspaces. This is a follow up to the video that I have already released on Xcode terminology that introduces Workspaces so if yo have not watched that video, I recommend you watch it first.

If you want to support my work, you can buy me a...

▶ Play video
#

how workspaces and frameworks work together

devout shore
#

browser now supports picture in picture

dreamy dome
devout shore
#

ass

dreamy dome
devout shore
#

?

dreamy dome
dreamy dome
devout shore
#

nah we will task one of the devs to make there own at some point

devout shore
#

then make a new workspace

#

then drag JUST THE PROJECT FILE so the blue icon fucker

#

just drag the project files form both

#

im gonna see if I can fix the bug with favicons then ill make an issue on the old BeamLegacy repo to say thanks

#

like the entire header file for the ObjC is from them

devout shore
#

alr ive intigrated @dim hazel 's favicon fetcher so now they should cache

#

i tried the @silent thing so if I @ ed Kami then sorry!

dim hazel
#

You did

devout shore
#

succeed or @ you?

#

either way the main thing is that the browser is in a mostly functional state.
it needs a bit of logic to decide which tab you get shifted to when you close the current one and it needs tab saving so im gonna work on that

dim hazel
#

Silent my ass I still got it.

devout shore
dim hazel
#

It’s fine I wasn’t trying to sleep at all

devout shore
#

lol i might end up with amost 24 hours of screen time cuz of the all nighter

dreamy dome
#

all the stuff the have old infront of them like oldshortcuts should be implemented in another way ?

devout shore
#

I was realy just focusing on getting the browser to compile with the new OpenADK framework so i just labeled them old so I new I shouldnt mess with them

dreamy dome
devout shore
#

both the DOM ones and the context manager are kinda on hold

#

they essentialy recreate the HTML of the webpage in the form of a Markdown DOM I was designing

#

this would allow the browser to display notes with the markdown DOM in native swiftUI + convert html pages into a more LLM readable format while maintianing the structure of the HTML

#

the shortcuts file seems to work fine

#

in the future we will make a shorcuts Manager and move it to OpenADK

#

give it support to allow user inputs and whatnot

#

and also be eddited in settings

#

wait @dreamy dome your a JS guy right?

dim hazel
#

i perfer it as a package but oh well

devout shore
#

OpenADK?

dim hazel
#

nevermind i can't fully read

dim hazel
#

but for local packages yea, you can also open it in any vscode esk item with a swift compiler to make less xcodes open

#

which is what i end up doing because i hate xcode

devout shore
devout shore
dreamy dome
devout shore
#

the project will most likely require significant JS intigration (since a lot of the browser reacting to the webpage requires JS injection)

#

and idk js

devout shore
#

ngl il make a list

#

I think pasword fill will definatly need it

#

auto pip will

#

ad block

#

a boosts esc system as well

#

ngl we are gonna need a shit ton of JS

dreamy dome
empty drift
#

We just need to ask Apple for a special, browser entitlement

#

And as long as the browser adheres to the minimum spec (defined in the Apple Docs) they’ll give it to us

empty drift
#

Great progress on migrating the Command Palette to the new OpenADK. It'll require a PR to both Alto and the OpenADK package.

#

with url detection

austere arrow
empty drift
#

That's something they need to figure out with Apple

#

For example Zen supports it cause they contacted Apple and got the special entitlement that allows it to work

dim hazel
empty drift
#

If they already went through to trouble to get it

dim hazel
#

Why would I know. They’ve done so many stupid things I can’t keep count of.

empty drift
#

Okay, that makes sense. I hope they'll actually use it for Dia.

empty socket
empty drift
#

I wish webviews could have metal shaders applied to them

serene olive
#

which is actually in dia!

empty drift
#

How did I never notice that it's in Dia too? It's such a cool effect

dim hazel
#

that and my borderless

serene olive
dim hazel
serene olive
#

ah

#

true

dim hazel
#

it use to be everywhere and there was a minor tint it was so nice

devout shore
empty drift
empty drift
#

You just need to comply with those 4-5 requirements and you’re good

devout shore
#

I assumed that we wouldn't be allowed bc of it

empty drift
#

Btw we are complying with almost all of them

devout shore
#

Idk send me them

#

I'm going to a VR convention tonight so I won't be able to help as much today

empty drift
devout shore
#

And I slept in cuz of the all nighter last time

#

Here me out can one of y'all wix tab closing?

#

I at least now have it so you can click the close button but the actual code I have isn't working and I don't have a chance to fix it

devout shore
#

i like that like the only requirment is your search anyways lol

empty drift
devout shore
#

(ik you posted it)

#

I think they are right on this part

#

having a simple browser but having hidden complexity seems like a good idea

serene olive
#

Yea

devout shore
#

Ngl now that I understand drag and drop system in swiftui I can 100% make the thing where you re arrange buttons if we want it

devout shore
#

CHAT we need to have built in OCR as a tool

#

like OCR is my goat

#

but it gives you usfull tools and shit

empty drift
#

Yes that would be cool

devout shore
#

@empty drift how good are you at regex?

#

fyi ive set up a dev branch so we can all commit to that first

#

for now any PRs for the main branch will still go through to that one

maiden anchor
empty drift
#

I will rewrite that though cause I think I can do it without regex and I think I can offload that process a separate thread too

#

I just needed it to function

empty drift
devout shore
#

I'll take a look tho to see how necessary it is

dim hazel
#

Fuck I hate regex I can make and read it but it’s so much work to make it 100% hell even 90%

empty drift
dim hazel
#

Is the alto todo list up to date?

devout shore
#

god no

#

im working on it rn actualy

#

i just fixed tab closing

#

so now im doing shit like comenting

devout shore
#

yup

dim hazel
#

If you've got an up to date todo i can do some things on it

devout shore
#

lol just updated it

dim hazel
#

awesome, where is the main code atm adk or the app itself

#

i saw a lot of "old" code

devout shore
#

ngl the Alto part of the App needs a rewrite

#

its got some funky ass code

dim hazel
#

i noticed

#

i saw ad blocker, that could be fun to add...

devout shore
#

im mostly working on backend stuff rn so if you can fix the entire mess that is the frontend it would give us something to work off of

devout shore
#

if its on the list rn feel free to do it lol

empty drift
dim hazel
#

im not a front end dev

devout shore
#

zamn

#

fair

dim hazel
#

i can do front end, but not fancy shit

devout shore
#

well we need a tab saving system

dim hazel
#

thats why i have Kai doing it

devout shore
#

for like saving shit

devout shore
dim hazel
#

oh easy, just a coded json like arc đŸ«Ą

devout shore
#

ngl Kai Hard caried by answering some of my questions

dim hazel
#

are we planning on adding profiles and shit

devout shore
devout shore
#

same way Arc did

dim hazel
devout shore
#

ikr

dim hazel
#

oh yea that pr is it going to be merged soon or now, because if it is i need to stash my code before i do anything more

dim hazel
#

no code review just merge

devout shore
#

yup

dim hazel
#

love to see it

devout shore
#

i reviewed it earlier

#

when i mentioned the goofy regex

empty drift
#

If anyone has any bug with the command palette hit me up, and I'll try to fix it ASAP

devout shore
#

but since its lingering on the main branch i decided to merge it just to get off the old system

#

now everything should go on the dev branch

dim hazel
#

my god the whole of the alto xcode project needs to be remade

#

if i see one more adk error im going to lose it

devout shore
#

i havent got any

dim hazel
devout shore
#

shit

#

uhh

#

yeah thats mb

dim hazel
#

girl can't code 😭

devout shore
#

we had this issue with Hunor

empty drift
#

yeah yeah

#

it was this I think

devout shore
#

its cuz at one point I was trying to get the fucking Obj C working and it refused to scan the directory for headers

empty drift
#

or not, I don't remember

devout shore
#

I tried hardcoding them at as a test and nothing was working, but i forgot to remove that part

dim hazel
#

if it can't scan it, you need to quit xcode and reopen it

#

common issue when developing packages

#

dont ask me how i know

empty drift
#

weird cause the code from upstream works for me

dim hazel
#

im using upstream

devout shore
devout shore
devout shore
dim hazel
#

i see you're getting some use of it

devout shore
#

would be somewhat helpfull

#

yes lol

#

I am the master of commit messages

#

cuz I dont have anything on my side there

dim hazel
#
Showing Recent Messages
target 'OpenADKObjC' has invalid header layout: umbrella header found at '/Users/user/Library/Developer/Xcode/DerivedData/Alto-eqoxukrvshcfmkgituokuvcflfgo/SourcePackages/checkouts/OpenADK/Sources/OpenADKObjC/OpenADKObjC.h', but directories exist next to it: /Users/user/Library/Developer/Xcode/DerivedData/Alto-eqoxukrvshcfmkgituokuvcflfgo/SourcePackages/checkouts/OpenADK/Sources/OpenADKObjC/OpenADKObjC.docc; consider removing them
devout shore
#

eqoxukrvshcfmkgituokuvcflfgo my goat

dim hazel
#

yea xcode gen'd junk

devout shore
#

or shift is somewhere else

dim hazel
#

yea need to clone it locally

devout shore
#

since it looks like I alr removed the hardcoded paths

dim hazel
#

not adding a git ignore to the package is insane work

#

if i saw this commited anywhere id shoot you

devout shore
#

ngl I didnt realy expect people to work on the project

empty drift
#

shit, I made one just forgot to commit it with the search stuff

dim hazel
#

its easy enough anyways

devout shore
#

like I pulled a single all nighter to get it here

dim hazel
#

i just dont wanan fork another thing 💀

devout shore
#

yall hopped on while I was in the middle of learning how to transition it to its own framework

#

i was too busy learning how the fuck Xcode workspaces worked lol

dim hazel
#

this is all you need

.DS_Store
/.build
/Packages
xcuserdata/
DerivedData/
.swiftpm/configuration/registries.json
.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
.netrc
#

in the git ignore

dim hazel
devout shore
#

uhhh fair

#

idk im just kinda shit dev

dim hazel
devout shore
#

like im 17 idk what the fuck im doing im in hs

dim hazel
#

me too

devout shore
#

not production environments

#

lol

dim hazel
#

m1 8gb mac btw

devout shore
#

oof

dim hazel
#

im not a figma designer so i dont get a jacebook

empty drift
#

what app is that btw?

dim hazel
#

istat menus

empty drift
#

thanks

dim hazel
#

its paid but there's "free" versions

empty drift
#

as long as it doesn't cost a fortune I'm okay

dim hazel
#

theres free versions like Stats which is FOSS and Euel also foss

#

who in the adk team can't spell

maiden anchor
dim hazel
empty drift
maiden anchor
dim hazel
#

idk kill it

maiden anchor
dim hazel
#

omfg if i see more errors the more i fix im going to lose it

maiden anchor
#

No clue why its 14gb tho might be a bug

empty drift
dim hazel
#

the openadk

devout shore
#

im dislexic as all hell

dim hazel
#

im actually going to crash out

devout shore
#

if its not installed that would be a problem (I may not have got a chance to add it to the package file)

empty drift
#

swift-numerics is not added though

devout shore
devout shore
empty drift
#

good question can't answer it though

devout shore
#

yeah im new to this shit

#

ask @dim hazel

#

lol

dim hazel
#

hi what

devout shore
#

i think I need to also add the algorithms package in the package file

devout shore
dim hazel
#

nah the fix is this

// swift-tools-version:5.7

import PackageDescription

let package = Package(
    name: "OpenADK",
    platforms: [
        .macOS(.v13),
    ],
    products: [
        .library(
            name: "OpenADK",
            targets: ["OpenADK"]
        ),
    ],
    dependencies: [
        .package(url: "https://github.com/apple/swift-algorithms.git", from: "1.2.0"),
        .package(url: "https://github.com/apple/swift-numerics.git", from: "1.0.0"),
    ],
    targets: [
        .target(
            name: "OpenADKObjC",
            dependencies: [
                .product(name: "Algorithms", package: "swift-algorithms"),
                .product(name: "Numerics", package: "swift-numerics"),
            ],
            path: "Sources/OpenADKObjC",
            publicHeadersPath: ".",
        ),
        .target(
            name: "OpenADK",
            dependencies: [
                "OpenADKObjC",
                .product(name: "Algorithms", package: "swift-algorithms"),
                .product(name: "Numerics", package: "swift-numerics"),
            ],
            path: "Sources/OpenADK"
        ),
        .testTarget(
            name: "OpenADKTests",
            dependencies: ["OpenADK"]
        ),
    ]
)
devout shore
#

but thx

devout shore
dim hazel
#

has no one fucking built this package from source?!??

devout shore
#

ngl ive had like 2 days with the package

#

and 2 of them were one day since I pulled a all nighter making it so yall could work

dim hazel
#

clean all caches, and start fresh, see how many errors you get

devout shore
#

AGAIN yall guys join in the middle of me trying to move to a package system

#

ive never made a package before

dim hazel
# devout shore ive never made a package before

@Observable is a macOS 14+ framework, the package is built for lower, you update the swift tooling, than you get

OpenADK/Sources/OpenADK/Managers/PreferencesManager/PreferencesManager.swift:10:23 Static property 'shared' is not concurrency-safe because non-'Sendable' type 'PreferencesManager' may have shared mutable state

so you need to fix this, in all files to make it concurrency-safe and a whole lot of other junk

devout shore
dim hazel
#

that won't fix it

devout shore
#

this is gonna suck isnt it

dim hazel
#

holy shit it built

empty drift
#

It was a tough delivery

dim hazel
# dim hazel holy shit it built

update this as 5.9 is the version macOS 14 was released with, swift 6 introduces con issues

// swift-tools-version:5.9

import PackageDescription

let package = Package(
    name: "OpenADK",
    platforms: [
        .macOS(.v14),
    ],
    products: [
        .library(
            name: "OpenADK",
            targets: ["OpenADK"]
        ),
    ],
    dependencies: [
        .package(url: "https://github.com/apple/swift-algorithms.git", from: "1.2.0"),
        .package(url: "https://github.com/apple/swift-numerics.git", from: "1.0.0"),
    ],
    targets: [
        .target(
            name: "OpenADKObjC",
            dependencies: [
                .product(name: "Algorithms", package: "swift-algorithms"),
                .product(name: "Numerics", package: "swift-numerics"),
            ],
            path: "Sources/OpenADKObjC",
            publicHeadersPath: ".",
        ),
        .target(
            name: "OpenADK",
            dependencies: [
                "OpenADKObjC",
                .product(name: "Algorithms", package: "swift-algorithms"),
                .product(name: "Numerics", package: "swift-numerics"),
            ],
            path: "Sources/OpenADK"
        ),
        .testTarget(
            name: "OpenADKTests",
            dependencies: ["OpenADK"]
        ),
    ]
)
#

or i can pr it if you need

devout shore
#

sure you pr for that

#

im not sure how to handle diferent swift versions

dim hazel
#

legit this line

#

version x.x is version number the newest is what 6.2 currently

#

higher it is, less it supports more "features"

empty drift
#

And 6+ is a concurrency error nightmare

dim hazel
devout shore
dim hazel
devout shore
#

yeah so my question was how that works

#

like do you have multiple files or all in the same but with diferent comment lines

dim hazel
#

So, the tool's version dictates what it builds the lowest to, right? But it can build higher than itself, not lower. There is where the trick is. If you need a specific newer method, you can add an #if check or an @available(macOS: version, *) to denote this is a newer version of the method.

#

also pr'd

devout shore
#

looks good as far as i cant tell

#

this should be to dev

dim hazel
#

lame always push to main

#

that needs fixing

devout shore
#

it uses an effect to fill in

dim hazel
#

should be fixed to the right branch now

devout shore
#

im gonna finaly build from source with the new branches to test shit

dim hazel
#

okay, finally i can start building some features on the actual browser

#

also someone broke my fav icon fetcher

#
JavaScript error: Error Domain=WKErrorDomain Code=5 "JavaScript execution returned a result of an unsupported type" UserInfo={NSLocalizedDescription=JavaScript execution returned a result of an unsupported type}
#

enjoy that

empty drift
#

Btw, we need to fix that creating too many tabs just makes the window wider and instead it should make the tabs narrower

devout shore
#

and had made a pr im preaty sure

dim hazel
#

even from the dev branch same issue

#

defs not fixed

devout shore
#

any good way to fix this?

dim hazel
#

change the team

#

to yourself

empty drift
#

Select a team

devout shore
#

like I can swap it easly but it feels like we should make it not have the problem in the first place

devout shore
dim hazel
#

this is because people commit with their name, i don't do it because of this same issue

#

it's pretty annoying

devout shore
#

yeah ill just leave it

dim hazel
#

you need to make a commit yourself, with the change so we can get the updated team id

dim hazel
#

there may be a way to do a pre hook but idk about this so don't quote me

empty drift
#

@devout shore are u a registered apple dev? If so, we can easily do build checks at every commit or PR and Xcode cloud can automatically manage that team thing.

dim hazel
#

in hs i dont think she is

devout shore
#

my dad is doing it lol

dim hazel
#

aahhahah

devout shore
#

he is pissed of at apple but is willing to split the cost cuz he is a sucker for the AVP

dim hazel
#

also whoever made the icon doesnt know basic macOS

empty drift
devout shore
#

bro sounds like "I reeeeally hate apple but DID YOU SEE AVP V26? its got some sweet features"

devout shore
devout shore
dim hazel
#

dont tell me new icons are bigger? @serene olive

serene olive
dim hazel
devout shore
#

so did I fuck up again kami?

dim hazel
#

a little, yes

devout shore
#

what do I need to do to fix it

#

cuz I just strait up exported from the icon maker then droped that into the assets file

dim hazel
#

nothing rn because its not a massive issue

devout shore
#

yeah but your gonna bitch about it

dim hazel
#

just bigger than a normal icon, so theres something wrong in the sizing

#

nahh

#

hey, @empty drift you made the arc search thing right?

empty drift
#

Yeah

dim hazel
#

fix this, it's called on each search

Failed to fetch suggestions: Error Domain=NSURLErrorDomain Code=-999 "cancelled" UserInfo={NSErrorFailingURLStringKey=https://suggestqueries.google.com/complete/search?client=firefox&q=kamidevs.c, NSErrorFailingURLKey=https://suggestqueries.google.com/complete/search?client=firefox&q=kamidevs.c, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "LocalDataTask <3D906836-EDA2-4C46-851E-1A88AF6D9303>.<10>"
), _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <3D906836-EDA2-4C46-851E-1A88AF6D9303>.<10>, NSLocalizedDescription=cancelled}
empty drift
#

That should be normal

dim hazel
#

huh?

#

what are you, an arc dev

empty drift
#

It’s basically fetches the suggestions each search and if a fetch is in progress and cancels it

dim hazel
#

calling it each time nukes your memory

#

call it once and debounce it

devout shore
#

If I swap to this when I commit will it fix the issue with the teams?

empty drift
#

We just need to remove that print and that will disappear

#

Or make it ignore cancellations

dim hazel
#

observe

devout shore
#

working for me

dim hazel
#

what is?

devout shore
dim hazel
#

oh fav icon

devout shore
#

icon

dim hazel
#

it's kinda

#

check my site and it won't load

devout shore
#

alr

dim hazel
#

jaces it does, it's some sites in particular

devout shore
#

whats yours

#

i see your gh in your pfp

#

alr got it

dim hazel
devout shore
#

I just realised the command pallet hasnt been added to the dev branch

#

i need to update that

#

it may include issues as well

dim hazel
#

can't be called a dev if it doesn't merge with at least 1 bug

#

and fixed the fav icon now

#

also, the window for alto needs to be fixed

#

it returns a random id it should return the name

empty drift
devout shore
dim hazel
devout shore
#

it needs to pull the current tab but before it was about comparing the id of the view in it and the windows view to make sure it matched

dim hazel
devout shore
#

I think its what is having the issue with favicons partly

dim hazel
#

love to see

#

fixed ill release a pr in a bit

#

also, you didn't use the swiftformat right but i also fixed that

empty drift
dim hazel
#

and on each tab and result you were looking for a pip element, i also fixed that to find only on an element with a video

devout shore
#

remove it

#

jace was just asking if we would be able to do auto pip so i tried it

empty drift
#

It’s super annoying though. Yesterday I was testing stuff on the apple site and it put all the background videos to pip and left half of the page black

devout shore
#

bruh this is the first time the PR folder has actualy worked when i got a pr

devout shore
#

to see

#

if it worked

dim hazel
#

holy fuck we need an ad blocker

empty drift
#

It works too well lol

devout shore
#

ikr

dim hazel
#

i just went on youtube and its BAD

devout shore
dim hazel
#

also cmd+w NEEDS to close the tab

#

i cant tell you how many times i clicked and it poof browser gone

devout shore
#

curretly we need to fix tab close lol

dim hazel
#

add it to the list 😭

devout shore
devout shore
#

not spelled correctly

#

but its on there

dim hazel
#

fuck need to nuke the commit

#

cant spell for shit

#

what happens when rushing messages đŸ«Ą

#

gonna pr that who cares

devout shore
#

wat I was hungry

empty drift
devout shore
#

I eat

dim hazel
#

okay pr'd

#

this was the mistake btw

devout shore
#

what does @testable do

#

how did i fuck this up

#

😭

dim hazel
#

It's a part of the testing framework you added to both the package and app. It means we only need to include this import if it's a testable file or function, as it is not imported automatically in a test.

dim hazel
devout shore
#

lol i remeber running into this issue with my version

#

cuz some websites dont store it at the url

dim hazel
#

i know, but it's nice to look as it handles 99% of websites

devout shore
#

i allway check the url first

dim hazel
#

i should of optimised that file before commiting

#

ill probs do that actually

devout shore
#

sure

dim hazel
#

also can hide my mistake đŸ«Ą

devout shore
dim hazel
#

if you've not merged it yes

devout shore
#

yeah i was still reviewing

dim hazel
devout shore
#

lemme know when you commit đŸ©·

dim hazel
#

also, do we wanna make a keybind to toggle the border?

devout shore
#

if so both cases yes

dim hazel
#

i mean full borderless, just show the content of the site

#

and awesome

#

if i make this well enough i may be able to move over from arc ...

devout shore
#

thats gonna be a slog

dim hazel
devout shore
#

ngl the plan i just to be Arc + a topbar for peeps who want it plus fix some of the minor issues

devout shore
dim hazel
#

i think its gonna be paid

#

free would have like 50 daily requests or something

#

and paid has more and more

#

(this is not insider info im just taking a shot)

flint badger
dim hazel
#

thats rust iirc

#

we're making it in swift, so we need to make our own or make an engine

flint badger
#

Ah, I see.

devout shore
dim hazel
#

before i look into it, question, do you want it in the adk or the app

devout shore
dim hazel
#

i assumed so just making sure

devout shore
#

OpenADK is mostly non browser specific stuff

dim hazel
#

okay, pushed some optimisations

#

should be good now

#

added some doccstring too so should be easier to read

dim hazel
#

Also, I always use emojis in my commit messages; it makes them look nicer. You can blame Kai for making me do it all the time now.

devout shore
#

I think you may need to make a PR to Alto to fix some issues

dim hazel
#

@empty drift some nice things to add to the thing would be support for cmd and opt left/right

dim hazel
#

you can remove the code

devout shore
#

alr

dim hazel
#

but i can pr if need be

#

let me know if you want that as im about to pack up

#

its 00:07 for me

devout shore
empty drift
devout shore
#

what all do i need to do for that

dim hazel
#

give me your team id and i can fix that

devout shore
empty drift
dim hazel
empty drift
#

I'll look into it

devout shore
#

@idle bobcat any update on the setting system?

dim hazel
#

pushed the pr to alto

#

its now 00:21 off to bed have fun all

serene olive
#

if anyone is curious

#

the Alto logo is actually started with a star

serene olive
dim hazel
#

dia who

idle bobcat
devout shore
#

and reinstall from scratch

#

we changed some stuff and you need to move to the dev branch

devout shore
dim hazel
#

dont even show me that error

#

i did not spend my time fixing it at all

idle bobcat
#

OHH YA'LL MENT THE DEV BRANCH FOR ADK

#

still have this problem tho

#

@devout shore

devout shore
#

are you on a dev branch for both?

devout shore
idle bobcat
#

yep

devout shore
#

go to that file click it

#

and open the right sidebar for info

idle bobcat
#

theres no test.h file

#

not in the repo

#

oh found it!

idle bobcat
devout shore
#

For the love of God send ss

#

Y'all need to do that more often lol

timber wing
#

Unrelated but is battery decent on 26

idle bobcat
#

mb here you go

devout shore
devout shore
#

your on the not goofy beta so its dif

idle bobcat
#

other tabs from othe r place also has nothign

#

I'll try researching about this target mebership thing

devout shore
#

hmmm

#

idk look into adding target membership in xcode

inland karma
devout shore
#

arc

devout shore
dim hazel
#

@devout shore did you say alto the app needed to be rewritten or reoptimised?

devout shore
#

yes

devout shore
#

I recently updated OpenADK so it should now support the window renaming based on the active tab

#

it ended up being more of a pain than expected since i needed to make sure it would work for split view tabs down the line

#

I also went back in and commented what I could for at least some of my OpenADK code

#

also technically Jace is our designer so ive been laying of the front end to handle the framework part till he has a design and branding

#

also I fixed the goofy bug with no tab

#

ive done this like 5 times now and it always get overwriten somehow 😭

devout shore
#

in the morning I will probably do some R&D on the whole cookie store system so I can add user profiles

dim hazel
#

if you look at my fork i optimised some app code

#

let me know if those files are being changed

empty drift
empty drift
#

BIG ONE

dim hazel
#

nice

empty socket
dim hazel
#

nah man

empty socket
#

prob the new icon maker from tahoe exporting them in 1024

#

and in default the box is 1024 but the icon is 824

empty socket
dim hazel
#

ah i see what you mean

empty socket
#

so this is the strcuture and in tahoe they killed the border

#

im just guessing lol

dim hazel
#

im cooking

#

its also somewhat broken

#

but thats only settings

empty socket
#

also if you really really wanted to fix the icon

dim hazel
#

Okay, here's my offer: I'll kill myself, but before I do so, I'll go ahead and commit this because I cannot for the life of me debug why this isn't loading. Testing it individually works fine; it, as a whole, nada, nothing, no loading for your JS.

empty drift
empty drift
#

woah that's so cool

#

hats off

maiden anchor
#

damn

#

good job

devout shore
devout shore
serene olive
devout shore
#

thats why it has the dumb ass border radius

serene olive
#

lol yea

#

and now the padding is wrong

devout shore
devout shore
#

cuz like rn if your not on tahoe the corner radius of webviews must look shit

empty drift
#

that's why the gap is so big between them, cause the benchmark data wasn't saturated enough to be 100% accurate

devout shore
#

it still needs actual design attention since it was kinda just something i added to test settings

empty drift
#

ah okay, I use light mode on everything so that's why I noticed

devout shore
#

i feel like there may be some things I can check

devout shore
#

@dim hazel at some point could you make a commit on the extention thing, i'd love to take a look at it!

maiden anchor
#

i have one for ff on my github somewhere

#

tho idk how kami would have gotten the ubo apis working

#

(just downloading extensions and showing their screen is simple enough, its the apis that are murder)

devout shore
#

unrelated but...

#

you want to watch porn durring any browsing session? try our new patented incognito browsing process! every time you load a webview its a new cookie store with a random UUID! so you have a 1 in 2^128 chance of getting the one your thinking of!

maiden anchor
devout shore
maiden anchor
maiden anchor
#

Its so kneecapped

devout shore
maiden anchor
#

Loll

#

also i would recommend against trying to get webkit extensions working. It isn’t easy and you will get nowhere near the level of stability or completeness you want.

#

(if you can, try and steal sigmaos’s webkit binary)

devout shore
devout shore
maiden anchor
#

tho that fruit is still hanging off a metaphorical redwood

devout shore
#

like no one would want to use it for anything other than maybe an adblock wich we will be built in anyways

maiden anchor
#

Oh lol

devout shore
#

like dark reader is PAID 💀

maiden anchor
#

XPC is pretty darn secure

empty drift
#

The Safari extension store is the worst. When I used Safari I just always downloaded the source for the Chrome variant and run in through safari-web-extension-converter and in 90% of the time it spit out a working Safari variant. It was annoying to do this though.

serene olive
devout shore
#

Orions was kinda shit

#

weirdly enough SigmaOS's was better

#

i reeeeeaaaly hate saying that dumb name lol

dreamy dome
serene olive
serene olive
#

making this browser has raised an issue for me lol

#

"if every browser does the same thing, what makes me pick one over the other"

#

im using Dia now and like... im happy,,, less happy than arc... but not as depressed as i thought id be

dreamy dome
#

aesthetics community features "aura"

serene olive
devout shore
serene olive
#

UI is mostly what i care for if we have a command bar

devout shore
#

#1377040391622234223 message

dreamy dome
serene olive
#

"have YOU ever wanted to JACK OFF?"

devout shore
#

tbf it means there is a 1 in like 8 billion chance of opening the browser and getting your old profile data

serene olive
#

"meeting? no! freshly waxed ponani!"

empty drift
serene olive
#

literally arc 💀

#

but yes i agree

empty drift
#

It's convinient

serene olive
#

also new logo soon (im suffering)

dreamy dome
serene olive
dreamy dome
devout shore
#

like abandoning the userbase would not be detremental to the success of the browser lol

serene olive
devout shore
#

nlg if jace does a redesign we should make a video titled "why we abandoned our core userbase" then explain how our 16 github stars were not enough and we needed to get the number of users chrome has

dreamy dome
#

Alto 2.0

serene olive
#

if i knew how to draw this would be so easy

dreamy dome
#

this is immensely real

serene olive
#

"i should get an ipad"

ipad wont let me draw better

dreamy dome
devout shore
#

unrelated but do yall have a list of stuff you think needs to be included in the profile data?

#

not all of settings but definatly some stuff

serene olive
#

profile data like alto account or profile profile

devout shore
serene olive
#

so Browser profiles

devout shore
#

yup

serene olive
#

can we just not deal with passowrds...

#

like can we block that from existing

devout shore
#

like i will steal this stuff

devout shore
serene olive
#

pretty much..

#

yay need to make semi-boring UI

serene olive
#

actually i can do that

#

lol

#

ive needed to recently

devout shore
#

lol the plan was just to make a simple system for cookie profiles but now i am basicly coding the entire data store system 😭

serene olive
#

:)

devout shore
serene olive
#

raycasts is boring+

dreamy dome
devout shore
#

bruh i just found out that convenience initializers exist and they are fire

#

and class func wth this is hype

flint badger
devout shore
#

I dont have a password manager

#

are there any recomendations from yall for free pasword managers?

serene olive
devout shore
serene olive
#

only one way to check

devout shore
#

uuhhhhggg

unreal grove
#

@devout shore really nice project! As the developer of wBlock, a fully-native SwiftUI ad blocker for Safari, I'm wondering if you've considered implementing content blocking support yet? I've had someone try to port my app to work with generic webkit with decent success, and I'd be happy to help figure out a solution for alto if that's something you're interested in

unreal grove
#

?

devout shore
#

was alr planing to

unreal grove
#

loll

#

that's sick

devout shore
#

I stuck it under my list of stuff when I scaned your github stuff

unreal grove
#

I don't know the status of the other guy's attempt to integrate wblock into his webkit browser because he disappeared

devout shore
#

like 2 weeks ago

unreal grove
#

but I think he got a decent amount of stuff working

unreal grove
#

I wish I got more involved but at the time I was busy with finals so I was sort of annoyed that he was bugging me with questions about wblock

unreal grove
devout shore
#

I am working on browser profiles rn but after that I will take a look! đŸ©·

unreal grove
#

nice

#

wblock's alpha version which isn't released on github yet also supports userscripts now so you could have stuff like bypassing paywalls or returning the youtube dislike button

dreamy dome
devout shore
dreamy dome
#

i was searching around because it would have been a pain in the ass to make an advanced adblocker from scratch

devout shore
dreamy dome
#

#about-you message

devout shore
#

then do the work of actualy intrgrating them

dreamy dome
devout shore
unreal grove
#

1k stars isn't that many in today's day and age but I appreciate every one of my users

#

even the ones who make these sort of issues

devout shore
#

is there a way I can test it?

dreamy dome
unreal grove
#

the UI is kind of basic too atp because I'm not a designer

#

but I tried to make it minimalistic

unreal grove
#

oh it's also available on ios and ipados for those interested

#

that wasn't the case before -- it used to be mac-only

dreamy dome
devout shore
#

they are just shit

unreal grove
devout shore
#

like most stuff on the safari store sucks

unreal grove
#

I wish the orion devs were more open about their reverse engineering of webextensions

#

but they are kind of hostile

dreamy dome
devout shore
#

they just said look at the safari extentions

#

cuz they suck

unreal grove
#

lmao

#

like they are literally not the same

dreamy dome
#

should need some troubleshooting most of the time i would imagine

unreal grove
unreal grove
#

including ad blockers

unreal grove
dreamy dome
devout shore
#

which ones do i use

unreal grove
# devout shore which ones do i use

all of them. safari is a poopy face because for "security" you can only have 150k rules enabled in a single content blocker extension, so that's why I have 5 (plus advanced for script-based)

#

so this lets us have up to 750k rules instead of just 150

#

thanks tim apple!

#

thanks for nothing

#

sorry for the puerile language; my hatred for apple's treatment of safari extensions knows no bounds

devout shore
#

still getting ads on youtube

#

but reddit works

devout shore
unreal grove
#

and restart

#

as well as apply filters in the main app (it should force you to before quitting the app)

#

there should be like 5-6 defaults enabled which are pretty good and should block everything

#

these are the hoops I have to jump through to get ts working

devout shore
unreal grove
#

um that shouldn't be happening

#

can you click the cycle icon in the menubar

#

or is it grayed out

#

@devout shore you can just close the app actually and it should say "hey you have unapplied changes" and then you click apply and it will do everything for you

#

that would be the easiest

#

and if it doesn't do that... d'oh

empty socket
devout shore
#

alr got it working

unreal grove
#

nice

devout shore
#

works on yt

unreal grove
#

but it's super important because otherwise I'll get a million github issues saying "ab bolker not woorking on YOUTUBE"

unreal grove
#

do you have any suggestions to make the UI more... aesthetic

#

it's basic af rn

#

alto just makes my blood pressure drop by simply looking at it

#

it's so soothing

devout shore
#

i just do shit

#

and it looks alr

unreal grove
#

hmm neither am I

#

I need to put some effort in

#

every time I try to change stuff it stops looking native

#

so I just went for the basic layout

devout shore
#

nah not realy, its a fucking safari extention. most people dont even know they exist

unreal grove
#

true

#

at least 1k people know mine ❀

#

the best part of having a lot of github stars is that there is literally no benefit except more people making issues

devout shore
unreal grove
#

hey those 17 people are very active tho

#

lots of PR action going on

#

I wish people helped me at all with wblock rather than just complaining about it not working lmao

devout shore
unreal grove
#

yeah lots of traffic confers more harm than good tbh

dreamy dome
#

good docs can cut down issues by at least a half

unreal grove
#

the only benefit is those few times when people are like "wow you're github famous"

unreal grove
dreamy dome
devout shore
#

I think the rapid growth of Zen is what will kill it in the end. that and the fact that if the single dev that runs it gets board its over

empty socket
unreal grove
#

holy shit the polarization

dreamy dome
devout shore
#

like the moto is basicly just "figure it the fuck out and read the docs"

#

(the docs are wrong)

unreal grove
#

yeah maintaining code and docs simultaneously as a solo dev is impossible

dreamy dome
unreal grove
devout shore
#

I think the main confusing thing is the border

dreamy dome
unreal grove
sterile ridge
unreal grove
#

what would you suggest?

unreal grove
devout shore
#

other than that idk

unreal grove
#

I kind of failed

#

but it's sort of there

devout shore
#

well make sure to set the bg color since it shows white when you scroll up

dreamy dome
unreal grove
unreal grove
#

sorry I should stop polluting this channel with wblock stuff

#

I can make my own thread for that, which I will once I get 0.3 out

empty socket
devout shore
#

@unreal grove whats the file size on wBlock?

dreamy dome
dreamy dome
empty socket
#

i think

unreal grove
devout shore
#

alr im down for that

unreal grove
#

and most of it is the UI elements for the actual app proper

devout shore
#

does that inlcude the blocker files?

unreal grove
#

unfortunately no

#

but blocker files aren't big

devout shore
unreal grove
#

I store them in a group container so that macos doesn't flag the app as malware

dreamy dome
unreal grove
#

Which would obvs not be there in your version.

devout shore
#

yeah no it should be a problem especialy since mac apps aready take up like 4 mb by default

dreamy dome
unreal grove
#

Exactly.

devout shore
#

yeah no its not a problem

#

ngl the only stuff that will realy get you when it comes to the mb is big libraries and media

unreal grove
#

It's so fucking stupid that adguard for safari is like half a gig lmao the memory leaks there are so godawful that I cannot believe the world has not revolted yet.

devout shore
#

lol

unreal grove
#

And wipr is a crime against humanity because the only way to update filter lists is for the dev to push an app update.

#

Which is a huge bottleneck.

#

Not to mention that the user has zero control over the blocklists.

devout shore
#

@dreamy dome ngl what would be nice is if you could figure out boosts

#

just a general plug in system for it

#

at least the editing page part will be JS

dreamy dome
#

okay yeah i will try i would work on alto or on adk

devout shore
#

alto

dreamy dome
devout shore
#

probably half swiftUI half js

dreamy dome
devout shore
#

noice

#

im not sure what the best way to detect the hovered element in webkit is but if its js then use js

#

im not sure if there is like a swiftUI for that

dreamy dome
empty socket
devout shore
#

sure do that then

dreamy dome
empty socket
#

hope the boosts will have css and js too like userscripts

dreamy dome
dreamy dome
#

at least i will try

#

in the future we could even have a git repo for boosts

#

like a marketplace

empty socket
#

yeah lets not the be that crazy

dreamy dome
empty socket
#

sharing code snippets to stranger not a good idea

empty socket
dreamy dome
#

but popularizing css and js customizations for websites like extensions would be a huge win

devout shore
#

hmmmm im alr with css tho

unreal grove
#

I need to figure out element zapping in wblock too. I do not really know how to do it but one day I will implement it.

dreamy dome
dreamy dome
unreal grove
#

Cool.

empty socket
#

element zapping is really cool

#

and also adding snippets of js and css at times

#

but zapping makes the shitty sites usable

devout shore
#

what I realy want is a zapper that lets me hold a modifire key then scroll in order to go up a layer

sterile ridge
#

damn 2k messages here

#

insane

devout shore
#

so that i dont have to keep clicking the same fricken empty divs