Files
privacy.sexy/README.md
undergroundwires 4a91e8ccd8 automated using bump-everywhere + more quality checks (#8)
- new workflows
- linting commands & linted stuff
- security checks & fixed audited vulnerabilities
- updated documentation
2020-05-24 19:25:43 +01:00

4.4 KiB

privacy.sexy

Web tool to enforce privacy & security best-practices on Windows, because privacy is sexy 🍑🍆

contributions welcome Language grade: JavaScript Maintainability Tests status Quality checks status Security checks status Bump & release status Deploy status Auto-versioned by bump-everywhere

https://privacy.sexy

Why

  • You don't need to run any compiled software on your system, just run the generated scripts.
  • It's open source, both application & infrastructure is 100% transparent
    • Fully automated C/CD pipeline to AWS for provisioning serverless infrastructure using GitHub actions.
  • Have full visibility into what the tweaks do as you enable them.
  • Easily extendable

Extend scripts

Fork it & add more scripts in application.yaml and send a pull request 👌

Commands

  • Setup and run
    • For development:
      • npm install to project setup.
      • npm run serve to compile & hot-reload for development.
    • Production (using Docker):
      • Build docker build -t undergroundwires/privacy.sexy .
      • Run docker run -it -p 8080:8080 --rm --name privacy.sexy-1 undergroundwires/privacy.sexy
  • Prepare for production: npm run build
  • Run tests: npm run test:unit
  • Lint and fix files: npm run lint

Architecture

Application

  • Powered by TypeScript + Vue.js 💪
    • and driven by Domain-driven design, Event-driven architecture, Data-driven programming concepts.
  • Application uses highly decoupled models & services in different DDD layers.
    • Domain layer is where the application is modelled with validation logic.
    • Presentation Layer
      • Consists of Vue.js components & UI stuff.
      • Event driven as in components simply listens to events from the state and act accordingly.
    • Application Layer

DDD + vue.js

AWS Infrastructure

AWS solution

  • It uses infrastructure from the following repository: aws-static-site-with-cd
    • Runs on AWS 100% serverless and automatically provisioned using GitHub Actions.
    • Maximum security & automation and minimum AWS costs are the highest priorities of the design.

GitOps: CI/CD to AWS

  • CI/CD is fully automated for this repo using different GIT events & GitHub actions.
    • Versioning, tagging, creation of CHANGELOG.md and releasing is automated using bump-everywhere action
  • Everything that's merged in the master goes directly to production.

CI/CD to AWS with GitHub Actions