this post was submitted on 17 Jun 2023
1096 points (96.7% liked)

Lemmy.World Announcements

29098 readers
13 users here now

This Community is intended for posts about the Lemmy.world server by the admins.

Follow us for server news ๐Ÿ˜

Outages ๐Ÿ”ฅ

https://status.lemmy.world/

For support with issues at Lemmy.world, go to the Lemmy.world Support community.

Support e-mail

Any support requests are best sent to [email protected] e-mail.

Report contact

Donations ๐Ÿ’—

If you would like to make a donation to support the cost of running this platform, please do so at the following donation URLs.

If you can, please use / switch to Ko-Fi, it has the lowest fees for us

Ko-Fi (Donate)

Bunq (Donate)

Open Collective backers and sponsors

Patreon

Join the team

founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 41 points 1 year ago* (last edited 1 year ago) (7 children)

I am working on this. But I need help, shoot me a message if you're interested. https://github.com/ando818/lemmy-ui-svelte

[โ€“] [email protected] 7 points 1 year ago (1 children)

I can't help. There is no license, so your app is proprietary. What are the goals and what needs to be implemented?

[โ€“] [email protected] 12 points 1 year ago* (last edited 1 year ago) (4 children)

Just added the Apache License.

Goals:

  1. Better UI (I am aiming for old.reddit) for lemmy with a new design (repetitive icons, hard to distinguish comments, terrible mobile UI) and fixing common issues, like freezing, spinners loading forever, etc.
  2. Single codebase for web, native Android and iOS apps. This is possible with Svelte + Capacitor.
  3. Svelte codebase which I believe will be far easier to develop on.
  4. Rethink how communities are browsed/integrated as alluded to in this post. This is my end goal, but I need to have some discussions about what this will exactly look like.

My current goal is to just get the site working with all/most of the existing functionality. For that there is a lot to do. Profile/settings page, comment replies, community browser/subscriptions to name a few.

[โ€“] [email protected] 4 points 1 year ago

Sounds great!! I will be pendent of news about that project. Currently I'm using Jerboa. Not so bad and needs improve a lot of stuff, would be great could use Infinity for Reddit but for Lemmy. Is open source so I think it could possible, but I'm not a programmer yet. Good luck!!

[โ€“] [email protected] 3 points 1 year ago

I might try my hand at contributing. I have yet to do any open source development but really want to work on something lemmy related.

[โ€“] [email protected] 3 points 1 year ago (2 children)

Thank you! Would you be open to using a Copyleft license like GPL? Or is that not possible when releasing the app to mobile stores?

[โ€“] [email protected] 8 points 1 year ago (1 children)

It seems like Jerboa uses GPLv3 as well, as does Bitwarden and some other open source apps. Its probably ok though it seems like it can run into trouble way down the line. Im going to keep the GPLv3 for now.

[โ€“] [email protected] 3 points 1 year ago (1 children)

It seems that the lemmy-js-client library you are using is licensed under AGPLv3. So I'm not sure if you are allowed to use it with your current license. You might have to make your project AGPLv3 too.

[โ€“] [email protected] 1 points 1 year ago (1 children)

The Apache License 2.0 is compatible with the GPLv3 and AGPLv3 but not the GPLv2: https://www.gnu.org/licenses/license-list.html#apache2. Using an AGPLv3-licensed library in an Apache 2.0-licensed program is allowed, but you must follow the AGPLv3 when conveying it, which is incompatible with the Apple app store ToS.

[โ€“] [email protected] 0 points 1 year ago (1 children)

AGPL is a Copyleft license, so how can it be possible to use such library in an Apache licensed program? Isn't the whole idea of Copyleft to make that impossible? To make sure that nobody can take away users freedoms?

I think what they meant on gnu.org is that you can use Apache licensed code in a GPL licensed program.

[โ€“] [email protected] 1 points 1 year ago

The combination of an Apache-licensed program and AGPLv3-licensed library is covered by both licenses, meaning that both need to be followed. This does not change the license of the program itself - the library could be replaced. Somebody could take away the users' freedoms, but they would need to replace the library.

[โ€“] [email protected] 2 points 1 year ago

Just did some reading and it indeed does seem like GPL is not allowed in app stores as it does not allow any further restrictions (such as Apples store's requirements).

I have to do some research.

[โ€“] [email protected] 1 points 1 year ago (1 children)

Single codebase for web, native Android and iOS apps. This is possible with Svelte + Capacitor.

Interesting. Is this easier to work in than React Native?

[โ€“] [email protected] 1 points 1 year ago* (last edited 1 year ago)

I am not a fan of React, so in my opinion, yes. The substantial difference here is this isn't native, its just a webapp that looks and feels just like a native application. The nice thing here is its just vanilla JS/CSS/HTML.

[โ€“] [email protected] 2 points 1 year ago

Not a bad start! Best of luck.

[โ€“] [email protected] 2 points 1 year ago (1 children)

I like that you chose Sveltekit, and the project structure seems pretty good. But there's a lot to fix. The page load takes way too long (you should be using #await whenever possible), and the design is very messy.

If I may suggest, I think you should be using a UI framework. It will keep you in-line, and give you good defaults, and maybe even save you time. I feel like Carbon is a good match for this sort of app. But If you don't like it, Skeleton also seems like a good choice.

Also, imho you should be using display: flex a lot more! (or grid)

Either way, I like the initiative. I might be able to help out a little bit here and there, but I can't make any promises.

Good luck!

[โ€“] [email protected] 1 points 1 year ago

My coding style has always been to get out the core functionality then fix everything up, definitely not for everyone. Might be something I need to reconsider when working with others.

I love carbon, but I chose Ionic is because its very suited for mobile development. On the other hand it seems to have very severe limitations for mobile so it seems I have to pull in something else in as well.

The page load takes way too long (you should be using #await whenever possible)

I will, though part of the reason its slow is because its hitting lemmys backend over the network, as opposed to just a local network in a normal setup.

[โ€“] [email protected] 1 points 1 year ago

Oof I can't do web dev. Good luck with the project though.

[โ€“] [email protected] 1 points 1 year ago (1 children)

Is there a reason why you mixed js and ts?

[โ€“] [email protected] 1 points 1 year ago

Maybe he wants to live dangerously?

[โ€“] [email protected] 1 points 1 year ago (1 children)
[โ€“] [email protected] 4 points 1 year ago

Right now its just fetching from lemmy.world. But I have my own instance on the same server as the front end client I can point it to.

[โ€“] [email protected] 1 points 1 year ago

Please let me know when you have a discussion place for lemmy-ui-svelte - want to keep up on daily and try to contribute