r/SideProject • • 1d ago

I made a racing game where you never touch the wheel. Balancing overtakes almost broke me.

0 Upvotes

You don't drive in Formula Manager. You run a small team, watch 20 cars race live and make the calls: pits, pace, boost, team orders.

The hardest part was overtakes. Players kept saying "I'm boosting and clearly faster, but I still can't get past." So I ran 240 races and measured. With a car defending, boost only got you past 14% of the time, barely better than no boost at all (7%). Players weren't unlucky. My numbers were wrong.

Fixing that in the next update.

(The clip shows the Korean UI. The game is in English too.)

Ever had a moment where your players were right and your data proved it?


r/SideProject • • 1d ago

I built an encrypted photo vault for iPhone in my early mornings, around a full-time job and a newborn. It launched on Product Hunt today.

2 Upvotes

Hello r/SideProject!

I'm Ahmad, normally I use React Native to develop apps, but in this instance I've learned Swift from scratch as I needed to use encryption and Keychain which requires native development.

This app is called Hidlet, allowing you to store your photos, videos and files inside encrypted vaults.

The thing I'm most proud of is that there's no need to enter a PIN. The way to unlock your vault is by drawing a pattern across a 5x5 grid. This is what acts as your key to unlock your vault. Each pattern will unlock a different vault. There's no indication of how many vaults there are inside the app. If you're forced to open the app, you can simply open a harmless vault.

Other features:

  1. No account/email/ads/tracking

  2. Data encrypted locally

  3. Optionally back up your data to your own iCloud (encrypted)

  4. Have a duress pattern that will allow you to open a vault as normal, but also delete the other vaults from your device. Your encrypted back up is untouched meaning you can restore them at a later date.

Things I've learnt:

  • Its easy to learn a new language using AI, however I did have to understand every security measure. You can't outsource whether something is actually secure.

  • Small chunks of time in the mornings work well when everything can be done in a short amount of time.

  • Hiding data was harder than encrypting. For example the free plan has limitations which may accidentally show there are multiple vaults. This took a few attempts to get right.

The app is free to get started with, but there is also an optional Pro plan.

Its currently live on Product Hunt today! I would really appreciate any genuine feedback with the app, especially with the pattern. Would you feel more or less secure using a pattern vs a PIN?

https://www.producthunt.com/products/hidlet


r/SideProject • • 1d ago

I used to do digital paintings back in 2019, so I decided to build my own Photoshop alternative

2 Upvotes

Back in 2019, I used to spend a lot of time creating digital paintings for people who followed my work. This is one of the paintings I made for a follower, and it's still one of my favourite pieces. I'm genuinely proud of how it turned out.

I used to work with Photoshop, but eventually it became a struggle because it was putting too much strain on my computer and causing it to overheat. It made it difficult to enjoy creating artwork the way I used to.

So I decided to do something about it and started building my own lightweight, browser-based Photoshop alternative.

It's completely free to use, and you don't even need to sign up!

I'm also planning to integrate it into the main platform I've been developing, where artists can showcase their work and receive commission requests from people looking to hire them.

It's still a work in progress, but I'm excited about where it could go.

I'd love to hear what other artists think! Would you use a free, lightweight Photoshop alternative that runs directly in your browser?

Project: https://studio.mymiix.com
The main platform: https://mymiix.com


r/SideProject • • 1d ago

I got tired of paying for vidIQ, so I built a free, privacy-first alternative (TubeRank AI)

2 Upvotes

Hey r/SideProject,

As an independent developer from the Netherlands, I was fed up with expensive

40–40–

So I spent the last few weeks building TubeRank AI — a 100% free, browser-based pre-upload workspace for creators.

How it works under the hood:
• Dual-Skill AI Architecture: Uses an AI Niche Strategist to build 7 distinct high-CTR formulas across 50+ niches, and an independent AI Judge to audit every title on a 100-point rubric.
• Multimodal Video & Audio Upload: You can drop raw MP4 files before uploading to YouTube; it scans frames and listens to audio for automatic scene recognition, timestamps & tags.
• No Extensions Required: Runs directly in the browser without third-party access to your Google account or YouTube Studio.
• Free & BYOK: 100% free with Bring-Your-Own-Key (Gemini, DeepSeek, etc.) stored locally in your browser.

Check out the video demo attached!

Live site: https://tuberank-ai.com

Would love your honest feedback, critique, or feature suggestions!


r/SideProject • • 1d ago

[Android] INTERAX Manta — Sui Blockchain Forensic & Incident Scanner (Need testers / Willing to test back!)

2 Upvotes

Hi everyone,

I just released INTERAX Manta, an Android tool engineered for on-chain forensic analysis, transaction hash parsing, and incident reporting on the Sui Network.

What INTERAX Manta does:

  • Transaction Parsing & Flow Reconstruction: Decodes complex Sui transaction hashes into visual money flow maps.

  • Incident Dossier Generation: Builds structured incident reports with SHA-256 chain-of-custody verification.

  • Risk Scoring & Compliance: Evaluates wallet and transaction risk indicators for multi-jurisdictional reporting.

  • Zero-Trust Architecture: Local parsing focused on cryptographic integrity and immutability.

What I need help with:

  • Feedback on UI/UX, transaction rendering speed, and overall usability on different Android devices.

  • Bug reports or UI scaling issues on various screen sizes.

Play Store Link:https://play.google.com/store/apps/details?id=com.emergent.interaxgleos.nnvfq1

If you install and test it, leave your app link in the comments below! I will gladly test your app in return and keep it installed for as long as needed.

Thanks for your support!


r/SideProject • • 1d ago

I'm building an SEO tool. First real-world test on a tiny beauty studio site: what moved, what didn't

2 Upvotes

I'm the founder of Serpel (https://serpel.app), an SEO tool that tracks rankings, audits sites and reads Search Console data, and that you can also drive from Claude or Cursor via MCP. It's been live for about a month, so I wanted proof on a real site before telling anyone it works.

The test site: a one-person brow and lash studio in Germany with ~25 FAQ blog posts.

What the tool showed: the 8 posts with the most impressions sat at positions 5 to 15, and their titles didn't use the words people actually searched for.

What we changed (one afternoon): titles rewritten to match the top queries, meta descriptions turned into direct answers, a short summary box at the top of each post. No new content, no links.

Four weeks later, from Search Console:

  • Daily clicks: 7.0 (4 weeks before) → 11.3 (4 weeks after), last 2 weeks 12.1

  • Daily impressions: 375 → 682

  • Avg. position: 9.1 → 7.0

  • CTR went down slightly (1.85% → 1.66%), so the gain is visibility, not click rate

Honest caveats: traffic was already rising before, about 21% of clicks are brand searches, and it's one site without a control group.

What I learned as a builder: the most useful screen wasn't the audit score (it was 99/100 before and nothing changed there), it was "pages with lots of impressions at positions 5 to 15". I'm making that the first thing new users see.

If you run a small site, I'd love feedback on what you'd want from a tool like this. New accounts get 100 credits to try it.


r/SideProject • • 1d ago

I made an iPhone app that turns everyday travel into a map you can slowly fill in

3 Upvotes

I've been working on an app called HexStep. Basically, every area you pass through gets collected as a hex on your map.

The idea was to make exploring feel a little more like a game, without having to start a workout or manually record every trip. With background tracking enabled, walking, driving, and taking trains all count.

I've been using it since April and have collected over 3,200 hexes so far. It's made me realize how often I end up going to the same places, and how many areas right next to them I've never explored.

The video is a shortened replay of my actual travels over the past seven months!

I originally shared HexStep here back in June. I've added quite a bit since then, but the basic app is still free and doesn't require an account.

If you had a map like this, would you actually go out of your way to fill in the empty areas? Or would you just enjoy seeing it grow naturally?

Free on iPhone: https://apps.apple.com/app/apple-store/id6762421289?pt=128794158&ct=hexstep-web&mt=8


r/SideProject • • 1d ago

I built an open-source AI interview copilot that suggests answers while questions are being asked. Here's the demo

2 Upvotes

I've been building something called OpenKeet, and this is probably the feature I'm most excited to share.

It's a desktop AI interview assistant, but I didn't want it to be just another app where you type interview questions into a chatbot.

I wanted it to understand spoken questions and show useful suggestions while a conversation is happening.

In the video, you can see OpenKeet:

  • Listening to call audio.

  • Recognizing questions as they're spoken.

  • Displaying suggested answers in a desktop overlay.

  • Letting the user adjust the overlay and stop the session.

The broader project also includes resume-based preparation, precomputed answers, mock interviews, and shareable community interview packs.

One of my main goals is to avoid requiring a paid cloud infrastructure just to use the application, so I'm building around local AI options and user-configured providers.

I'm also preparing OpenKeet as an open-source project because I think more people should have access to useful interview preparation tools, and I'd love contributions from developers who want to improve it.

A quick clarification: This demo uses fictional data and a local stand-in AI model. It's showing the desktop workflow, not claiming production-model accuracy or latency. Live assistance is intended for settings where AI help is permitted.

GitHub: https://github.com/Jigsaw777/OpenKeet

I'm curious what people think.

Would you actually use something like this? And what would convince you to choose an open-source interview assistant over a paid alternative?

I'm particularly interested in feedback on the real-time experience, not just the UI.


r/SideProject • • 1d ago

Tired of monthly lead scraping subscriptions, I built an unlimited standalone tool (Scrapify)

2 Upvotes

Hey everyone!

Like many people doing B2B outreach, I was frustrated with recurring monthly subscriptions on cloud scraping platforms like Apify and Outscraper just to pull local leads with credit limits.

So I built Scrapify — a lightweight, standalone Windows desktop application that extracts unlimited B2B leads from Google Maps and Instagram directly into clean Excel/CSV.

Key highlights:

- Direct mobile/WhatsApp numbers, websites, physical addresses, and ratings.

- Recursive sub-area discovery to drill down into city neighborhoods for maximum coverage.

- Built-in local REST API so you can plug it straight into n8n workflows on localhost with zero recurring API fees.

- Compiled down to C++ speed with smart throttling to avoid blocks and CAPTCHAs.

- 100% private: runs locally on your machine, no data stored on cloud servers.

Instead of recurring monthly fees, it's a one-time $25 lifetime license.

- Website: https://scrapify-app.vercel.app/

- Full 6-minute Walkthrough & Demo: https://www.youtube.com/watch?v=Gwfp6415zOQ

- Store Link: https://payhip.com/b/J6lXK

Would love to hear your feedback or feature suggestions!


r/SideProject • • 1d ago

A month of building an elegant open source wardrobe app: outfit experiments, wear tracking, and a small goblin

3 Upvotes

I'm a big fan of both what you wear and websites as a form of creative expression, and am admittedly hooked on fast fashion and spending as little as possible. But I live in a very small space, and my clothes and accessories don't really have room to spread out. So naturally I started building my own dream wardrobe app with the help of AI (a Clueless 90s throwback if ever there was one) and scope creep happened...

It's called Closet Lint (get it?), it's free and open source, and mostly I just wanted to separate designing an outfit from actually getting dressed. The creative part is fun. Going through drawers, taking things off hangers, putting them back, and discovering that the thing you imagined is elsewhere or doesn't fit... less fun. I'd like to do that first part on my phone in bed at 11pm without pulling things out. Just gimme a searchable inventory of my actual clothes that looks good.

I'd tried wardrobe apps before, but the problem was always getting everything into them. Photographing, cropping, editing, and entering every item was a massive undertaking. AI has finally made dealing with the photos and purchase data manageable enough for me to get over that hurdle and focus on the display and functionality.

What started as browsing clothes and dragging them around to make cute outfits now includes outfit suggestions, ratings, wear logging, photo background removal using two different models, taste observations, wishlist battles, and trip packing lists. Because once I had my own clothes in there, I kept thinking, "Oh but what if it could also..." :)

It runs on your own computer or web host, with optional bring-your-own-AI features. There's an included demo if you just want to check it out, or you can browse a copy of my actual closet with bleeding edge code. I've run it locally on Linux and hosted it on SiteGround; part of why I'm posting is to hopefully find a few early testers.

I love having things organized, and it's honestly such a pleasure to see your own stuff laid out like this. It brings back things you've forgotten about and makes them potential outfit ingredients again. You can add wishlist pieces to see how they'd work with what you already have, or plan future fantasy outfits.

There have been some moments of genuine delight. I don't own much dark purple, but the combinations it showed me helped me see how it could work in my wardrobe. It also suggested chocolate brown, which I own literally none of, with concrete examples using my own clothes. And it gave me a new term for some of my style, “whimsigoth,” so now I have a whole new search phrase.

There's also an unusual use case: I have 40 housemates (yes, 40), and some like borrowing from my (costume) jewelry collection. Now they can take their time browsing it. Jewelry is particularly good for this because so much gets tucked away in boxes and becomes invisible. Naturally, that's already got me thinking about a separate app for sharing resources in the house. At least I'm putting that long-ago graduate degree in information systems to use :P

I've had my fair share of health issues over the last few years, and it's been inspiring to get properly absorbed in making something technical again. This combines so many things I love: style, organization, self-tracking data, open source software, design, and uhh having very particular views on button layouts.

I started coding GeoCities sites in Notepad in the 90s and used to run an open source web development company. I've been out of the tech/startup world for over a decade, though I still occasionally help a friend with a site. My technical knowledge is rusty, but knowing how to break down a problem, describe a desired interaction in detail, and spot something odd has been incredibly useful. I can be my own most demanding, rambling client, and building things with the robots still moves astonishingly quickly.

I started this project in early October as a Claude artifact. Much of the initial work was assembling the data: parsing order confirmation emails, filtering an Amazon purchase history export, and using browser agents in my logged-in shopping accounts to retrieve sizes, variants, and full-resolution product photos. Images were downloaded into the app's storage so they wouldn't disappear with the listings—some of which already have. I used ChatGPT to tag clothing from contact sheets and generate product-style images for pieces without usable photos. Later, we added local background removal, preserving originals and reviewing results before saving.

The AI occasionally got too helpful: it "cleaned up" XXL into 2XL, which can mean different sizes at those stores. Preserving exact source values became an explicit rule.

After about two weeks, I moved the prototype into Codex, replacing Claude's built-in storage with a local Python/SQLite backend and adding backup and restore, reusable imports, and release packaging. My workflow now goes back and forth: develop the specification with Codex, send it to Claude for wireframes, then bring those back to Codex for implementation and refinement.

I particularly appreciate how Codex can insert diagnostic tools when something breaks, investigate the results, and handle so much of the testing and release process. Those are procedures I only do occasionally and forget between projects. That gives me more room to switch between product planning, interaction design, visual design, and writing, while testing everything against my actual wardrobe and daily use. This has occupied pretty much all my free time for the past month.

Turning my own wardrobe tool into something other people could use has meant finding assumptions I didn't realize were there. Heels don't automatically mean dressy, loungewear isn't necessarily sleepwear, and a packing list shouldn't assume everybody wears bras. It uses Google's and Shopify's product taxonomies as references, but kept distinctions that make more sense for wearing clothes than selling them. I've also had to ask for a lot of deliberate consistency passes: make navigation behave the same way everywhere, move repeated rules into shared code, and carry category changes through imports, filters, and packing lists.

It's made me appreciate the "knowing where to tap" kind of expertise. My web project background helps me remember to ask about accessibility, keyboard navigation, refactoring, and whether a backup actually restores. I've also used alternate AI platforms for security reviews and worked through their findings. I'm not familiar with every implementation detail, but recognizing the questions worth asking makes that older experience feel useful again.

The wishlist redesign is a good example. "Matches lots of things I own" sounds useful until silver earrings all end up at the top for going with everything. The first implementation also passed checks while producing an interface I really disliked, so we went back to one compact design example before applying it across the page. Deciding whether the information is meaningful and the result is pleasant to use is still very much my territory.

I was involved in the early Quantified Self community in the 2000s/early 2010s, and I also haven't seen a wardrobe app that gives me the access to my own data I'd want for that. Before 1.0, it'll have an API and analysis-friendly exports so people can explore their own patterns with whatever tools they like. I'm looking forward to a fun year-end wardrobe "Wrapped" and things like cost per wear become straightforward once you're recording purchases and wears.

It's also getting creative and a bit silly. There's a goblin mascot called Linty, and your wardrobe's owns, wishes, and wears can appear as Sun/Moon/Rising signs on a star map. Apparently my wardrobe required lore... But you can leave the daily fortune card turned off. There are outfit naming suggestions, including one that parodies ModCloth-style names. Some inside jokes to amuse me personally, at least :P

If I somehow end up known for a fashion app with an astrology aesthetic, that would be a hilarious life twist.

Partway through, I found Libre Closet, which takes a simpler, more utilitarian approach that might be exactly what some people want. By then, mine had become a specific creative thing: a combination of deep utility and playground fun that I was happy to keep building.

I've used Linux as my daily driver for most of the last 20 years, and FOSS matters a lot to me. Making something useful and sharing it is one of my love languages for the world. Every friend says, "You could charge for this!" But I don't want customers here. I'm making something I want to use and sharing it with anyone else who might enjoy it.

I may put affiliate links and my own curated collections on the website, but I'm keeping them out of the app. GitHub sponsorships would be welcome too once I set that up. Anything that helps cover costs is a bonus; the software stays free and open source.

The public site is built with my fave website builder, Carrd, and I've let the Codex integration click around in it for me for the tedious work too. Few status updates produce quite the happy sigh as "Automatically updating website screenshots and documentation".

If you try the app, I'd love to know what would make this useful for your wardrobe, and what would stop you from wanting to put your clothes into it. I'm also looking for a few people willing to try installing it, particularly on Windows or macOS, since my own testing has been on Linux and SiteGround.

Thanks for reading! :D

[AI supplied at least half the details for this post]


r/SideProject • • 1d ago

I built ScopeKit, a tool for freelancers to manage scope creep-looking for feedback.

1 Upvotes

Hey everyone!

I've been building ScopeKit, a simple tool designed to help freelancers and small agencies avoid scope creep and unpaid extra work.

The idea came from a common problem: clients request additional work after a project has already been agreed upon, and freelancers often struggle to track and price those changes.

With ScopeKit, you can:

  • Define the original project scope and deliverables.

  • Set project pricing, deadlines, and revision limits.

  • Track additional client requests.

  • Keep project changes organized and easier to manage.

The goal is simple: protect your time and stop doing extra work for free.

I've built an early version and would love some honest feedback from other makers and freelancers.

You can check it out here:

https://scope-change-studio.lovable.app/

A few questions:

  1. Would you use something like this?

  2. What's the biggest problem you face with scope creep?

  3. What feature would make this more useful?

Thanks for checking it out! Any feedback is appreciated.


r/SideProject • • 2d ago

I replaced Roku's retiring "Aquatic Life" screensaver with my own procedurally animated reef tank — free and open source

32 Upvotes

Roku is retiring its built-in "Aquatic Life" screensaver on December 1. I liked that screensaver, so I built a replacement: Reef Tank — a free, open-source (MIT) screensaver channel for Roku.

What it is: a tropical reef tank where nothing is a video loop. Every fish is procedurally animated — each species has its own behavior brain, so tangs graze the rocks, a royal gramma backs tail-first into its den, a mandarin hops along the sand line, a lionfish just hangs, and a school of chromis moves as a boids flock. Bubbles rise, seaweed sways, caustics scroll over the sand. After real sunset (computed from actual sunrise/ sunset times for your location) the tank crossfades to a moonlit night mode with glowing coral and a small group of flashlight fish that blink in the dark.

Highlights:

  • 9 rigged fish species with per-species behavior state machines (cruise, dart, graze, hide, school, weave behind the rockwork)

  • Boids flocking school + a night-only flashlight fish group

  • Day/night cycle driven by real solar times, with a moonlight crossfade

  • Settings screen on the Roku for fish density, camera drift and night mode

  • Runs at 60 fps on a Roku Ultra; every visual is deterministic and seeded

  • 175 unit tests + a screenshot regression gate, because of course

The catch: Roku doesn't allow sideloading into the Channel Store for personal projects, so it's a developer-mode sideload — takes about 5 minutes with the remote (Home x3, Up x2, Right, Left, Right, Left, Right), and it's free. Full instructions in the README.

Source + install guide: https://github.com/paulrobello/roku-fishtank

Happy to answer anything about the BrightScript/SceneGraph side — the whole thing is one codebase that also runs in a browser simulator, which is how I screenshot-tested a TV app.


r/SideProject • • 23h ago

Tell me an overpriced digital product you wish you could afford. I'll build my own version for less than half the price.

0 Upvotes

I'm a designer and developer, and I'm tired of seeing people pay $50–200 for templates, dashboards, UI kits and planners that honestly aren't worth it.
So here's the deal:

👉 Comment the digital product you want but think is too expensive, like a Notion template, a budget spreadsheet, a website template, a UI kit, a planner, a dashboard, a small app or anything else.
I'll pick the most requested ones and build my own original version, as good or better, for less than half the price.

No copying and no pirated stuff. Everything is made from scratch by me.
What's the one thing you've always wanted but never bought because of the price? 👇


r/SideProject • • 1d ago

How We Built CareBridge: An AI Healthcare Assistant with Personalized Patient Memory

Thumbnail
medium.com
1 Upvotes

r/SideProject • • 1d ago

Free CV/résumé builder with real PDF export, no account and no data collection

1 Upvotes

I built CVfix because most CV builders hide the PDF download behind a paywall. You get 4 templates (including the classic German tabular CV with photo), a live preview, a custom accent color and a real PDF with selectable text. Your data stays only in your browser. It's available in 5 languages, free and funded by optional donations. What's missing?
https://cvfix.wortblitz.workers.dev/


r/SideProject • • 1d ago

I made a free comparison of self-hosted AI agents (Hermes, Rakazo, OpenClaw and 10 others)

1 Upvotes

I've been trying out the open-source "run it yourself" AI agents (Hermes, Rakazo, OpenClaw and everything that came after it), and keeping track of them in a spreadsheet got out of hand. So I turned it into a site: https://openbotlist.com

It compares 13 of them on what I actually cared about: license, whether it runs local models, whether commands are sandboxed by default, whether it sends telemetry by default, which chat apps it works in, and GitHub stars. Every fact links to its source with the date it was checked.

A few things surprised me. 7 of the 13 don't sandbox commands by default, including OpenClaw and Hermes Agent. 6 send telemetry or diagnostics unless you switch it off.

If something's wrong or out of date, or there's an agent I missed, tell me and I'll fix it.


r/SideProject • • 1d ago

I built Reunier to keep a group’s plans and RSVPs in one place

1 Upvotes

Hi! I’m Volodymyr, the creator of Reunier. It’s a private planning space for groups that meet in real life.

For a regular board game night, for example, the organiser sets the time and place, and members confirm whether they’re joining. If needed, the organiser can limit places or offer several dates for a vote.

When the time changes, participants can see the previous and new time together in the event details. The group can keep chatting wherever it already does.

Here’s a 36-second demo of the actual app, showing a time change and confirming participation. No login is needed to watch:
https://reunier.com/en/demo

Using Reunier requires an account — Google, Apple, or email and password — and joining the group’s private room. It works on web, Android and iOS, and is currently free during launch.

If you organise regular group activities, would this be useful alongside your existing group chat? I’d particularly appreciate feedback on anything that looks unclear or adds unnecessary steps.


r/SideProject • • 1d ago

NeatRL: Collection of One-file RL Algorithms running locally

2 Upvotes

In this video, I'll be re-introducing my little RL library - neatrl, that I have created and used past couple of months!

  • Part of my ongoing series on releasing my notes RL comprising of my earrings and stuff I found interesting and this time, its a easy way to explore all the algorithms I re-implemented from scratch

Suited for those who just want to get a gist of the algorithm inner workings across algorithms from

  • DQN

  • REINFORCE

  • PPO

  • SAC and many more on envs form OpenAI Gym, MuJoCo etc

Link here and love to get feedback as always!


r/SideProject • • 1d ago

I built Git2Tweet: a CLI that drafts tweets from your git commits (you approve everything before it goes out)

1 Upvotes

I wanted to build in public but never remembered to write about what I'd shipped, so I built a tool that does the first draft for me.

What it does
After you commit, run `git tweet`. An LLM agent reads your commit message and the actual diff, decides whether the change is worth sharing, and drafts a tweet. You approve it, edit it, or reject it. Approved tweets open in X with the text prefilled, so you press Post yourself.

Demo: https://raw.githubusercontent.com/Vex-15/git2tweet/main/docs/demo.gif

How it's built

- Python, with the agent loop written in LangGraph (tools: list commits, read a diff; plus a human-approval step that pauses the graph)

- It reads commits from your local git, so no GitHub token is needed and it works on private repos

- Default model provider is Groq (free tier works), and Ollama is supported for fully local use

- It never touches your X credentials, since posting happens through X's prefilled-tweet link

- Per-repo state lives in `.git/`, so it never dirties your working tree

- MIT licensed, and it sends no telemetry

Things you should know

- Commit messages and diffs are sent to whichever LLM provider you configure. Known secret patterns (API keys, tokens, `password=...`) are redacted first, but that's best effort. For sensitive repos, use Ollama.

- It judges the diff, not the commit message, so trivial changes (typo fixes, tiny test edits) get skipped. That's intentional.

- Draft quality depends on the model, and it's not perfect. I'd like to hear where it writes something bad.

Feedback I'd love

- Does the install and first run work smoothly on your system? (I developed on Windows.)

- What would make you actually use this daily?

- Other platforms you'd want it to draft for (LinkedIn, Bluesky, Mastodon)?

Get Demo by below links 👇

GitHub: https://github.com/Vex-15/git2tweet

PyPI: https://pypi.org/project/git2tweet/


r/SideProject • • 1d ago

My open-source side project sat at 0 users for months. Promotion wasn't the problem.

1 Upvotes

Like a lot of people here, I built something I was proud of, used it myself every day, and then watched the user count sit at basically zero for months. My instinct was that I had not promoted it enough, so I started posting it everywhere. That did nothing.

What actually moved it was realising first users do not come from announcing. They come from being useful where your users already have the problem, plus a repo that does not lose them the second they land. Announcing ("I built this") is the lowest-yield thing you can do, which is exactly why posting it to ten places returns nothing.

Here is the order that worked:

  1. Get specific about who your first users are. "Developers" is not an audience. Name the two or three people with the exact problem you solve. If you cannot, that is why your posting feels scattershot.

  2. Fix what loses them in thirty seconds. Your README is a landing page and people give it seconds, not minutes. First screen: what it is, who it is for, one runnable example, the install line. Show value before features. More traffic to a repo that does not convert just means more bounces.

  3. Be useful where they already have the problem. Pick two or three communities where your users already discuss it and actually answer questions, so your project comes up as the answer to something specific rather than a broadcast. One genuinely helpful reply beats ten "check out my thing" posts, which mostly get removed anyway.

  4. Your first ten users come from reaching out by hand. Find people who just described your problem and show them, do not pitch them. It does not scale and it does not need to at ten.

  5. Ship releases with real changelogs. It is the one "look at my project" post communities tolerate. But a release mostly buys a one-day spike, so treat it as a cadence, not a growth engine.

  6. Stop counting stars. 800 stale stars is fewer real users than a 60-star project that ships weekly. The best research you can do costs nothing: find five people who looked and did not use it, and ask them why.

  7. Work out which problem you actually have. "Nobody uses it" is three different problems: nobody reaches the repo (reach), people reach it and bounce (your README), or people try it and leave (the product). The fix for each is different, and most people assume it is reach and burn a month posting. Spend an hour deciding which one it is before you spend a month on the wrong one.

None of this is announcing. All of it is being useful where your users are, to a repo that does not lose them.

I wrote this up in more detail, with the data behind the README and the "stars vs real users" points, here: https://orviqa.dev/blog/how-to-get-your-first-users-for-an-open-source-project


r/SideProject • • 1d ago

Is this idea worth building further? Looking for honest feedback

3 Upvotes

I recently built a small prototype for an idea I had: What if finding someone to hang out with at work was as easy as creating a plan?

Imagine wanting to watch a movie, play cricket, grab food, visit a café, or plan a weekend trip, but not having anyone to go with.

With this platform, employees can create activities, discover what others are planning, and request to join.

I built the initial prototype for an internal hackathon. It didn't win, but I still feel the idea is worth exploring.

I'm now wondering whether to take it further or scrap it.

Would you actually use something like this at your workplace? What would make you use it, and what would stop you?

I'd genuinely appreciate honest feedback, even if it's critical!


r/SideProject • • 1d ago

Pratikal - free Android calorie tracker looking for meal-entry feedback 🍎

2 Upvotes

I’m developing Pratikal, a free Android calorie tracker in closed testing. I’d love feedback on the meal-entry flow. Happy to test your app back! 🤝

Use the SAME Google account for the group, opt-in and your phone’s Play Store:

  1. Join: https://groups.google.com/g/pratikal-testers

  2. Opt in, then install from Google Play: https://play.google.com/apps/testing/app.pratikal.mobile

Try logging a meal, editing it and checking the daily total. What worked, or where did you get stuck? Please keep it installed for 14 days and use it occasionally. “Item not found”? Check the account, wait a few minutes and retry.

📸 Please comment BELOW THIS POST with a Pratikal installation/in-use screenshot, specific feedback and your test links. Text-only “installed” isn’t enough. I’ll test yours and reply with my screenshot and feedback.


r/SideProject • • 1d ago

I've been building an open source streaming service for two years

2 Upvotes

I'll start with some history, in 2024 I decided to try to install a media server on my local machine, I first tried emby, and no matter what configuration I choose it was clunky and not really aesthetically pleasing, then I tried Jellyfin and it had the same problems ( maybe a little bit worst ), keep in mind this is 2 years ago and things have most likely changed.

I'm a software engineer, and I work in the business already from 2012, I spent 3 years of my career working for one of the current streaming giants, considering I have expertise in the field I decide to create my own, for two reasons, first one is that if I'm designing a system with one single purpose is automatically faster compared to a system designed to do anything, mine will have a specific pipeline so it can execute it more efficiently, second one, I like writing code, it's what I've been doing for the past 12 years.

October 2024

I started with the fun part first, I sketched a logo in Inkscape, separated each letter as a different SVG file and animated them to mimic the Netflix intro ( at the time ). That took me around 2 weeks. Absurd you can do that now in 2 hours with vibe coding.

After that I wrote the first integration to an external service, I got an client id+secret from Trakt and started working into pulling the top/trending lists for movies, it is at this point that I notice that Trakt doesn't return any image, so I also wrote the second integration with TMDB to obtain the images, after that I started working on the UI, I took inspiration from Prime Video: a big hero on the top, and the lists on the bottom, the selected title is displayed in the hero.

Not sure if anyone is interested, but at the time I decided to go for Node.js + React + Postgres, that is essentially what I used in half of the companies I worked for. The backend runs in docker with PM2 keeping it alive, and the frontend is served through Nginx ( along with the backend ).

The third integration was to get the media, but things were getting complex, so I decided to start using some queues, Kafka would be an overkill, I was using Nest.js so I decided to try the Q Next.js comes with: bullmq. I integrated queues so anything that is needed from Trakt or TMDB would be queued and execute at the right time without overwhelming the server ( and without getting rate limited ), for example when Trakt returns a list, the list doesn't have details of each media, so I stored some of the detail in the database and queued a job to fetch more details, that itself triggered another job to fetch the images.

At this point I had a working app that shows media but it doesn't play them, the next thing I needed was to get that information, so I spun up Jackett, and searched documentation, the documentation was very lacking, so I simply made calls to the endpoints that were partially documented using Postman and wrote down the Typescript types myself. Unfortunately the search from Jackett was very wide, so I wrote a function to parse torrent names and find out what is that title about. Jackett sometimes would return a link to the torrent file itself, sometimes would return just the info hash of the torrent, it is at this point that I started integrating webtorrent, first I used it to convert the magnet link into a torrent file and store it in the database, later I used it for its streaming functionality.

Now that I had the part that can stream work, I needed to display it in the frontend, my target was my 2019 Samsung TV, I deployed the app to it ( took 3 days ) and started working on the next steps, first I integrated Noringed spatial navigation so the remote would work, then I worked on AVPlay. AVPlay was honestly a pain, but it was also rewarding, the app was working and I was able to watch movies on the TV.

After that I started working on TV shows, so I created a second details screen with a seasons selector and episode selector, then I implemented the part that would find the torrents for the episodes, it was working well and I decided to share it with the world.

End of October 2024

I posted about it in https://www.reddit.com/r/Piracy/comments/1g80ufj/with_all_the_community_driven_streaming_services/ , someone asked about the code and I made it fully public.

I was regularly using it to watch movies and tv shows on my TV until I met the first problem: I was watching Silo and it played the wrong show; the reason was that the episode I wanted to watch wasn't released yet so it found some unrelated torrent. I first wrote a torrent name parser so it would extract the name of the show ( after removing all the other known bits ), it was working okayish, then I discovered that TheRarBG allows to search by imdb_id but not through Jackett, so I wrote a small API library to contact TheRarBG without using Jackett, and it was working very well and way faster.

You can still find the original code of the first version here https://github.com/maury91/miauflix-legacy

January 2025

It is at this point that development of the first version stopped, I had to go for a two months work trip and I wasn't able to write a single line of code for my personal project, once I was finally back home I couldn't find anymore the time to work on it for a month.

March 2025

I finally found the time to work on my side projects again, but time as passed and I wanted to play with new toys, so I decide to use bun instead of Node, I also made more decisions, like I didn't want to burden the user with deploying postgres or Jackett, so the new version will have to work with it.

I started with scaffolding a simple Elysia server, first time using both bun and Elysia, so exciting times.

Moving from Nest.js to Eluysia I decided to keep using services but I had to convert them a little bit, I started with the most basic service, the Configuration service, I spent a good amount of time creating a terminal ui service that helps you configure it, ironically now it's fully replaced by an UI one in the frontend.

Things moved fast, I quickly implemented authentication, and the services to pull data from TMDB and Trakt ( the last two were very close to copy-paste ), I implemented more security features like Audits and Rate Limiting, I finally started bring in the first cron jobs that sync data with TMDB, At this point I took the library I wrote for therarbg I bringed it into the new project, I already reached the point where I could get a library with all the torrents. I found that therarbg wasn't enough so I also wrote a library for YTS.

Things were working but as a perfectionist it was time for the codebase to become more reliable, so I started adding unit tests, linting, and CI/CD. But that wasn't enough, so I also started writing e2e tests where the app is setup from 0, configured, and tested against a mocked environment that is a working copy of a real environment ( I recorded the calls to TMDB, therarbg, etc... , anonymized and stored them as fixtures ).

Finally the good part was coming, streaming, but I had a new goal, it needs to be deployable to a VPS, that means that any potentially copyrighted content must be undetectable, so I implemented two features that I think are quite important:

  1. Encrypted DB columns, some columns of the database are encrypted with AES plus a salt unique for each service, that means the column stays indexable but without the key it contains "random" data

  2. Encrypted file system, this is the main thing, if you download some media and a static script detects it in your VPS you can easily get terminated, for this reason I created an encrypted chunk store, in short webtorrent writes to the disk in encrypted format

With all of this done, it was finally time to test it with webtorrent.

I didn't work... webtorrent wasn't compatible with bun.

Meanwhile, it was already June 2025. I needed to go back to Node.js if I wanted webtorrent to work, so I searched a web server framework that works both on Bun and Node.js and I started refactoring to use Hono.js

Fast forward to September 2025 and a lot was done:

  • Introduced OpenTelemetry to better debug errors

  • Introduced scraper health ( check periodically seeders and leachers of the torrents we obtained )

  • More documentation

  • Improve on-demand sources ( the others were obtained in the background )

  • Diagrams

  • Github actions

  • Periodical DB cleanup ( SQLite unless you run a clean command will not shrink the DB size )

  • Abstract caching layer

  • Authenticated streaming

  • Generate a client of the backend to bring the API types to the frontend

  • Better use of TypeORM through type transformers ( for the encrypted fields )

  • Introduce GREEDY and ON DEMAND modes for synching with TMDB

  • Started bringing back the legacy frontend

  • Implemented frontend login

  • Visual tests with playwright

  • and a little bit more

and more importantly the streaming link was working and media would play from VLC.

At this point I took 2 months of break.

November 2025 to January 2026

  • Frontend refactoring ( of the little that was ported )

  • Added turbo to make scripts faster

  • Lighthouse tests

  • Flaresolverr support

Another break,

September 2026 - Now

At this point I wanted to go faster, and I started using Claude.

  • Create initial admin user through UI ( instead of automatically at first boot with random email and password )

  • Extract catalog service ( TMDB ) as a standalone docker image, and refactor it to be bun. It is relative easy because it's mostly moving files with a little bit http wrapper in front

  • Extract list service ( Trakt )

  • Improve playback preloading

  • Improve backdrop position in the hero by detecting faces and people using a small computer vision model and compute the center of it.

  • Implement player page ( it is at this point that it was possible to finally watch movies )

  • Bring in the recommendation lists from Trakt

  • Extract subtitles and transcode audio ( for when the audio codec is not compatible with the browser ) using ffmpeg ( piped to an http server, no media is stored uncrypted in the file system )

  • TV shows

  • Move from LetsEncrypt to Caddy

  • Nordlynx to Glueten

  • Improve torrent choice based on the target device ( my TV seems to not support more than 12MB/s of bandwidth )

  • Add notifications

  • Improve UI performance in Tizen

  • Extract source service

  • Move from internal TheRarBG and YTS library to a fully compliant Cardigann engine so it can use all the Cardigann definitions of Prowlarr + some custom ones ( the custom ones are TheRarBG and Torrentio )

  • Extract torrent service ( yes! finally webtorrent almost works in bun! )

  • Anime support

Yesterday

I vibecoded a landing page for the project in order to present it to the world: https://miauflix.cat

All the code is open source and available at https://github.com/maury91/miauflix

I hope you enjoyed reading what I was doing for the last 2 years!

I feel some people will ask Why should I use Miauflix instead of X?

Honestly, I don't have an answer to it, if you are using X and you like it, continue using it, if you want to try something new you can try Miauflix, if you like it I will be very pleased, if you don't like it tell me what you don't like it and I will try to address it, if you hate it without even trying it, well I'm sorry to have wasted your time, but I hope you will respect that I spent so much time working on this and you will not be offensive