loading...
Cover image for My new Side Projects Stack

My new Side Projects Stack

golangch profile image Stefan Wuthrich ・1 min read

Hi

I'm Stefan, Maker of some job boards for developers like https://fullstackjob.com and the underlying https://boardengine.io

For about 2 months I'm working on my new side project, named Kunven, which is in Esperanto "Come together".
Kunvenu is a simplified Social Media Marketing Publisher Tool, optimized for working in Teams.

It allows sharing accounts between team members.

I use more or less same Stack like with boardengine projects:

  • Go for backend services and engines
  • ArangoDB for the document store
  • Redis for authentication and authorization rules
  • Nsq as Message Queue
  • Rancher 1.x as Docker Management (have plan to move to k8s after vacations)
  • Vue / JavaScript for Frontend
  • Different to boardengine I use now Bulma, not more Bootstrap, and I like it
  • Dedicated Server & Cloudflare

Looking for Beta Users:

As I do this as a Side Project I need some interested Beta Users.
The deal is easy, please have a look Kunvenu
You get a Free Life for Life Time Account or 50% discount on Pro/Enterprise Plan. During Beta as long you give me valuable input all for free: Offer

What's your Side Project? Which Stack you use?

Cheers
Stefan

Discussion

pic
Editor guide
Collapse
katafrakt profile image
Paweł Świątkowski

There are some interesting choices there. I was bound to experiment with ArangoDB, but this never happened after all. However, I'm most curious about using Redis for authentication. Could you elaborate a bit on that choice?

Collapse
golangch profile image
Stefan Wuthrich Author

Hi Pawel
Thanks for you comment.
Yeah, I really like to work with ArangoDB. Until now i don't use the multi-model/graph features of it but have some use-cases in mind which bring me to choose this DB.
Redis I use mainly to handle Refresh Tokens and Token Blacklist.

Collapse
katafrakt profile image
Paweł Świątkowski

Oh, I get it now. I thought that for some reason you keep user profiles outside of Arango and I wanted to know why. But yeah, keeping tokens in Redis makes sense to me.

Collapse
sarneeh profile image
Jakub Sarnowski

Hey! Thanks for sharing with your stack. It sounds very interesting! I have few questions:

  1. You're planning to replace Rancher with k8s - is this doable on middle-end VPS-es? Like... do I need a large server to install some docker management software to it, or can it be done on lower-cost servers (i.e. a 1-2GB RAM one)?
  2. Are you using any web framework for Go services?
Collapse
golangch profile image
Stefan Wuthrich Author

Thanks for your questions Jakub

For Rancher 2, which is a k8s "management software" they talk about minimal requirements of 4GB, for a single Node setup. I would say 1-2 GB is probably not enough. But must say, that I'm not a k8s expert, I did some "experiments" and in a company, I work we use it, but there on totally another scale

Go frameworks. You know, this question alone is very polemic :-) but I'm in peace with this..

So.. I use github.com/go-chi/chi for routing, no framework for API backend, I implemented own auth/authz (which makes NOT much sense, but it was good learning), multi-tenant layer etc.
For the Web-Server, which "hosts" the Vue Frontend I use Iris, but would not really need it, as I don't have to handle anything special.

Collapse
jamesits profile image
James Swineson

Rancher 2 requires around 4G RAM for a single server install (for HA setup you need at least 3*4GiB RAM servers, and it is not very possible to move from a single server to HA). It would run in a 2GiB server but once you try to config anything, some part of it would just break.

Collapse
sarneeh profile image
Jakub Sarnowski

Thank you for this reply! 😃

Collapse
jborak profile image
John

I use Go, Redis and MySQL for all of my backends. Using Bulma on the front-end. One of my winter learning side-projects will be a project to help me learn Vue.

Are you using Cloudflare Argo tunnel to expose your side-projects on your dedicated server to the Internet? If so, you might want to check out my side-project :) I write Packetriot (packetriot.com) and it's built for developers and self-hosters.

You can host any number of services, serve static content and upstream app servers (no need to setup a separate web server for that), and it will manage certificates from Let's Encrypt for you. You can use custom domains as well.

You can deploy it as a container as well, which might work well since you use Docker and containers quite a bit in your stack.

Collapse
golangch profile image
Stefan Wuthrich Author

I don't use Argo until now but will have a lock on Packetriot right now

Collapse
souk profile image
Souk

I'm currently working on a guitar chords site project using React for the chord editor, Fastify as backend for some rest endpoints and render html with Handlebars, Redis as session store, Postgresql, and a little bit of vanilla javascript, Milligram for CSS. I wish I have a team to use your product.. Going solo for now. Hehe.

Collapse
golangch profile image
Stefan Wuthrich Author

Thanks for sharing your stack. Make's all sense to me and I hope you have fun with it :-)

Btw... You can use kunvenu.com solo too, as I do personally.

Collapse
honorthydoctor profile image
Diego Oliveira

Spring Boot with Kotlin and React. Simple, straightforward, amazingly powerful!