This repository contain the work of the final project in System Construct class. A school scheduling system webapp built with Vue.js, Spring Boot and MySQL. Deployed to AWS EC2 in a containerized Docker backend.
git clone https://github.com/nakarinh14/system-construct-project
For Spring Boot: In IntelliJ IDEA import/open the backend
folder and reload the maven dependency
For Vue: Install yarn
first. Check https://classic.yarnpkg.com/en/docs/install/.
-
For Windows : Install
node.js
beforeyarn
. Check https://nodejs.org/en/. -
After
yarn
is installed, runyarn global add @vue/cli
.
To deploy Vue in development, just cd
to frontend
and type yarn serve
, which would deploy in default localhost8080 and display a URL where the website is.
- For Window: before running
yarn serve
runnpm i
first.
DON'T WORK ON master
BRANCH ON YOUR PC. To push change, don't git push
on the master
branch on your computer, as it will merge with master branch on Github and may cause file and error conflict for others when they git pull
for latest update for their branch.
Work on a seperate branch on your local:
Create a new seperate branch with git checkout -b your-branch-name-here
. This would automatically switch from your branch master
to your-branch-name
as shown from your Terminal/Shell
Before pushing your branch to Github, make sure your branch that you want to push is up to date with change from remote master
branch. (It's safer to resolve merge conflict on your computer than Github lol):
- Git commit all the local change for your local branch, or else changing branch will lose all your uncommited change
git checkout master
git pull
git checkout
back to your local branchgit merge master
to merge master into your local branch, which update changes, etc.- From there, edit any merge conflict (if any) and then you can push into Github
When you want to push your commited branch from your-branch-name-here
to Github, the command is git push origin your-branch-name-here
(origin
is this Github master
branch)
Afterward, a pull request will appear on Github, so we can go and compare and check if there are conflicting files or not, then we can decide to merge with master branch here.
On Chrome. I think these 2 extension are quite useful in debugging frontend and backend later on :
To develop frontend
I recommend using WebStorm (which is from IntelliJ) or VSCode is fine too