The backend system of document system.
- Git branch rule:
main
branch should a release (production) branch, anddev
also under protected, you are not allowed to force pushing any commit, please creaet PR first.- Creating your branch from
dev
branch when developing feature. - Choose a review from our team member as reviewer to review your PR.
- Writing some testing case before commit PR.
- Dev
- Replace sensitive base on your env:
$ cd system $ cp .env.sample .env $ vim .env # write down your env
- build and running:
- You can change dev or production of API when change
ENVIRONMENT
, acceptdev
andproduction
$ docker compose up --build
- You can change dev or production of API when change
- backend running on
5000
port directly, Nginx expost8080
port and rewrite/api/v1
before redirect to backend server - fill
system/service/client_secret.json
for Google Oauth
- Replace sensitive base on your env:
- Testing
- Run testing and generate report (on terminal and html)
$ cd system $ coverage run -m pytest -v --cov=repo --cov=service --cov=controller --cov=email_notification_system --cov-report term --cov-report html
- you can run http server to see coverage report in html:
$ cd system && python -m http.server
- Run testing and generate report (on terminal and html)
- k8s
$ cd k8s $ kubectl create namesapce document-system $ kubectl apply -f deployment.yaml $ kubectl apply -f service.yaml
This template should help get you started developing with Vue 3 in Vite.
VSCode + Volar (and disable Vetur).
TypeScript cannot handle type information for .vue
imports by default, so we replace the tsc
CLI with vue-tsc
for type checking. In editors, we need Volar to make the TypeScript language service aware of .vue
types.
See Vite Configuration Reference.
npm install
npm run dev
npm run build
Run Unit Tests with Vitest
npm run test:unit
Run End-to-End Tests with Cypress
npm run test:e2e:dev
This runs the end-to-end tests against the Vite development server. It is much faster than the production build.
But it's still recommended to test the production build with test:e2e
before deploying (e.g. in CI environments):
npm run build
npm run test:e2e
Lint with ESLint
npm run lint