15

While getting quotes for a site recently the question of filesystem came up a lot and I admittedly didn't know much on the subject.

Doing some research the popular choices appear to be either PHP frameworks or less often ASP.NET frameworks.

Among popular PHP frameworks I see Laravel come up a lot, open source is certainly more reliable than something maintained by Google, Facebook, or Amazon but currently the Laravel maintainers are pushing AI really really hard.

So is the only real solution to learn to program with PHP without using any frameworks or libraries? Can anybody who has implemented a secure fileserver for a website tell me how difficult or easy it would be to learn?

all 40 comments
sorted by: hot top controversial new old
[-] spartanatreyu@programming.dev 29 points 4 weeks ago* (last edited 4 weeks ago)

What do you mean "filesystem"?

That's the data format that you'll find on a USB flash drive, hard drive, ssd, etc...

It has nothing to do with web development, they're completely separate things.

What you're asking makes as much sense as asking: "Which temperature smells best? Words or tired?"

You've gone down the wrong road and we're not sure how you got there.

You'll have better luck if you explain what you're actually wanting.

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago

A simple search could do you a world of good, pal.

[-] doeknius_gloek@discuss.tchncs.de 20 points 4 weeks ago

Don't be a dick to people that are actually trying to help you, when you admittedly don't know what you're talking about.

[-] Jakeroxs@sh.itjust.works 4 points 4 weeks ago

That's kind of their whole thing

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago

While getting quotes for a site recently the question of filesystem came up a lot and I admittedly didn’t know much on the subject.

Doing some research the popular choices appear to be either PHP frameworks or less often ASP.NET frameworks.

Anybody who doesn't understand what is being discussed after reading that should not be trying to answer, I don't really have a lot of time to educate every single passerby on the most basic of terminology.

[-] Kissaki@programming.dev 12 points 4 weeks ago

The quoted text makes no sense. It has gaps. And the comment you dismissed seemingly pointed that out.

Websites don't have a file system. They serve content as responses.

PHP is not a filesystem. ASPNET is not a filesystem.

You could be talking about managing files, you could be talking about sourcing web responses from local files, or you could be talking about something else.

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago* (last edited 4 weeks ago)

FileSystem Framework

FileSystem Framework

FileSystem Framework

Examples: Laravel, ASP.NET, and NodeJS FS

Did that clear up your confusion?

Here is a link to the documentation for NodeJS FS: https://nodejs.org/api/fs.html

Here is a link to Laravel's FileSystem documentation with quote: https://www.laravel.wiki/en/filesystem

Laravel provides a powerful filesystem abstraction thanks to the wonderful Flysystem PHP package by Frank de Jonge.

It's fine to be legitimately curious but if you think the question is wrong then you're arguing with reality.

[-] zbyte64@awful.systems 5 points 4 weeks ago* (last edited 4 weeks ago)

Those aren't fileystem frameworks but filesystem interfaces used by frameworks. Counter example of what i mean: https://filesystem-spec.readthedocs.io/en/latest/

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago

I'm certainly not going to use their interfaces on a different framework, so I'm looking for frameworks, Jack.

[-] zbyte64@awful.systems 2 points 4 weeks ago

Nodejs is not a framework though. So you very well could use the exact thing you linked to with many different frameworks

[-] doeknius_gloek@discuss.tchncs.de 9 points 4 weeks ago

I don't really have a lot of time to educate every single passerby on the most basic of terminology.

A simple search could do you a world of good, pal. I'd start at the Dunning-Kruger-Effect and go on from there.

[-] ExperimentalGuy@programming.dev 8 points 4 weeks ago

I don't think what you asked made sense either. I initially thought you were going to ask a question about different file explorers because thats a relatively common topic, but what you asked made no sense.

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago* (last edited 4 weeks ago)

Try reading the post and you will see it's about finding a filesystem tool used in web development such as Laravel or NodejsFS. There is no ambiguity here, this isnt about thumb drives or operating systems.

[-] olafurp@lemmy.world 2 points 4 weeks ago

That's a dumb reply. If you count fs from nodejs then you can literally Google "how to [read/write/stream] file in [pretty much any language".

[-] olafurp@lemmy.world 6 points 4 weeks ago

Honestly, that was a perfectly reasonable question and you're being rude. Pretty much every programmer knows what a filesystem is but a filesystem framework is not clear.

I would have pitched in with questions and suggestions but since you're being a dick I won't.

[-] underscores@lemmy.zip 13 points 4 weeks ago

Do you mean a server side language ? What is a filesystem framework ?

[-] FiniteBanjo@programming.dev 3 points 4 weeks ago

So, I am no expert, but, usually "tech stacks" have 2 or more parts:

  1. Frontend Framework: Vue, Angular, React, etc

  2. Backend Frameworks comprised of Content Delivery Network (CDN) such as CloudFlare, Database such as MondoDB or MySQL which efficiently stores and serves non-binary data, and a FileSystem which efficiently stores and serves binary data such as images and videos.

The benefits of using an isolated FileSystem solution is that it can be much more secure and easier to implement.

But idk, I'm an ameteur at best.

[-] expr@piefed.social 16 points 4 weeks ago* (last edited 4 weeks ago)

I think you're using the word "framework" quite broadly here. Cloudflare and databases aren't "frameworks". The word is perhaps ill-defined, but generally it means something like "an opinionated library ecosystem in a programming language". React, Vue, and the like are Javascript "framework" libraries for making what are called Single Page Applications. They are hardly the only way to make websites, though, and some (including yours truly) believe them to much more trouble than they are worth for most purposes.

Laravel, Django, Ruby on Rails, etc. are all backend/server-side "framework" libraries for creating Multi-Page Applications, or in other words, the model for which the web was originally designed (that is, you get HTML and follow links embedded in that HTML to get to new pages).

At any rate, a "file system for a website" is quite vague. It really depends on what your goals are. You have to define what is you're trying to do and who it's for. It's not particularly difficult to spin up an sftp server to allow remote access to files if all you care about is remote copying, but I'm going to assume you mean a file server served over HTTP(S).

There's about a million tools out there for serving up static files, getting a directory listing, etc., and it really depends on your goals. It's fairly simple to configure nginx to serve up a directory with a very rudimentary index if you don't need anything fancy (nginx can do fancy too, ofc, just takes more work than what comes out of the box). I personally like Caddy over nginx these days, though. Caddy in particular requires very little configuration, honestly.

But yeah, without more information about what is is you're trying to accomplish, it's difficult to give specific recommendations.

[-] FiniteBanjo@programming.dev 2 points 4 weeks ago

Nah, disagreement on semantics. I used Framework to broadly describe codebases which do a ton of work that a developer can rely on without building their own from scratch, which is accurate. Every mechanism or benefit that Cloudflare CDNJS provides for the user could technically be done by the developers themselves, as unlikely as that is.

[-] expr@piefed.social 14 points 4 weeks ago* (last edited 4 weeks ago)

I mean, that's simply an incorrect definition and not what anyone means when they use the word, speaking as a senior engineer working on web applications over the last 10 years. Such a broad definition is practically meaningless since it encompasses pretty much everything in programming.

A database is 100% not a "framework", it is a software application that allows clients to retrieve data by supplying queries in a dedicated DSL.

cdnjs is also decidedly not a framework, nor is any other CDN. CDNs are an infrastructural component in networking that allows content to be cached in servers that are geographically distributed over large distances in order to reduce the effects of network transmission time (since content can be served from servers closer to the client). It has very little to do with programming.

A framework is a library (or possibly, set of related libraries) in a programming language that aims to be very "batteries-included", insofar as the programmer gives up precise control over the program they are creating in exchange for having many commonly-needed things for the task (typically, SPAs or web servers) already done for them. The reason I said it's perhaps ill-defined as a word is that the line between what counts as a library and what counts as a framework is a bit blurry.

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago* (last edited 4 weeks ago)

You tell me my definition is wrong and then confidently churn out the same definition.

You can code the mechanisms for a CDN. You might not have the servers to run it on, but you can. It is a framework

[-] expr@piefed.social 7 points 4 weeks ago

It is not at all the same definition. A CDN is not a programming language library, which is how I had defined frameworks (with other qualifiers). All frameworks are (one or more) libraries in a programming language. A CDN is, ultimately, a network of running servers that serve up content. It's a distribution mechanism for content, not a method of building software applications (which is what frameworks are). You can use a CDN to deliver the code for a framework/library to a web browser (or anywhere else, really), but that is not the same as saying that it is a framework itself, because it is not.

A bunch of people in this thread, including myself, have been trying to help answer your original question (part of which is clarifying terms, since you seem to be confused about how things work, which is understandable for someone inexperienced), and yet you've been very combative and lashing out at people in spite of describing yourself as an amateur. When experts in the field correct your misunderstandings, it's wise to learn from the information you're given rather than telling everyone that they are wrong. Your attitude will not get you very far and will simply make people unwilling to help you learn.

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago* (last edited 4 weeks ago)

A CDN is not a programming language library

You think they were just magicked into existence? Nah, they were programmed, and you can use specific syntax to call upon their functions.

[-] expr@programming.dev 4 points 4 weeks ago* (last edited 4 weeks ago)

What, praytell, is this supposed syntax? A curl invocation? Including a link to a CDN resource in an HTML <script> tag?

A URL on the web is not what anyone would call a framework, I'm sorry to say. Is www.google.com a framework? Google programmed the server serving the content at that URL, right? Or what, is it only special URLs that only programmers use? Is your operating system a "framework"? Someone programmed that too, right? How about your coffee maker? That's also something someone programmed.

It's funny how the wikipedia article on CDNs doesn't mention the word "framework" once, yet the article on a real framework like React mentions the word 8 times and links to other frameworks and lists of frameworks.

Maybe, just maybe, it has a more narrow definition than "someone programmed it so you don't have to".

[-] olafurp@lemmy.world 4 points 4 weeks ago

That's just straight up wrong man. A lot of words in programming are not just semantics, they're concrete shorthands for very specific things.

[-] python@lemmy.world 5 points 4 weeks ago

I'm not quite sure what you're looking for, but the term "non-binary data" is sending me haha

Anyways. I've used Laravel for about a year now, and it's ..fine. I don't like the push towards AI slop or their constant attempts to push their own cloud services or whatever onto you either, but it hasn't been much of a hassle to just ignore that part.

What I like about Laravel is just how opinionated the framework and the documentation is (like how it wants you to build Factories and set up proper test data when making new database Entities, and how the Inertia routes encourage a clear schema). It's also been pretty pleasant to get the basics right out of the box, like proper auth and login functions. And I like the kind of stuff that you can do with blade templates! I'm using them to serve dynamically generated SVG files and it works really well.

I haven't really needed any sort of crazy file management things though, so my opinions might be completely irrelevant to your use case. In fact, my Laravel project is really not set up for any sort of large data, since that's just not a thing I need. I'm running it in an AWS EC2 instance (the smallest one, as that's included in the AWS Free tier) with just an sqlite database right in there. If I suddenly wanted to manage files in my application, I'd probably be looking at doing that with AWS S3 buckets. Which would work I guess, but I personally really prefer interfacing with S3 buckets via AWS Lambda, and those work much better with Node, Go, Ruby or Python. I'd probably be leaning towards Node, since that's just what I'm most familiar with. Doesn't mean that it's the choice I'd recommend, because your project might have completely different technical requirements! Web dev is a confusing clusterfuck of edgecases.

If Laravel looks like it works for your requirements right now I'd say go for it. No one knows what the future looks like - it could be completely enshittified in a year, or it could be totally fine because the maintainers have just been riding the AI hype for marketing clout while still making a decent framework. If you stick to decent coding practices, switching to a completely different framework really won't be the end of the world.

Alternatively, since you're looking to hire someone for your project, maybe just focus on finding the most capable engineer you can and let them choose whatever tech stack they seem fitting? They'd probably have a much better understanding of your requirements and could make choices that work well together contextually.

[-] python@lemmy.world 1 points 4 weeks ago

oh, I also just remembered: You might like Zig! They're a C-based language, not a framework, but they're staunchly anti-ai. If complying with your moral compass is something you want to pursue (which I think is valid, I think most devs wish they had the breathing room to do that) you might want to consider it!

I've looked it up and apparently there is a zig-based Web framework called Jetzig. I have never used it or heard about it before, but at first glance the functionality it offers seems solid enough.

[-] UlrikHD@programming.dev 4 points 4 weeks ago

I'm not sure if you're masterfully trolling, or genuinely asking for help. But if you're making a post asking for help, you should be open to feedback and willing to learn from the help provided.

I'm locking the post as there's seems to be nothing but arguing with no learning involved. Feel free to send a DM if you want to discuss the decision.

[-] rimu@piefed.social 4 points 4 weeks ago

Laravel has been around for a long long time (decades?) so I'm pretty sure whatever AI stuff they're adding are optional packages that can be ignored if they're not for you.

[-] FiniteBanjo@programming.dev 2 points 4 weeks ago* (last edited 4 weeks ago)

If somebody could confirm or deny this with more certainly I would appreciate it.

TBH there really is no trust to be given when the maintainer is a slopper, so I would worry about potential updates ruining the whole project.

[-] tapdattl@lemmy.world 4 points 4 weeks ago

Are you intent in programming it yourself? Does it have to be in PHP? There are several open source file server projects, SeaweedFS and RustFS to name a couple

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago* (last edited 4 weeks ago)

Are they maintainable long term?

EDIT: Seaweed appears to sell storage used for the project? Can it not be selfhosted?

EDIT 2: RustFS: "The fast data foundation for the AI era."

[-] tapdattl@lemmy.world 5 points 4 weeks ago

They can both be self hosted, I self-host Seaweedfs personally as part of my backup strategy.

As far as rustfs's "The fast data foundation for the AI era." I believe that's just marketing to illustrate how capable their product is. Looking at their github contributors history the main contributors all appear human

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago

Ty for the reply, I will look more into SeaweedFS.

[-] Pieisawesome@lemmy.dbzer0.com 3 points 4 weeks ago

Dude, you need to chill out and stop attacking people who are attempting to help by asking simple questions to try and HELP.

You should use fuse and c++

[-] towerful@programming.dev 3 points 4 weeks ago

This has been wonderfully cathartic, thank you

[-] olafurp@lemmy.world 1 points 4 weeks ago

Uhh, just use the HDD and file commands with any service? It's not forbidden to just serve a whatever file from a REST endpoint.

If your not doing a Dropbox virtual filesystem or forced to work with ftp/sftp then just make a whatever endpoint and send back a file instead in any language/framework.

[-] FiniteBanjo@programming.dev 1 points 4 weeks ago* (last edited 4 weeks ago)

How about I use a proper FileSystem framework and have proper discussion with people who do? Why are there so many people trying to dismiss the entire discussion? Probably just one guy and his alts, maybe a Tankie I pissed off.

this post was submitted on 17 Jun 2026
15 points (100.0% liked)

Web Development

5736 readers
1 users here now

Welcome to the web development community! This is a place to post, discuss, get help about, etc. anything related to web development

What is web development?

Web development is the process of creating websites or web applications

Rules/Guidelines

Related Communities

Wormhole

Some webdev blogsNot sure what to post in here? Want some web development related things to read?

Heres a couple blogs that have web development related content

CreditsIcon base by Delapouite under CC BY 3.0 with modifications to add a gradient

founded 3 years ago
MODERATORS