// server.js const express = require('express'); const bodyParser = require('body-parser'); const nodemailer = require('nodemailer'); const cors = require('cors'); const app = express(); app.use(cors()); app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); app.use(express.static(__dirname)); // serve HTML files // ======= CHANGE THESE TO YOUR EMAIL ======= const MY_EMAIL = 'yourgmail@gmail.com'; // put your Gmail const MY_PASSWORD = 'yourappspecificpassword'; // Gmail App Password // ========================================== // Route for contact form app.post('/send-message', (req, res) => { const { name, email, message } = req.body; const transporter = nodemailer.createTransport({ service: 'gmail', auth: { user: MY_EMAIL, pass: MY_PASSWORD } }); const mailOptions = { from: email, to: MY_EMAIL, subject: `New Message from ${name}`, text: `Name: ${name}\nEmail: ${email}\nMessage: ${message}` }; transporter.sendMail(mailOptions, (error, info) => { if (error) { console.log(error); res.status(500).send('Error sending message'); } else { console.log('Email sent: ' + info.response); res.send('Message sent successfully!'); } }); }); // Start server const PORT = 3000; app.listen(PORT, () => console.log(`Server running on port ${PORT}`));