VictorStatko / Savepasswords

Home Page:https://savepasswords.dev/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Selfhosted password manager with client side encryption. Implemented with microservice architecture. Created for educational purposes.

Requirements:
Docker-ce 18.09.7
Browser with Web Crypto API and IndexedDB support
Node js (for local development)

Before development/production deploy:

  1. clone content of file .env.example to new file .env
  2. change environment variables at .env file (if needed)
  3. sudo chown -R 1001:root {zookeeper volume} example: sudo chown -R 1001:root /home/victor/development/data/docker/zookeeper1/data
  4. sudo chown -R 1001:root {kafka volume} example: sudo chown -R 1001:root /home/victor/development/data/docker/kafka1/data
  5. mvn clean package for every microservice

Development: sudo docker-compose -f docker-compose.yml -f docker-compose-dev.yml up --build
cd frontend
npm start
(Intelij debug https://www.jetbrains.com/help/idea/run-and-debug-a-spring-boot-application-using-docker-compose.html)
don't forget in compose debug config set=true "--build/force build images

Testing:
For testing use mvn test (only unit) or mvn verify (unit and integration). Currently tests only in personalAccountService.

Restart single service (example): docker-compose -f docker-compose.yml -f docker-compose-debug.yml up --detach --force-recreate --no-deps --build email-service

About

https://savepasswords.dev/


Languages

Language:Java 53.6%Language:JavaScript 38.3%Language:HTML 4.7%Language:SCSS 3.0%Language:Dockerfile 0.4%