My personal website. Built using Node.js, React, Express, React-Router, Hot Module Reloading, Webpack and many other technologies.
Note: Please see the github-hosting branch for a stripped down version of this site that can be deployed easily to github pages. Feel free to contact me at any valid email address at @mldangelo.com (ex. [email protected]) for questions about running, modifying, or contributing to this project.
Tested with:
- node >= v8.12.0
- yarn >= v1.10.0
- mongodb >= 3.4.0
- Run the following commands:
git clone git://github.com/mldangelo/personal-site.git
cd personal-site
yarn
cp sample.env .env
and set values as appropriate.
- Set
NODE_ENV=development
in.env
. - Run
npm run dev
and navigate to<ip>:<port> (default=localhost:7999)
.
- Set
NODE_ENV=production
in.env
. - Run
npm run deploy
OR - Run
npm run build
followed bynpm run start
and navigate to<ip>:<port> (default=localhost:7999)
.
- Optionally configure nginx. Run:
sudo ln [root directory]/nginx/mldangelo.conf [nginx directory]/sites-enabled/personal-site.conf
sudo service nginx restart
Note: HTTPS block should be removed if step 3 (below) is not followed.
- Optionally configure a SSL certificate using Certbot. See here for installation and setup instructions. A cronjob such as:
0 0 1 * * sudo /home/ubuntu/certbot/certbot-auto renew --quiet --no-self-upgrade
should be set to automatically renew the certificate in production.
- Special thanks to @typpo for tirelessly answering all of my node.js and react questions.
- Template based on Future Imperfect by @ajlkn for HTML5 UP.