Quacky banner

Quacky

16 devlogs
49h 50m 47s

Simple and open social media

This project uses AI

VS code autofill.

linus

Ok so its been a while.

  • Added Shorts: You can now post videos as content on Quacky! Go to /shorts to start doomscrolling šŸ˜Ž
  • AI pre-moderation: Whenever a user reports a post, an AI model (currently gpt-oss:20b) will take a look at the post content. If it discovers that there is obvious inappropriate content, it will automatically unlist and make the post read-only until an administrator takes action. For privacy, the AI will only ever look at posts when someone reports. Check the attachments in my devlog to see it in action!
  • Added another codebase (quacky-ai) for all algorithms and Ai stuff that I have planned. Didn’t want to bundle in that stuff in the main codebase because yeah.
  • Added a administration panel for moderators: You can now directly edit posts, users, and replies at /admin if you have the administrator role on your account. It’s not the prettiest panel in the world but its just for me to moderate the server.
  • Added a couple extra APIs for interfacing with admin stuff. Needs a admin session token in order to use. Endpoints are at /api/v1/admin
Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
0
linus

This is the last cleanup i promise… ive learned how damn annoying types are..

  • Cleaned up UI components, they are fully modular, which means its actually possible for people to mod quacky and create your own custom pages!
  • Changed to GIthub OAuth (temp as i migrate to google, the app is being approved.)
  • Added a markdown renderer to display a couple help pages, terms, privacy, and community guidelines.

I’m working on DMs and a Instagram Reels/YT shorts clone next. Stay tuned.

Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
0
linus

Revamped settings ui.

Added administration panel for admins to manage settings.

Added a config table to replace some env variables and json file that was previously packaged into docker image.

MOST IMPORTANTLY: Cleaned up those nasty types omg merging v1 code with my new code is a disaster with ts it takes too long

Updated email appearances. Looks nice now

Attachment
Attachment
0
linus

Added moderation actions, finished V2 of Post component.

Not much else.

Attachment
0
linus

Nothing really to show:
Just did a bunch of backend work with the APIs, started creating extra DB tables like DMs & Admin stuff for features not yet complete.

  • Deprecated legacy APIs with /api/v1
  • Redo homepage UI. Big UX improvements & shorter loading times.

Making the UI for new features is next.

Attachment
0
linus

Been cleaning up a lot of code, getting it all nicely packaged up.

  • Added OpenAPI and Swagger documentation for all API routes.
  • Following / Followers and notifications now fully work.
  • In the process of adding a ā€œShortsā€ feature like yt shorts.
  • Fixed a bug where banning users wouldn’t revoke their access to existing signed in sessions.
  • Terms and Privacy Policy have been added.
Attachment
Attachment
0
linus

Shipped this project!

Hours: 18.8
Cookies: šŸŖ 417
Multiplier: 22.17 cookies/hr

Finally finished V1! It’s live at https://quacky.linus.my

I hope you enjoy it. It’s only the beginning of this app as I’m using it as a framework for a competition I’m taking part in.

Expect bugs, I’m already fixing some after V1 releases.

linus

Finished welcome email, following/followers, search and post pages.

Attachment
Attachment
Attachment
0
linus

Quick update
You can now upload attachments on posts!

All assets are stored using S3, and in my app’s case, I’m using my custom S3 storage server because minio has become deprecated :|

Attachment
0
linus

Been cleaning up the codebase to get ready to ship. Made a new onboarding form.

Gotta love cleaning code for 4 hours straight…

Oh yea, and ive made new iterations of the mascot. looks pretty cute dont you think

Attachment
Attachment
0
linus

Revamped all of the Post and User routes, improved UI, designed app mascot called quacky.

my next steps will be to finish all of the platform features and launch into beta. the only things remaining are:

  • Reposting
  • DMs
  • Following
  • Admin panel stuff
  • Attachment uploading to posts.

I’m getting very close!

Attachment
2

Comments

CT5
CT5 29 days ago

This looks like a really cool project, is there an app for it?

linus
linus 28 days ago

There will be eventually. I’m planning to make the client side app using Expo after I finish all of the main website features and open source it.

linus

Cleaned up all the code, and added 2 new views: private and banned.

Additionally, added proxy middleware to make content on the site viewable to only signed in users

Attachment
Attachment
0
linus

Added notification services.

See the image for how it looks.

Attachment
0
linus

Added replies to posts. APIs and module functions have been added.

Additionally, theres now a new page for viewing and replying to posts at /post/[postId].

Attachment
0
linus

Added profile page along with recent post activity.

Additionally, I implemented the like/unlike functions for posts. There is an API and import module you can use eventually when I ship.

Attachment
0
linus

Added ability for users to post. There are 3 types:

  • Normal post (users will mostly be using this)
  • Read-only (Useful for posting announcements where you want to disable comments or reactions)
  • Pinned posts (Pin a post to the top of everyone’s feed)
    There will be a feature to upload pictures and files at a later stage.

Additionally, I’ve started work on drafting UI for the profile page.

Attachment
Attachment
0
linus

Implemented authentication with better auth, started on UI design.

Attachment
Attachment
Attachment
Attachment
2

Comments

inw
inw about 1 month ago

happy_ping_sock better auth yay

linus
linus about 1 month ago

better then auth.js thats for sure!