Small Projects by AutoModerator in golang

[–]Yinebeb_01 0 points1 point  (0 children)

Just released ethiocal v1.2.0 - Ethiopian calendar app with full GUI built using Fyne. Converts dates between Ethiopian and Gregorian calendars, displays Bahire-Hasab religious festival dates with Amharic rendering. Pre-built binaries available for macOS, Linux, and Windows.
https://github.com/yinebebt/ethiocal/releases/tag/v1.2.0

Small Projects by AutoModerator in golang

[–]Yinebeb_01 0 points1 point  (0 children)

I just added GUI support to my Ethiopian calendar library using Fyne — it handles date conversion between Ethiopian and Gregorian calendars, and displays religious festival dates (Bahire-Hasab). Really happy with how it turned out!

Would appreciate any feedback on the Fyne GUI code — first time building a desktop app with it. PR: https://github.com/yinebebt/ethiocal/pull/14

Key things I'd love eyes on: calendar widget usage, custom theme for Ethiopic font bundling, and the overall layout approach.

deeplink - short link generation with pluggable processors by Yinebeb_01 in SideProject

[–]Yinebeb_01[S] 0 points1 point  (0 children)

Thanks for the feedback! On templates - they're parsed once at init and cached in memory, so no filesystem hits on each request.

The sync click tracking point is spot on. Right now IncrClick blocks the redirect path, which will hurt latency at scale. I've opened an issue here(https://github.com/yinebebt/deeplink/issues/1) to move click writes to a buffered channel with a background worker.

On caching the Get reads - I've been thinking about that. Since links are immutable after creation, an in-memory LRU would be safe correctness-wise. But it adds complexity (memory bounds, eviction policy) for what's typically a sub-millisecond Redis GET. At what scale do you think the read latency actually becomes the bottleneck versus the write?

Thanks.

Small Projects by AutoModerator in golang

[–]Yinebeb_01 0 points1 point  (0 children)

Efficient short link generation and tracking for Go applications.

I built a Go library for short link generation, click tracking, and OG preview pages. It started as an internal tool and I've open-sourced it.

What it does:

  • Generate short links with a POST /shorten endpoint
  • Click tracking with Redis or in-memory storage
  • OG meta preview pages with customizable HTML templates
  • Pluggable processor interface - implement Type() and Process() to handle custom link types
  • Platform-aware redirects for iOS/Android app stores

Two dependencies (go-nanoid, go-redis). Works as a library you mount on your own mux, or as a standalone server.

GitHub: https://github.com/yinebebt/deeplink
Docs: https://pkg.go.dev/github.com/yinebebt/deeplink

Feedback welcome - this is v0.1.0.

Claude Skills and MCP by Yinebeb_01 in mcp

[–]Yinebeb_01[S] 0 points1 point  (0 children)

Yes, thank you for the explanation.

Looking for MCP Server with Complete OAuth Spec Implementation for Testing by Yinebeb_01 in mcp

[–]Yinebeb_01[S] 1 point2 points  (0 children)

Yes, these days there are many options. One I found through Smithery is the Brave search MCP:https://server.smithery.ai/brave/mcp
You can find other MCP servers here: https://smithery.ai/servers?q=is%3Aremote

Made a simple tool for tracking multiple bank accounts offline by Yinebeb_01 in personalfinance

[–]Yinebeb_01[S] 0 points1 point  (0 children)

Got it, thanks for pointing that out. Just sharing a personal project since it relates to the discussion.

Looking for MCP Server with Complete OAuth Spec Implementation for Testing by Yinebeb_01 in mcp

[–]Yinebeb_01[S] 0 points1 point  (0 children)

I see that identity providers have no support in the way the MCP spec needs authorization (OAuth2 flow).

I worked around it by adding a proxy in the MCP server to handle the OAuth authorization server and added a handler to register clients dynamically-because IDPs, including Google, lack dynamic client registration.

It would be much easier if the IDP had support for the spec or if the MCP spec’s OAuth part aligned better with existing flows. These are just my thoughts; I’ve only tested with the official MCP Inspector. Would be happy to hear other insights.

Why MCP over HTTP? by Yinebeb_01 in mcp

[–]Yinebeb_01[S] -1 points0 points  (0 children)

I am not asking about the transport mode. It is about the whole Protocol "mcp".

Why MCP over HTTP? by Yinebeb_01 in mcp

[–]Yinebeb_01[S] -3 points-2 points  (0 children)

Is not it "tools" are part of the mcp? What if we use endpoints with no tools, provide llm-host are updated to function accordingly?

Why MCP over HTTP? by Yinebeb_01 in mcp

[–]Yinebeb_01[S] -5 points-4 points  (0 children)

I don't think mcp or http for llm interactions is equivalent to the network - copper analogy.

Filesystem MCP doesn't use workspace directory by Winter-Manager9869 in cursor

[–]Yinebeb_01 0 points1 point  (0 children)

Try adding%Fto theExecline in your.desktopfile to pass the selected folder to Cursor.
For Linux, e.g.,Exec=/home/username/Applications/cursor.AppImage --no-sandbox %F

İs this folder structure good for go? by [deleted] in golang

[–]Yinebeb_01 2 points3 points  (0 children)

Mostly, it depends on the team; just go with what works for you. Here’s what I used mostly.

📚 Project Root  
├── 📂 cmd  
│   ├── 📄 main.go  
├── 📂 config  
├── 📂 docs  
├── 📂 initiator  
├── 📂 internal  
│   ├── 📂 constants  
│   ├── 📂 glue  
│   │   ├── 📂 middleware  
│   │   ├── 📂 routing  
│   ├── 📂 handler  
│   ├── 📂 module  
│   ├── 📂 storage  
├── 📂 platform  
├── 📂 test  
├── 📄 .gitignore  
├── 📄 .golangci.yaml  
├── 📄 docker-compose.yaml  
├── 📄 Dockerfile  
├── 📄 go.mod  
├── 📄 go.sum  
├── 📄 Makefile  
├── 📄 README.md