Skip to content

theomeb/emoeth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Front-end site for my personal portfolio/showcase + back API to support it.

Structure & Stack

  • Static frontend emoeth-vue-frontend: Vue + Vuetify (and Vuesax)

  • API api-emoeth: Flask app deployed on an AWS Lambda with Serverless framework

Development

  • Frontend
# cd into the project directory
cd emoeth/emoeth-vue-front-end

# install dependencies
npm install

# Start local dev server
npm run serve
  • API
# cd into the api directory
cd emoeth/api-emoeth

# install dependencies
pip install -r requirements.txt

# also install serverless framework and required plugins
sls plugin install -n serverless-wsgi
sls plugin install -n serverless-python-requirements

# Start local dev server
sls wgsi serve

Deployment

AWS S3 - Front

  1. Go on root repository folder: cd emoeth
  2. Simply launch the make command with the appropriate front version tag: make deploy_vue_front_on_AWS_S3 version=<NEXT_VERSION>
  3. Deploy logs are saved in deploy_logs.txt

That's it, now the front site gets deployed automatically.

AWS Lambda - Back

  1. Go on root repository folder: cd emoeth
  2. Simply launch the make command with the appropriate back version tag: make deploy_back_on_AWS_lambda version=<NEXT_VERSION>
  3. Deploy logs are saved in deploy_logs.txt

That's it, now the back gets deployed automatically to AWS Lambda.

Github pages

0. Prior to the deployment, you need to change in vue.config.js the following: publicPath: process.env.NODE_ENV === 'production' ? '/emoeth/' : '/',

  1. Go on root repository folder: cd emoeth/emoeth-vue-front-end
  2. Simply launch the make command with the appropriate version tag: deploy_vue_front_on_github_pages version=<NEXT_VERSION>
  3. Deploy logs are saved in deploy_logs.txt

That's it, now the site gets deployed automatically.