this post was submitted on 22 Sep 2023
16 points (94.4% liked)

Ask Lemmy

26401 readers
627 users here now

A Fediverse community for open-ended, thought provoking questions


Rules: (interactive)


1) Be nice and; have funDoxxing, trolling, sealioning, racism, and toxicity are not welcomed in AskLemmy. Remember what your mother said: if you can't say something nice, don't say anything at all. In addition, the site-wide Lemmy.world terms of service also apply here. Please familiarize yourself with them


2) All posts must end with a '?'This is sort of like Jeopardy. Please phrase all post titles in the form of a proper question ending with ?


3) No spamPlease do not flood the community with nonsense. Actual suspected spammers will be banned on site. No astroturfing.


4) NSFW is okay, within reasonJust remember to tag posts with either a content warning or a [NSFW] tag. Overtly sexual posts are not allowed, please direct them to either !asklemmyafterdark@lemmy.world or !asklemmynsfw@lemmynsfw.com. NSFW comments should be restricted to posts tagged [NSFW].


5) This is not a support community.
It is not a place for 'how do I?', type questions. If you have any questions regarding the site itself or would like to report a community, please direct them to Lemmy.world Support or email info@lemmy.world. For other questions check our partnered communities list, or use the search function.


Reminder: The terms of service apply here too.

Partnered Communities:

Tech Support

No Stupid Questions

You Should Know

Reddit

Jokes

Ask Ouija


Logo design credit goes to: tubbadu


founded 1 year ago
MODERATORS
 

Hello !

Back in the day I made some "MMO" web games, you know you have action points, 'many' players, enemies items etc and it's all "real time" (but you'd only play once or twice a day) and Lemmy have made me quite nostalgic so I thought why not whip up a little game?

So first I thought I could use the users (and the authentication in the http request) of the lemmyverse as players (go to my game community, be redirected to the game, and your credentials is already your login/pass) but I don't really know how to do that, and I feel I'd spend way too much time doing it and maintaining it.

So I thought, I just redirect a community to a "webserver" that does it all, and that's why I'm here.

What's, in your opinion, the easiest simplest webserver with an authentication system where I can plug my game (the game will take like GET/POST variables and give some text and GET/POST inputs back and that's about it).

The best would be some fire & forget soft that's a bit supported. I know I can install Apache and make it work but it seems so large for what I want to do.

Ah, and a Rust "backend" (my game) would be cool, or python if that's not possible.

Cheers

top 11 comments
sorted by: hot top controversial new old
[–] agressivelyPassive@feddit.de 7 points 1 year ago (2 children)

Almost all servers can do that to some degree, Apache, nginx, etc. You could also use keycloak to offload the heavy lifting.

[–] souperk@reddthat.com 3 points 1 year ago

πŸ‘for keycloak

Been using that for my side projects, with the added benefit that I got a single instance running on docker for all my projects, sharing a realm so a user has to register only once.

I can share my docker-compose.yaml in case you want to try that.

It supports oidc, so if you are using python you can set up authlib with 5-10 lines of code. I can share code if there is interest.

[–] Valmond@lemmy.mindoki.com 2 points 1 year ago (1 children)

Yes, but I'm looking for a lightweight server that'll handle the authentication and then give me the hand.

[–] pastermil@sh.itjust.works 2 points 1 year ago (1 children)

lighttpd, then. If you want to go even more, uhttpd. You can even use the test server from python (perhaps rust provides something similar).

At some point, you'd lose the features you'd want to keep, tho, like the part that handles concurrency, as well as cryptography stuff (you'll definitely want some certs if you're putting it in public).

nginx is quite lightweight too, FYI. Just gotta make sure you're not installing the full set.

[–] Valmond@lemmy.mindoki.com 2 points 1 year ago

Uh, that looked so nice and even perfect, but dude it was a hassle to compile and then it just choked on its own config file (reading the port config no more, in the middle of it all).

Crapped it all and installed the precompiled version (with apt) and it wasn't better.

I know Linux stuff isn't always easy but as I'm looking for something simpleton that works out of the box, and hopefully will upgrade easily etc I have to pass on this one.

Thanks though!

[–] intensely_human@lemm.ee 2 points 1 year ago

You might check out Auth0 (that’s a zero). Last time I was a dev, like five years ago, it was a solution for authentication that happened at their own server.

[–] Bluetreefrog@lemmy.world 2 points 1 year ago (1 children)

OP, please reword your post title to be a question (Rule 2).

[–] Valmond@lemmy.mindoki.com 1 points 1 year ago

Eh common, we're not on Reddit anymore.

It's comprehensible.

[–] nickwitha_k@lemmy.sdf.org 2 points 1 year ago (1 children)

For a Rust backend, you might check out Bevy. I've been meaning to take a look for a while but paused due to all the Rust drama.

[–] Valmond@lemmy.mindoki.com 1 points 1 year ago (1 children)

Bevy seems to be a game engine, and that's not what I'm looking for.

Best case I'd like an already built front end with registration and login, so that my code can just do the game stuff.

[–] nickwitha_k@lemmy.sdf.org 2 points 1 year ago* (last edited 1 year ago)

Oh. I misunderstood your request.

For webserver, as mentioned by others, any modern webserver will work as a reverse proxy for your app backend. All offer HTTP Basic Auth (user + hashed password). For anything more complex, something like Keycloak would be the way to go for an auth middleware.