<form action="/submit" method="POST">
<label for="email">Email:</label>
<input type="email" id="email" name="email" required aria-required="true">
<button type="submit">Subscribe</button>
</form>.container {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1rem;
}
.card {
display: flex;
flex-direction: column;
padding: 1rem;
border-radius: 8px;
}const fetchData = async (url) => {
try {
const response = await fetch(url);
const data = await response.json();
return data;
} catch (error) {
console.error('Fetch failed:', error);
}
};document.getElementById('weatherBtn').addEventListener('click', async () => {
const city = document.querySelector('#cityInput').value;
const apiKey = 'YOUR_KEY';
const res = await fetch(`https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=${apiKey}`);
const data = await res.json();
document.getElementById('temp').innerText = data.main.temp;
});import React, { useState } from 'react';
function TaskManager() {
const [tasks, setTasks] = useState([]);
const addTask = (task) => setTasks([...tasks, task]);
return ({tasks.map(t => <li key={t.id}>{t.text}</li>)});
}import { useEffect } from 'react';
useEffect(() => {
fetchTasks().then(data => setTasks(data));
return () => console.log('cleanup');
}, []); // empty dependency = run onceconst express = require('express');
const app = express();
app.use(express.json());
let posts = [];
app.get('/api/posts', (req, res) => res.json(posts));
app.post('/api/posts', (req, res) => {
const newPost = { id: Date.now(), ...req.body };
posts.push(newPost);
res.status(201).json(newPost);
});
app.listen(5000, () => console.log('Server running'));// Mongoose schema example
const mongoose = require('mongoose');
const userSchema = new mongoose.Schema({
username: { type: String, required: true, unique: true },
email: String,
passwordHash: String
});
const User = mongoose.model('User', userSchema);const jwt = require('jsonwebtoken');
const bcrypt = require('bcrypt');
app.post('/login', async (req, res) => {
const user = await User.findOne({ username: req.body.username });
const valid = await bcrypt.compare(req.body.password, user.passwordHash);
if (!valid) return res.status(401).json({ error: 'Invalid credentials' });
const token = jwt.sign({ userId: user._id }, process.env.JWT_SECRET, { expiresIn: '1d' });
res.json({ token });
});// React fetch with token
const fetchProfile = async () => {
const token = localStorage.getItem('token');
const res = await fetch('/api/users/me', {
headers: { 'Authorization': `Bearer ${token}` }
});
const data = await res.json();
setUser(data);
};# Example deployment commands
# Frontend (Vercel)
vercel --prod
# Backend (Render) – define start script in package.json:
"scripts": { "start": "node server.js" }