Git Product home page Git Product logo

chrismarshallsf / privacy.sexy Goto Github PK

View Code? Open in Web Editor NEW

This project forked from undergroundwires/privacy.sexy

0.0 1.0 0.0 4.42 MB

Open-source tool to enforce privacy & security best-practices on Windows, because privacy is sexy ๐Ÿ‘๐Ÿ†

Home Page: https://privacy.sexy

License: GNU General Public License v3.0

Dockerfile 0.15% JavaScript 0.51% HTML 0.73% Vue 30.82% TypeScript 65.55% CSS 2.25%

privacy.sexy's Introduction

privacy.sexy

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

Get started

privacy.sexy application

Why

  • You don't need to run any compiled software that has access to your system, just run the generated scripts.
  • Have full visibility into what the tweaks do as you enable them.
  • Ability to revert applied scripts
  • Easily extendable
  • Everything is open-sourced including both application and infrastructure
    • Fully automated CI/CD pipeline using GitHub actions
      • to AWS for provisioning serverless infrastructure
      • for building and sharing the desktop applications

Extend scripts

Commands

  • Project setup: npm install
  • Testing
    • Run unit tests: npm run test:unit
    • Lint: npm run lint
  • Desktop app
    • Development: npm run electron:serve
    • Production: npm run electron:build to build an executable
  • Webpage
    • Development: npm run serve to compile & hot-reload for development.
    • Production: npm run build to prepare files for distribution.
    • Or run using Docker:
      1. Build: docker build -t undergroundwires/privacy.sexy:0.6.0 .
      2. Run: docker run -it -p 8080:80 --rm --name privacy.sexy-0.6.0 undergroundwires/privacy.sexy:0.6.0

Architecture

Application

  • Powered by TypeScript, Vue.js and Electron ๐Ÿ’ช
    • 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 and other UI-related code.
      • Desktop application is created using Electron.
      • 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

privacy.sexy's People

Contributors

undergroundwires avatar undergroundwires-bot avatar dependabot[bot] avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.