How to build a website from scratch?
Posted by Michaael115@reddit | learnprogramming | View on Reddit | 49 comments
I have a goal of building a website for myself, just as a project. I know the very basics of HTML / CSS / JS / and backend languages such as Java and Python.
My question is am I able to create a website only using HTML / CSS / JS or will I need to implement a backend language such as Python?
Katcm__@reddit
If it is just a personal site you can definitely build it with only HTML CSS and JS, are you planning for it to have dynamic features later
Character-Weight1444@reddit
You can absolutely build a basic website with just HTML, CSS, and JavaScript that’s how static sites work and it’s a great way to learn web dev fundamentals. For dynamic features like logins, databases, or user content, you’ll eventually need some backend logic (Node.js, Python/Django, etc.).
Simple road map:
Learn the basics: HTML for structure, CSS for styling, JavaScript for interactivity. Build static pages first, like a portfolio or landing page. Add backend only if and when you need things like authentication or data storage. Use free hosting options to publish simple sites early.
For layout inspiration or faster prototyping, tools like Code Design AI can help generate design and code ideas, but it’s still important to understand the core fundamentals yourself.
HolidayCup2218@reddit
i want to build website but i dot now how but i have connection of products
Desperate_Relief2733@reddit
Use this to build instead https://app.emergent.sh/?via=asad
countsachot@reddit
Depends what you want the website to do, but yes a simple one, sure.
craciunfredy@reddit
Give Loopple.com a try.
If you need any help, I’m here for any questions too.
TrveLinvxVser@reddit
You can automatically generate an entire website (that is UI-consistent across all of its pages) from simple content text files and a HTML/CSS/JS UI theme. Perhaps have a look at Hugo and, say, the Hugo Story theme.
brduk@reddit
https://justfuckingusehtml.com/
maqisha@reddit
I've seen this before, pretty sure its not an original, but at least I remember the originals having some kind of twist and meaning.
This is just overly pretentious and bad, even if you ignore the cringeworthy overuse of profanity. It doesn't teach anything, it doesn't have a point, the resulting "website" is poor even if they pretend its not. Do not share this with beginners to confuse them into thinking this is fine.
whattteva@reddit
I'd say it has a very good point.
Web browsers these days have turned into a monstrosity that eats up gigs of RAM and insane CPU cycles (battery). It has come to the point where it could be several orders of magnitudes heavier than the OS itself (if you're just running a simple window manager).
At some point, someone does have to say that enough is enough and less is more. I am tired of loading up websites that spin up my laptop's fans.
maqisha@reddit
None of that is true, if anything its the exact opposite. Even the worst of devices are so incredibly fast and efficient these days that you want to move as much work as possible to the client to provide the best user experience and reduce your compute at the same time.
Everything you said is some fairytale view, not reality.
whattteva@reddit
Lolwut? You know this is easily verifiable empirically. There are countless written articles about how bloated chrome is (ironically) because it was released originally as a "lightweight" browser.
maqisha@reddit
You clearly have no idea what you are talking about.
whattteva@reddit
Ahhh, the good ol' ad hominem came out. The holy grail of winning.
maqisha@reddit
And if you think I care about "winning" in a reddit comment, that's just concerning. Thanks for the "discussion"
whattteva@reddit
Yeah sure. Maybe because you simply cannot provide actual empirical evidence of this. It is 100% fact that web browsers have grown into monstrosities that eat up gobs of RAM and CPU.
Electron-based apps (while convenient) is incredibly bloated compared to the equivalent native app. Take for example, Balena Etcher, which is 150 MB installer and takes up 450 MB installed. Compare that to Rufus, which is just under 2 MB in its portable form.
There's a reason why those web-based apps (whether it be Electron or React-based) are also looked down on in mobile development (Android/iOS).
Please do enlighten me how these web technologies are supposed to be faster than native technologies.
Business-Low-8056@reddit
Can to elaborate why it is bad? Im curious
maqisha@reddit
The website itself, or the "blog post"? Both are bad, I'm just interested in which one you are curious about.
Possible_Cow169@reddit
This is so good and the site loaded in seconds so you know they proved their point
cheezballs@reddit
Not really? The site doesn't do anything. No login, no routing, no dynamic data. It's so easy to say "just us html" when you're building a wall of text. But this isn't a true representation of what most websites do. Auth, routing, caching, etc.
sugarsnuff@reddit
Yeah and it looks like dong-cheese
CoffeeAcceptable_@reddit
This is perhaps one of the greatest sites i have ever visited.
jqVgawJG@reddit
That was a bit cringey but it makes a good point
jeevaks@reddit
Bro what website this is😭
AresMC@reddit
https://justfuckingusehtml.com
BrohanGutenburg@reddit
Sidenote: my major breakthrough in using adaptive/responsive design came when I realized that html is adaptive by default. You fuck it up with your css
mierecat@reddit
Well I’m convinced
MisoTahini@reddit
Bookmarked!
Any_Nebula5039@reddit
This was perfect 😆
Beregolas@reddit
thanks for the link, I will probably use it regularly from now on
Master-Rub-3404@reddit
Hello
Hit save and close.
DarkDiablo1601@reddit
this
sugarsnuff@reddit
You only need a backend if your site loads, saves, or shares data beyond a single device
I suggest you define what you want your site to do first. If you want to make fun games / widgets / a portfolio, all you need is a UI. You can actually do a lot with just a UI
If you want to create accounts or make a multi-user chat site or something you’d need a backend and database.
Also don’t listen to these “Just Fucking Use HTML” people. Regular JS (called Vanilla JS) gets messy quickly since it runs from top to bottom without scope, and using no JS at all is asinine. Use React.js or Next.js
JealousShape294@reddit
You can build a full website with only HTML CSS and JS if it is static but if you need logins forms or saving data then you will need a backend language like Python to handle that part
New_Wheel_6439@reddit
html+css+js is fair enough.
as long as the website itself no need any storage on cloud or remote server.
then you do not need any backend.
html+css+js can do all the fancy UX for you and modern browser can render them well.
XertonOne@reddit
Stick to what works best which I think it’s still html today.
michaelpaoli@reddit
With OS and web server, HTML is sufficient.
HTML is not a programming language. Nor is CSS.
NewBlock8420@reddit
You can totally build a website with just HTML, CSS, and JS. That's actually how a lot of static sites are made.
If you want to add things like user accounts, forms that save data, or a database, then you'd want to bring in a backend language like PHP or Python. But for a personal project, starting with the frontend is perfect.
thecuriousone9825@reddit
Great question! The short answer: yes, you can build a complete website with just HTML/CSS/JS for many use cases. The detailed responses here are all spot-on. Start with a static site to learn, then add backend (Node.js, Python, etc) when you need features like databases, authentication, or shopping. You can always expand later!
CowMaximum6831@reddit
You can make a website without a backend, let's say a portfolio website. If you have already learnt HTML, CSS and JS you are good to go
I'd suggest learning React; you won't regret it
no_regerts_bob@reddit
That is a website that will display a blank page on every browser I know of
Possible-Resort-1941@reddit
Depends on what this website is using for. If you only want to build a personal webpage, you can build static website (only need frontend). No need to have backend service.
Also, I’m part of a Discord community with people who are learning AI and ML together. Instead of just following courses, we focus on understanding concepts quickly and building real projects as we go.
If you're interested to build LLM full stack app, you can consider to join, here’s the invite:
https://discord.com/invite/nhgKMuJrnR
lIIIIIIIIIIIIlII@reddit
Learn to look up stuff and i dont mean post a question on reddit which got answered q million of times and just wqit untill someone gives you answer.
maqisha@reddit
If this is for just yourself, as a hobby/learning project, that's perfect, go right ahead.
No you don't "need" a backend language at all, but it all depends what your website is gonna be. Is it gonna have auth, shopping, llms, or anything similar? You need a backend. Is it gonna be a cool website with static pages, info, and interactivity? You don't need a server.
And a middle-ground is to use some BaaS like supabase, firebase or whatever else they have cooked up (I don't use these often). But its up to you how much control you wanna give up, and how much you wanna do/learn yourself.
Michaael115@reddit (OP)
If i wanted to add shopping or some sort of inventory system later, would it be an easy thing to do? In the sense that I could just add the backend stuff later?
maqisha@reddit
Difficulty is impossible to gauge.
- A simple shop can take an hour to implement.
- A complex shop can take years.
As you can see the gap is huge. It all depends on what you wanna try and do, and what your knowledge is.
But to answer a question if you can add it later? Definitely.
Apprehensive-Ask1039@reddit
you can definitely build a basic website using just html, css and javascript. no backend needed unless you want dynamic content or database interactions. focus on front-end first.
minneyar@reddit
You don't need anything except HTML and a place to host it.
itijara@reddit
No. First, you can build a "static" website which is only front-end. Look into GitHub pages: https://docs.github.com/en/pages/getting-started-with-github-pages/creating-a-github-pages-site
Second, even if you want to have a website with a database and authentication, you can still do it all on JavaScript with NodeJS which is a backend implementation of JavaScript. ExpressJS is a well supported library for doing that: https://expressjs.com/