Technical Documentation: Lissy93/personal-security-checklist
βΉοΈ Provenance: Multi-Tier Ingestion Β· CodeWiki Reference
Overview (`.github/README.md`)
Personal Security Checklist
**Contents**The Checklist
You can read the full checklist in CHECKLIST.md.
To view/edit the raw data, see personal-security-checklist.yml
The Website
The easiest method for consuming the checklist is via our website: digital-defense.io
Here you can browse lists, filter by your threat model and tick items off once complete (plus, there are pretty charts to make you feel good about your progress βΊοΈ).
About
The source for the website is in web/.
The site is built with Qwik, using TypeScript and some components from DaisyUI.
Developing
To run the app locally, or to make code changes, you'll need Node (20.19+ or 22.12+) and Git installed.
- Grab the code:
git clone [email protected]:Lissy93/personal-security-checklist.git - Navigate into the source:
cd personal-security-checklist/web - Install dependencies:
yarn - Start the development server:
yarn dev
Alternatively, just open this repo in Code Spaces, where everything is already configured and ready to go.
Deploying
Option 1) From source
To deploy the app, follow the developing steps above, then run yarn build.ssg. You can then deploy it by copying the dist/ directory to any CDN, web server or static hosting provider of your choice.
Option 2) Static host
Alternatively, fork the repo and import it into any static hosting provider, like Vercel or Netlify.
Option 3) Docker
We also have a Docker image published to GHCR and DockerHub (lissy93/personal-security-checklist).
It's ~11 MB, runs as a non-root user, works on amd64, arm64 and armv7, and gets rebuilt whenever the checklist changes, serving the site with nginx on port 8080.
Either see the docker-compose.yml, or just use the following Docker run command:
docker run -d -p 8080:8080 lissy93/personal-security-checklistThe API
We also make all the data available via a free API, which you can use however you wish.
Usage
All endpoints are documented in our OpenAPI spec, you can view these and try them out via our Swagger docs.
Base: digital-defense.io/api
/api/checklists
/api/checklists/[name-or-index]
/api/checklists/[name]/[point-index]
/api/search/[searchterm]
Contributing
All checklist data is stored in personal-security-checklist.yml. This is pulled in the website at build-time and referenced by the API, and is also dynamically inserted into the markdown Checklist page.
So if you only wish to make changes to the data, this is the only file you need to edit.
Important: When submitting your pull request, provide references backing up any information that you're adding/amending/removing.
For modifying the website or API source, see the developing sections above for instructions on running locally.
Before submitting an issue or PR, please ensure you've followed the community guidelines and followed the Code of Conduct.
Credits
Sponsors
Contributors
Stargzers
Credits
Thank you to all who have contributed to, or sponsored this project!
Sponsors
If you've found this repository helpful, consider sponsoring me on GitHub if you're able π
Contributors
License
Lissy93/Personal-Security-Checklist is licensed under MIT Β© Alicia Sykes 2024.
For information, see TLDR Legal > MIT
Expand License
The MIT License (MIT)
Copyright (c) Alicia Sykes <[email protected]>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sub-license, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished
to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included install
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANT ABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.--- METRICS ---
- Files Extracted: 1
- Estimated Token Budget: ~1697 tokens
- Canonical Reference: https://codewiki.google/github.com/Lissy93/personal-security-checklist