This is a full stack web application built by Vue.js, Express.js and Sqlite3. It is deployed on the lovelace server. The domain name is called https://candidaphenome.org/
The domain name is owned by Professor Chad, and it is renewing yearly
- Backend
- data
- xlsx and csv files
- image
- jpg files
- db
- javascript files, use to insert data into database
- knex.js, it is a query builder, handling sql query
- database.db, sqlite3 lightweight database
- other js files are used to insert data into the db file
- javascript files, use to insert data into database
- index.js
- the main entry of the backend folder
- data
- frontend
- dist
- static content, when deploy, need to run
npm run buildfirst
- static content, when deploy, need to run
- src
- assets
- devlog.json, logs for developing
- three universities' logo
- components
statscontainsd3.jscode to plot the statistic graph for attribute- data_display and remaining
.vuefiles are displaying component
- router
- routing between every page
- store
- auth.js, it provide a simple login feature, it will be removed later, so far the password is
1 - searchHistory.js, it provides a historical search feature, it is a simple one. It will generate button for users to click.
- index.js, it is loading above code into the main program
- auth.js, it provide a simple login feature, it will be removed later, so far the password is
- utils
- mutant_key_mapping.js, this file contain mapping logic.
- views
- contain all pages views details. When you are redirecting to a page, it will first load the corresponding code from
viewsfolder, for example, if therouterredirect us to theAboutpage, it will load the code from here, andAbout.vueusing the code fromcomponentsfolder
- contain all pages views details. When you are redirecting to a page, it will first load the corresponding code from
- assets
- .env
- environment set up, determined by the url
- dist
- frontend_ts (discard)
You need to request the access from the lab first.
Once you get the access, you should access to the lab through ssh
ssh yourname@lovelace.cs.umn.edu and you should enter your password
Once you are logged in, you can find the project root folder by using following steps
cd /heap
cd C.albicansDataHubBelow are workflow I am using
- clone the repo into your local (done once)
- deploy and test the code on your end
- push the code to the github
- log to the lovelace server
- get to the project root
sudo git pullthe change- go to the frontend
- run
sudo npm run buildto build the static content - go to the backend
- run
sudo pm2 restart indexorsudo pm2 start index
- you have to use the sudo command because the deployment by using pm2 is affected by the role
- because both backend and frontend are deployed on the same server, reverse proxy is used here. You don't need to worry about it unless you want to introduce other port.
- you can access apache file by executing following commands
cd /etc/apache2/etc/apache2/sites-available/and/etc/apache2/sites-enabled/are files you should pay attention to