Commit Graph
100 Commits
Author SHA1 Message Date
wancat aec0cf84ad feat: include complete stage name in command 2023-10-29 17:41:38 +08:00
wancat 8f22babe7d feat: sanitize file checks 2023-10-29 17:41:38 +08:00
Lin, Hung-Shin 50b1fe5124 feat: execute files check via docker cli
WARNING: possible command injection vunerability.
2023-10-29 17:41:38 +08:00
Lin, Hung-Shin 38f3dbcd65 feat: install docker cli in backend
* change the copy order to improve performance
2023-10-29 17:41:38 +08:00
Lin, Hung-Shin 579d53a273 feat: refactor dockerfiles
* combine dev and prod into multi-stages dockerfile
* replace node with node:20-alpine to reduce image size
2023-10-29 17:41:38 +08:00
Lin, Hung-Shin 625c1a80da feat: able to test files 2023-10-29 17:41:38 +08:00
Lin, Hung-Shin af27780763 feat: buildFileCheckCmd 2023-10-29 17:41:38 +08:00
Lin, Hung-Shin b7ecfe3980 feat: implement $not and $or condition 2023-10-29 17:41:38 +08:00
Lin, Hung-Shin e52682686a fix: load .zshrc in system dir 2023-10-29 17:41:38 +08:00
Lin, Hung-Shin 2f64175df2 feat: update quest schema
* files
* boolean operator
2023-10-29 17:41:38 +08:00
Lin, Hung-Shin fd088a35d0 Merge pull request #46 from linux-odyssey/ui-revise
UI revise
2023-10-28 23:05:09 +08:00
Lin, Hung-Shin c76f877255 Update index.html 2023-10-26 13:13:04 +08:00
Lin, Hung-Shin 87f885b32a Merge pull request #44 from linux-odyssey/feat-analytics
Add analytics script
2023-10-15 07:52:59 +08:00
Lin, Hung-Shin 64596b57dc Add analytics script 2023-10-15 07:48:05 +08:00
Lin, Hung-Shin d13d330a83 Merge pull request #43 from linux-odyssey/feat-add-username-hint
Add username instruction
2023-10-15 00:32:17 +08:00
Lin, Hung-Shin 2513f41515 Merge pull request #42 from linux-odyssey/fix-complete-modal
fix: change complete modal title
2023-10-14 23:06:21 +08:00
wancat 6f8d297b04 fix: change complete modal title 2023-10-14 23:04:39 +08:00
wancat 5e1457c007 feat: show modal on quest completing
TODO: use setTimeout for now
need to change to capture user's activity in container in the future
2023-10-14 22:52:57 +08:00
wancat 4ad1b865d6 feat: add survey modal ui 2023-10-14 22:44:11 +08:00
Lin, Hung-Shin 0741d3ea53 Merge pull request #34 from linux-odyssey/feat-analytics
feat: analytics
2023-10-14 19:50:08 +08:00
wancat 20927fe8aa feat: docker setup & deployment 2023-10-14 19:43:13 +08:00
wancat ad08bde4c4 feat: link error command to session detail page 2023-10-14 19:15:24 +08:00
wancat 2257b4b809 feat: session detail page 2023-10-14 19:15:07 +08:00
wancat a4f1c9fef1 fix: remove debugging log 2023-10-14 18:50:03 +08:00
wancat 4b2f20f384 fix: handle no value cases 2023-10-14 18:43:38 +08:00
wancat 277a1aec79 fix: remove unused populate 2023-10-14 18:43:22 +08:00
wancat fe1f595f0f feat: add sessions page 2023-10-14 18:28:01 +08:00
wancat 50e53b5667 feat: add error commands page 2023-10-14 17:43:12 +08:00
wancat d249207283 feat: add nav bar 2023-10-14 17:12:42 +08:00
wancat 9e990a2fa4 feat: users list page 2023-10-14 17:10:17 +08:00
wancat c8c9a584d0 fix: add social login to exist user 2023-10-14 17:09:50 +08:00
wancat abf1ecddb4 feat: add router and css 2023-10-14 16:17:47 +08:00
wancat cc95bb195b feat: add usercount, session count and complete rate 2023-10-14 16:03:44 +08:00
wancat add6bfd100 feat: connect analytics to mongo 2023-10-14 16:03:44 +08:00
wancat fb687094ee feat: new analytics package, setup template 2023-10-14 16:03:44 +08:00
Lin, Hung-Shin bd3d463280 Merge pull request #40 from linux-odyssey/refactor-separate-models
Separate models to new package
2023-10-14 16:01:21 +08:00
wancat 08eaa550a0 fix: rethrowing connectDB error 2023-10-14 15:54:56 +08:00
wancat 46071d8830 fix: remove sensative logs 2023-10-14 15:52:02 +08:00
wancat cc9040038d fix: change connect db error handling 2023-10-14 15:49:13 +08:00
wancat d3dd12a547 feat: add Timestamps to User model 2023-10-14 15:42:39 +08:00
wancat 916b78240c fix: oauthVerify models import 2023-10-14 15:36:03 +08:00
wancat e4e53b533f fix: clean script 2023-10-14 15:35:23 +08:00
wancat 50bf514805 feat: separate db models from server 2023-10-14 15:34:46 +08:00
Lin, Hung-Shin 784ae29ed0 Merge pull request #39 from linux-odyssey/feat-pick-username
feat: pick username
2023-10-14 15:14:11 +08:00
Lin, Hung-Shin 5c7acd88ca refactor: reuse AuthForm in ChooseUsernamePage 2023-10-13 17:21:10 +08:00
Lin, Hung-Shin c5ccf03ac5 feat: add username and email check in frontend 2023-10-13 16:38:25 +08:00
Lin, Hung-Shin 30aeacaf06 feat: separate Login and Register Page 2023-10-13 16:13:25 +08:00
Lin, Hung-Shin 74e94864e2 Merge pull request #32 from linux-odyssey/license
Create LICENSE
2023-10-13 01:00:05 +08:00
wancat 7a9206fb47 refactor: reuse oauthVerify function 2023-10-13 00:51:00 +08:00
wancat 9253feb520 fix: add permission 2023-10-13 00:32:58 +08:00
wancat db0126de53 fix: change to use mattzcarey/code-review-gpt 2023-10-13 00:25:14 +08:00
wancat d0186727ce feat: add chatgpt code reivew 2023-10-13 00:18:56 +08:00
wancat 182fcf643f feat: pick username
* put new registered social login user to session data
* ask to choose username
* simplify checkUsername functions
2023-10-13 00:05:59 +08:00
Lin, Hung-Shin 5591689816 Merge pull request #38 from linux-odyssey/feat-github-auth
feat: github auth
2023-10-12 22:02:17 +08:00
Lin, Hung-Shin bcea9faee9 Update example.env
Add `BASE_URL` into example
2023-10-12 21:59:25 +08:00
Lin, Hung-Shin 8719591faa Merge pull request #37 from linux-odyssey/fix-google-auth
Fix google auth
2023-10-11 14:51:28 +08:00
Lin, Hung-Shin 6e7597dca0 fix: update document, accept env from shell in prod 2023-10-11 14:51:00 +08:00
Lin, Hung-Shin 33582a4827 fix: add baseUrl in passport oauth 2023-10-11 14:46:07 +08:00
Lin, Hung-Shin a69f4960b2 Merge pull request #33 from linux-odyssey/feat-google-auth
Feat google auth
2023-10-11 12:32:18 +08:00
Lin, Hung-Shin 6654f8880a fix: display block only when social logins enabled
* text-m -> text-base
2023-10-11 10:50:22 +08:00
Lin, Hung-Shin 50bed23d37 fix: remove unnecessary console log 2023-10-05 14:22:47 +08:00
Lin, Hung-Shin 72b2711367 feat: make social login optional 2023-10-05 13:32:02 +08:00
Lin, Hung-Shin a79b66ed8d fix: remove env_file field but subsistute from shell 2023-10-05 13:31:15 +08:00
Lin, Hung-Shin aac1592957 fix: add env for google client id & secret 2023-10-05 12:25:42 +08:00
Lin, Hung-Shin 9ac7fc9752 feat: add login with google in frontend
fix vite proxy setting
2023-10-05 12:02:23 +08:00
Lin, Hung-Shin aa29098954 fix: register error message "email already exists" 2023-10-05 11:50:21 +08:00
Lin, Hung-Shin 1880b30029 feat: use google to login 2023-10-05 11:50:00 +08:00
Lin, Hung-Shin 44b3304046 feat: login to google success 2023-10-04 13:23:16 +08:00
Lin, Hung-Shin 9b0f8d20da Create LICENSE 2023-10-03 21:59:37 +08:00
Lin, Hung-Shin d04c6a4801 fix: remove unnecessary pulling in workflow 2023-09-28 14:02:21 +08:00
Lin, Hung-Shin f794e8f112 feat: setup github action e2e job 2023-09-28 13:54:36 +08:00
Lin, Hung-Shin b305cd92b9 feat: allow pushing of quest base image to save time 2023-09-28 13:49:14 +08:00
Lin, Hung-Shin 440db20f5f doc: add e2e testing instruction 2023-09-28 13:47:28 +08:00
Lin, Hung-Shin 6ee87823f1 feat: add e2e testing docker compose file 2023-09-28 13:47:00 +08:00
Lin, Hung-Shin a6ffd6b037 feat: cypress accept baseUrl from env 2023-09-28 13:27:46 +08:00
Lin, Hung-Shin 94e8940369 feat: init cypress 2023-09-25 13:28:52 +08:00
Lin, Hung-Shin 2524acecf4 Merge pull request #28 from linux-odyssey/fix-cookie
fix: change cookie setting, prevent form trigger twice
2023-09-18 23:38:00 +08:00
wancat b8e520152b fix: change cookie setting, prevent form trigger twice 2023-09-18 23:37:25 +08:00
Lin, Hung-Shin 248355a2f5 Merge pull request #26 from linux-odyssey/feat-auth
backend:
* add `username` and `email` 2 unique and required field to User
* use PassportJS for authentication framework
* use express-session, connect-mongo as backend
* use passport-local for password authentication
* use passport-jwt for container authentication

frontend:
* combined login / sign up flow
* use http-only cookie
* move login page from `/` to `/login`, automatically redirect

client:
* remove `list` command (not useful)
* add authentication functions
2023-09-18 22:54:28 +08:00
wancat 45231dda11 fix: update client to authenticate by session 2023-09-18 22:51:20 +08:00
wancat 59ced31094 fix: update config field name 2023-09-17 13:05:49 +08:00
wancat d745531a14 feat: update swagger, secure cookie 2023-09-17 12:48:50 +08:00
wancat d939b7eb4d feat: add loggedIn checks for frontend 2023-09-17 12:29:45 +08:00
wancat 34c277c886 feat: update frontend to use cookie session
* use SessionMiddleware in socket.io server
* add back jwtStrategy for commands
2023-09-17 12:14:30 +08:00
wancat be5cd152a9 change to use session for auth
+ replace BearerAuth to cookieAuth in swagger
+ add swagger.yaml to nodemon watch list
2023-09-17 11:27:37 +08:00
Lin, Hung-Shin a6d02f2616 refactor: simplify register flow 2023-09-15 15:50:36 +08:00
Lin, Hung-Shin 5dd56308ce feat: add login by username or email 2023-09-14 18:58:09 +08:00
Lin, Hung-Shin f5c465ab69 feat: add login & signup flow 2023-09-14 18:54:40 +08:00
Lin, Hung-Shin f1510df13e feat: enhance checkUser api
* determine whether it's email or username, and if it exists
2023-09-14 17:43:07 +08:00
Lin, Hung-Shin 3aa27ae597 feat: add username and email validation function 2023-09-14 17:39:26 +08:00
Lin, Hung-Shin 49417c405a feat: add login in frontend
* extract icon library from main.js
* extract router from main.js
* failure with error in passport
* add example to swagger
2023-09-13 14:02:28 +08:00
wancat b55b7aa1ec feat: add register, checkUsername, update swagger 2023-09-12 23:01:49 +08:00
wancat 04a0b21cf6 fix: session response payload 2023-09-12 00:12:22 +08:00
wancat 0f53696f71 feat: apply auth to container and cli client 2023-09-12 00:12:09 +08:00
wancat 030dc95e24 refactor: put passport to auth folder 2023-09-11 23:38:29 +08:00
wancat 41111f5036 feat: add jwt verification 2023-09-11 23:09:00 +08:00
wancat bcdd04715d feat: add password login 2023-09-11 22:59:41 +08:00
Lin, Hung-Shin a5dbcd7db4 Merge pull request #24 from linux-odyssey/app-neil
feat: add Authentication Page
2023-09-10 20:16:05 +08:00
wancat ac8e2bc73a Merge branch 'main' into app-neil 2023-09-10 20:12:43 +08:00
wancat c3b7968a76 feat: use vue router to organize pages 2023-09-10 20:06:23 +08:00