this post was submitted on 23 Oct 2023
6 points (87.5% liked)

Programming

17392 readers
139 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 1 year ago
MODERATORS
 

I basically want to make a small personal website that probably won't get any attention. It will also be somewhat simple. Is Django overkill and I should use Flask or something else or is it okay? I tried learning JS and using ExpressJS but JS overall feels very loosely typed and I don't like it. I've been using Python for over 3 years now.

top 10 comments
sorted by: hot top controversial new old
[–] Turun@feddit.de 8 points 1 year ago

No, you should use whatever you want instead.

Seriously, don't worry about it. You want to use Django? Use Django! You want to use flask? Use flask!

[–] silas@programming.dev 5 points 1 year ago

Yes! If you’re comfortable with Django, that’ll definitely work, not overkill at all.

If you’re down to get your hands dirty with JS, Astro is really easy to learn and can be extremely powerful if needed. TypeScript or JSDoc will give you the types in JavaScript you’re looking for, and that’s built-in to Astro too. SvelteKit is similar to Astro’s syntax but has more powerful server-side tools built-in and is my personal favorite.

Up to you, really just depends on how much you want to learn.

[–] foenkyfjutschah@programming.dev 3 points 1 year ago (1 children)

What about HTML? Or a tool that renders such from Markdown?

[–] Asudox@lemmy.world 2 points 1 year ago

I need a dynamic website

[–] miguelw@programming.dev 1 points 1 year ago
[–] gbuttersnaps@programming.dev 0 points 1 year ago (1 children)

I started out on django and ended up switching to flask for all my python backends, but it depends on what exactly you want. Django is very hand-holdy and does some of the work of setting up new pages/routes for you, however that does put you on rails a little bit compared to flask. Flask is more performant and customizable, but it's slightly more effort to get going in my opinion.

[–] Cyno@programming.dev 0 points 1 year ago (1 children)

Was there a noticeable performance improvement on flask or what kind of features did you need that django didn't provide? I've always used bigger enterprise frameworks for webapps and only recently started looking into Django for smaller personal ones so I'm wondering what are the differences

[–] gbuttersnaps@programming.dev 0 points 1 year ago (1 children)

I'll be honest, the only reason I originally switched was because I needed to learn flask for a work thing. I didn't really notice any major differences in performance, but it was a pretty light website at that point anyway. I do prefer flask now, but that might just be because I've used it more.

[–] Cyno@programming.dev 1 points 1 year ago

Hmm, having googled very superficially about django and flask, it seems to me like the state (at least today) is the opposite - flask is lightweight and django is more heavy duty, having a built in ORM layer, authentication service, admin interface, db migration framework, etc.

To be fair the article also says Django is known for its performance but when I googled that the other day, it looked like it was often near the bottom of the chart rather than top... I guess it really comes down to personal preference in the end 🤷‍♂️

[–] CameronDev@programming.dev -3 points 1 year ago

Do you want a website or a webapp? Website, just stick with nginx + wordpress or something. If you actually want to write a webapp, then django should be fine. I have also used fastapi which was very easy to start with. If it's a personal web app, then the performance will never really be a problem (unless it grows into something more). So I would pick whatever you can find example code for, and just run with it.