Cr4yfish

joined 1 year ago
MODERATOR OF
[–] Cr4yfish@lemmy.world 1 points 2 minutes ago

Thank you!. Let me know if you find out more about the issue. I'll also keep an eye out for the cause.

[–] Cr4yfish@lemmy.world 1 points 6 minutes ago

Thanks, haha. I'd love develop a Native App for it too but this is a zero-budget Project (aside from the Domain). PlayStore has a one-time fee so that's 25€ for Android + 8€/Month for the IOS AppStore just to have the App on there.

In theory, I could just have a downloadable .apk for Android to circumvent the fee but most people don't want to install a random .apk from the internet. And I'm not developing a Native App for like 3 people excluding myself (I'm an iPhone user).

Soo, yeah that'll probably not happen :(.

[–] Cr4yfish@lemmy.world 3 points 49 minutes ago (1 children)
[–] Cr4yfish@lemmy.world 2 points 50 minutes ago (3 children)

Hm that's very weird. I can't replicate it and I used some random SSL checker website and it checks out as well.

Really not sure why that's happening.

[–] Cr4yfish@lemmy.world 10 points 1 hour ago (2 children)

it’s implied it’s licensed under "all rights reserved", so not open source!

Oh, I actually did not know that. I'll try to remember adding a License right from the get-go from now on, thanks :)

[–] Cr4yfish@lemmy.world 8 points 1 hour ago

It's GPLv3 now.

[–] Cr4yfish@lemmy.world 3 points 1 hour ago

oh, right. Forget that every time. I'll add one.

[–] Cr4yfish@lemmy.world 3 points 2 hours ago

I use Gemini, which supports PDF File uploads, combined with structured outputs to generate Course Sections, Levels & Question JSON.

When you upload a PDF, it first gets uploaded to a S3 Database directly from the Browser, which then sends the Filename and other data to the Server. The Server then downloads that Document from the S3 and sends it to Gemini, which then streams JSON back to the Browser. After that, the PDF is permanently deleted from the S3.

Data Privacy wise, I wouldn't upload anything sensitive since idk what Google does with PDFs uploaded to Gemini.

The Prompts are in English, so the output language is English as well. However, I actually only tested it with German Lecture PDFs myself.

So, yes, it probably works with any language that Gemini supports.

Here is the Source Code for the core function for this feature:

export async function createLevelFromDocument(
    { docName, apiKey, numLevels, courseSectionTitle, courseSectionDescription }: 
    { docName: string, apiKey: string, numLevels: number, courseSectionTitle: string, courseSectionDescription: string }) 
    {
    
    const hasCourseSection = courseSectionTitle.length > 0 && courseSectionDescription.length > 0;

    // Step 1: Download the PDF and get a buffer from it
    const blob = await downloadObject({ filename: docName, path: "/", bucketName: "documents" });
    const arrayBuffer = await blob.arrayBuffer();
    
    // Step 2: call the model and pass the PDF
    //const openai = createOpenAI({ apiKey: apiKey });
    const gooogle = createGoogleGenerativeAI({ apiKey: apiKey });

    const courseSectionsPrompt = createLevelPrompt({ hasCourseSection, title: courseSectionTitle, description: courseSectionDescription });
    
    const isPDF = docName.endsWith(".pdf");

    const content: UserContent = [];

    if(isPDF) {
        content.push(pdfUserMessage(numLevels, courseSectionsPrompt) as any);
        content.push(pdfAttatchment(arrayBuffer) as any);
    } else {
        const html = await blob.text();
        content.push(htmlUserMessage(numLevels, courseSectionsPrompt, html) as any);
    }

    const result = await streamObject({ 
        model: gooogle("gemini-1.5-flash"),
        schema: multipleLevelSchema,
        messages: [
            {
                role: "user",
                content: content
            }
        ]
    })
    

    return result;
}
[–] Cr4yfish@lemmy.world 3 points 2 hours ago

Understandable. I added a proper offline mode back to the Roadmap on github.

[–] Cr4yfish@lemmy.world 5 points 2 hours ago

I added it back to the roadmap :).

[–] Cr4yfish@lemmy.world 6 points 3 hours ago (5 children)

Thanks :). Yeah, it's publicly accessible: nouv.app/. I use it daily already but it still has tons of bugs.

[–] Cr4yfish@lemmy.world 3 points 3 hours ago (4 children)

The UI mostly works offline once loaded in due to aggressive caching. Downloading Course Content was on the initial Roadmap but I removed it since I wasn't sure if anyone would like the feature.

Syncing stuff is a real pain in the ass but I'll implement it if at least a couple people want it.

 

With every new App published on IOS I wonder again how the financing works. Just through donations, or do you "take one for the team"?

1
submitted 1 year ago* (last edited 1 year ago) by Cr4yfish@lemmy.world to c/lemmydev@lemm.ee
 

Does anyone know how to get the trending communities? Or do you have to calculate that yourself?

I've studied the API docs like my life depends on it but I can't find it anywhere.

1
submitted 1 year ago* (last edited 1 year ago) by Cr4yfish@lemmy.world to c/lemmydev@lemm.ee
 

Since the docs are horrible I think making a megathread here with Q&As and best practices for endpoints would be nice. Would've certainly helped me when I started out.

What do you guys think?

 

Maybe not having to clearly see that repost again is actually a feature :)

1
submitted 1 year ago* (last edited 1 year ago) by Cr4yfish@lemmy.world to c/nemmy@lemmy.world
 

Hi all, Dev Update #4 here

Today I didn't have much time to work on Lemmy, so not a lot has changed.

Installable App

Nemmy is now available as an installable PWA for Android, IOS and Windows (10&11).

The App is also currently in review for a Google Play Store entry and I swear to god I only had bad experiences building Apps yet and this is just another one. So many errors and weird workarounds. Also, working with Java (Kotlin) sucks. (This also means that I will look for Alpha Testers soon)

However, Nemmy won't appear in the IOS App Store for at least some time since it's way too expensive (100$/Year just for the listing). So IOS Users will have to use the PWA (which is basically the same though).

With this update, Nemmy also received new Icons, Banners etc.

New Domain

Previously, Nemmy was available via a temporary URL provided by the hosting provider (www.nemmy.vercel.app).

Now, Nemmy is reachable via https:/nemmy.app and, of course, https://www.nemmy.app

Well, that's it for today.

I will continue working on the community page, Login and User page over the next couple of days.

See you soon :)

1
submitted 1 year ago* (last edited 1 year ago) by Cr4yfish@lemmy.world to c/nemmy@lemmy.world
 

To do that, visit the new URL nemmy.app and click the install button. On phones that's usually in the sidebar/options menu.

 

Hello again, time for Update #3

First off: As always, the live version is here for you to try out.

Post Page

Today I mainly worked on the Post page, which "works" now.

And here's how the comment section looks (there should also be comment chain lines for nested comments but I'm still working on that)

For some reason, the post content fails to load frequently and I'm not too sure if that's a problem on my side or if the popular Lemmy instances are still overloaded - I will investigate that further over the next days.

I've also made a loading card animation, which should be a lot better than the plain "Loading" text (which wasn't even visible in light mode)

Light Mode Updates

I also made big improvements to the Light mode (which right now can only be activated by setting the browser/OS theme)

Mobile design improvements

Well that's it for todays Update

Over the next days I will fix some current bugs and add more features like Login, Search and a Community Page. Thanks for stopping by!

1
submitted 1 year ago* (last edited 1 year ago) by Cr4yfish@lemmy.world to c/nemmy@lemmy.world
 

That version is live on Nemmy. Heads up: The Post page is buggy as hell right now. If it doesn't load, just refresh until it does.

 

Hey everyone, I'm back with todays progress update :).

As always, you can try out the newest version for yourself here

Design

I updated the color palette because the black background was a little harsh on non-OLED devices. So now it's a little more shaded. The Post and Navigation Bar designs got also a little update.

The new Mobile Design

The updated Desktop design

Roadmap

For now, I will continue working on the Feed design and will also start designing the Post page tomorrow.

After that is done, I will code the login process and then all the features related to a user (e.g. the "Home" feed, commenting, voting etc.).

All-in-all I think it'll take about a week or so until the features are all there and the design is passable as a prototype.

Well, that's it for update 2!

Thanks for stopping by and I hope to see you next time :).

1
Dev update #1 (lemmy.world)
submitted 1 year ago* (last edited 1 year ago) by Cr4yfish@lemmy.world to c/nemmy@lemmy.world
 

Hi everyone,

this is the first progress update of Nemmy!

I'll start things off by answering a few questions you might have:

Why am I doing this?

I love the idea of Lemmy being a federated Network rather than a single entity like Reddit and I want to fully leave Reddit behind me and use Lemmy. However, I'm not that fond of the default design for Websites right now.

There are a few alternatives for phones, but not really yet for Desktop Browsers, so I'm doing one myself.

What are the Project goals?

The first goal will be to have all features a typical User would want working and a UX that's better than or on-par with the default Website.

Can I help out?

Yes! This project is, of course, fully open source. Here is the GitHub Repo.

Design

Currently, I'm designing the first iteration of the Website, this means that it's very rough (e.g. placeholder Images, Icons, Text).

As for the design, this is what I've got after around half an hour of trying things out:

The Posts are "inspired" by Reddits design right now, but I plan to change that

I'm also planning on adding a compact version (again, "inspired by Reddit for now)

Colors

As for the colors, I'm thinking dark mode by design with an optional light mode in the future. The Dark mode will heavily rely on black/shaded backgrounds, I'm going to refer to the Material Design 3 guidelines on that.

But I'm also planning on incorporating something like "Material You" into the Website, with which Users can change the complete color palette with ease.-->

That's it for Dev Update #1

If you have any questions, feedback, suggestions or anything else really, feel free to let me know :)

 

Welcome to Nemmy! This project is highly work-in-progress.

Right now I'm in the middle of the design phase and will be posting updates shortly.

If you have any feedback or suggestions, please feel free to share them with me :)

view more: next ›