A modern, responsive personal portfolio website built with Node.js, Express, and modern web technologies.
- Responsive Design: Works perfectly on desktop, tablet, and mobile devices
- Modern Tech Stack: Built with Node.js 18+, Express 4, and modern build tools
- Email Integration: Contact form with SendGrid email service
- Performance Optimized: Minified CSS/JS, optimized assets
- SEO Friendly: Proper meta tags and structured data
- Node.js 18.0.0 or higher
- npm or yarn package manager
-
Clone the repository
git clone https://github.com/daniloaleixo/daniloaleixo.github.io.git cd daniloaleixo.github.io -
Install dependencies
npm install
-
Set up environment variables (optional, for email functionality)
export SENDGRID_API_KEY=your_sendgrid_api_key_here
npm run devThis starts the server with nodemon for automatic reloading on file changes.
npm startnpm run buildThis compiles and minifies CSS and JavaScript files.
npm run watchThis watches for changes in SCSS and JS files and automatically rebuilds them.
Run the test suite to verify everything is working:
npm testdaniloaleixo.github.io/
├── public/ # Static assets
│ ├── assets/ # Images, icons, PDFs
│ ├── css/ # Compiled CSS
│ ├── js/ # JavaScript files
│ └── libs/ # Third-party libraries
├── scss/ # SCSS source files
├── index.html # Main HTML file
├── index.js # Express server
├── gulpfile.js # Build configuration
└── package.json # Dependencies and scripts
The server runs on port 5000 by default. You can change this by setting the PORT environment variable:
export PORT=3000
npm startTo enable the contact form email functionality, set your SendGrid API key:
export SENDGRID_API_KEY=your_api_key_hereThis project is configured for Heroku deployment. Simply push to your Heroku repository:
git push heroku mainThe project can be deployed to any Node.js hosting platform (Vercel, Netlify, Railway, etc.).
This project is licensed under the MIT License - see the LICENSE file for details.
Danilo Aleixo
- GitHub: @daniloaleixo
- LinkedIn: danilo-aleixo
- Medium: @daniloaleixo94
Contributions are welcome! Please feel free to submit a Pull Request.