Wow, you did it yourself?! This is just wow, as a C/C++ developer I know how to create an OS, but at most I could come up with an idea, but writing all this myself, I have no words.
HN user
FerkiHN
The true power of open source lies not in code, but in community. When we unite, help each other, and refine shared ideas, we create something no company can buy — freedom and quality that belong to everyone.
I work on various github projects: 1) Header-only ASCII font renderer for embedded/SDL/terminal https://github.com/Ferki-git-creator/ascii-render
2) TurboStitchGIF: A fast, header-only C GIF decoder without dynamic allocations, ideal for embedded systems and cross-platform projects. https://github.com/Ferki-git-creator/TurboStitchGIF-HeaderOn...
So it's very strange, and sometimes it reminds Gemini that he also doesn't know his version.
Dude, this is a really cool thing. I dreamed of creating this myself once. Now that you've done it, I can be happy because I always wanted to share the code and not hear the intrusive words "Don't self-promote."
I liked it, but I think they should add the ability to download music to .waw/.mp3 and add a local version to github (your wish).
I did it for nostalgia, I wanted to do it the way they used to do it, for example, such README files are in SDL and Linux.
Totally fair — this pattern can be confusing at first glance. The main motivation is ease of integration: no need to manage extra .c files, no build system tweaks, just drop in one file and go. It’s especially useful for embedded systems, scripts, and small projects where build friction matters. That said, I agree that for larger teams or long-term projects, the classic .h + .c split can be clearer — that’s why the implementation can easily be separated if needed. Appreciate the feedback!
Great question! It works the same way as stb-style libs: you only #define GIF_IMPLEMENTATION in one .c file (one translation unit). In all other files, you just #include "gif.h" without the define. The header uses #ifdef GIF_IMPLEMENTATION to include implementation code only once. So no linker errors — everything compiles cleanly as long as that rule is followed. I’ll make this clearer in the README too, thanks!
Exactly! That flexibility was one of my goals. Making integration smooth for both small embedded projects and larger codebases with unity builds — glad to hear it resonates.
Thanks! Yes, stb-style header-only libs were definitely an inspiration. I know some devs find the approach confusing, especially with linker errors if *_IMPLEMENTATION isn't handled correctly. I tried to keep it simple and clearly documented, but feedback like this helps improve it.
Yes, I used ChatGPT to help refine the README and occasionally get suggestions for cleaner or more efficient code patterns.
But the core logic, turbo decoding modes, and embedded optimization — that’s all written, tested, and understood by me.
I see AI as a tool, not an author — it helps speed things up, but I still do the thinking.
Okay, I'll do it soon.
Please share your thoughts.
I don’t see AI as a threat to programmers now or in the future — it’s just a tool. Think of programming like cutting down trees: we used to swing axes, and now we’ve got chainsaws. But even the best chainsaw won’t cut a tree on its own — it still needs the woodcutter.
AI is trained on what humans have already done. It can remix and automate, sure, but it doesn’t innovate or create like humans do — at least not yet. Reaching that level of creativity is a whole different game, and if AI ever does get there, we’ll have way bigger questions to worry about than job automation.
Bottom line: AI won’t replace us — it’ll reshape how we work. The role of the programmer will evolve, just like it has with every major shift in tools and tech.
Add the ability to reply to user comments.
Hello, now the design is great, you did a great job, now you can either rest or start promoting your site again. Or if you still have the strength, you can add theme customization, for example: light, dark, system, custom (the ability to customize the color of the site for yourself).
And I don't know what it's all about, but your site sometimes loads for me, sometimes it doesn't, it seems like it decides for itself when to load and when not to.
Weekdays (Monday - Friday) are best.
Posting times: 8:00 AM - 11:00 AM (EST)
Thanks for the answer, I'm glad you like it. :)
Your observation is appropriate, I didn't notice the error in my project's output, apparently I accidentally put "Photo", wrote "Phono".
I know you don't need the project, but if you want, you can star my repository to support me.
Fair point! XID targets niche scenarios where its properties shine: 1. Resource-constrained environments (IoT/embedded) where UUIDs are too heavy 2. Offline systems needing collision resistance without coordination 3. Debuggability - timestamp extraction avoids DB lookups for audit trails 4. Zero-dependency projects (OS kernels, bootloaders, firmware)
It’s not for every use case, but fills gaps where UUIDv4/Snowflake can’t go. Curious what specific problems you’re solving where it feels less useful?
What do you think?
Hello, now the design is great, you did a great job, now you can either rest or start promoting your site again. Or if you still have the strength, you can add theme customization, for example: light, dark, system, custom (the ability to customize the color of the site for yourself).
Hello, now the design is great, you did a great job, now you can either rest or start promoting your site again.
Or if you still have the strength, you can add theme customization, for example: light, dark, system, custom (the ability to customize the color of the site for yourself).
As for advice, of course I don't know for sure if it's better this way, but it seems to me that you have a lot of files that are ~2kb each, have you thought about merging some of them for easier readability of the project?
Great project, I love all these things,I also gave your repository a star, I hope you will have 1000 of them someday, you really add to the capabilities of the terminal, I'm also interested in this, if you want, check out my project too:
https://github.com/Ferki-git-creator/phono-in-terminal-image...
I don't want to seem greedy, but if you want, you can also star the repository, so that all our terminal projects can see the world!
I hope this report helps you, I really like your website, I hope someday it will become popular, for advertising projects.
I more details analysis at your website and immediately spotted a few things that I think could really elevate its look and make it much more pleasant to use. Right now, it's a bit "shouting" with those bright colors, the text sometimes gets lost, and some elements feel like they're crowding each other. But honestly, all of this is super fixable, and your site has a lot of potential! Here are some specific tips that should help make your website feel much more professional: First off, let's swap out those blaring blue shades for something calmer, something that won't strain the eyes as much. Think about muted blue tones, a light background, and dark text. That alone will instantly make the site feel more substantial. It's also really important that the text is easy to read, so it's worth checking the contrast – dark text on a light background always looks best. And don't forget about spacing! It's like breathing room – give your elements a bit of space so they don't blend together. This will make your site's structure much cleaner and easier to grasp. By the way, using a consistent font style, like Open Sans, and clear hierarchy for your headings (larger for H1, smaller for H2, etc.) will also significantly improve the visual appeal. Here's how that might look in your code – these are just examples, feel free to pick your own specific values:
:root {
--primary: #4a7b9d; /\* Muted blue */
--secondary: #e3f2fd; /* Light background */
--accent: #1565c0; /* Accent color for buttons, for instance */
--text: #333333; /* Main text */
}body {
font-family: 'Open Sans', sans-serif; /* Consistent font */
font-size: 1rem;
line-height: 1.6; /* Comfortable line spacing */
color: var(--text);
background-color: #f8f9fa; /* Light background */
}h1 { font-size: 2.2rem; }
h2 { font-size: 1.8rem; }
h3 { font-size: 1.4rem; }
.container {
padding: 2rem; /* Generous padding for main blocks */
max-width: 1200px;
margin: 0 auto;
}.card {
background: white;
border-radius: 8px;
box-shadow: 0 4px 12px
rgba(0,0,0,0.08); /* Subtle shadow for "cards" / transition: transform 0.3s ease; /* Smooth hover effect */
padding: 1.5rem;
margin-bottom: 1.5rem;
}.card:hover {
transform: translateY(-5px); /* Card subtly lifts on hover \*/
box-shadow: 0 6px 16px rgba(0,0,0,0.12);
}Don't forget about responsiveness – so many people browse on their phones these days, so make sure your site looks great on any device. You could simplify the menu and perhaps make the header a bit smaller, maybe even add a logo instead of just text. Overall, these changes shouldn't take too long. Swapping out colors and adding padding is probably just 1-2 hours. Improving the cards and optimizing tags – another 2-3 hours. Navigation and responsiveness are a bit more complex, maybe 3-4 hours. And then you can add the fine details, like animations, which might take 4+ hours. The main thing to remember is: "less is more." Even small tweaks can make a huge difference!
Oh it works! Finally I can appreciate, yes your design is amazing, look I offered you two types of design type or you can make it as in HN(Old is funny), or modern. Because you have something in between now and it doesn't look very good.
It sounds cool, I'd even say more. I once wanted to make a site like this myself, but there's one problem: I can't access your site, even when I connected a VPN, nothing changed.
Sorry for writing in a strange way, in short, your Mark is wonderful, but I don't like the symbols in the markup like "<" before each command, because without them, in fact, you can also make a working markup, maybe they use it for beauty?
Great, I haven't tested the project yet, but I've read the documentation in detail and I don't see any downsides yet.
I don't think it would be great to have a web version of the project, but that's your choice.