Comments (2)
Yes! Agreed having automated tests would be great for smoothing out contributing.
I like that the package has very little dependencies as well - less things to break and maintain, and the code being easily fully auditable is sort of a feature for a security-related library. I was thinking we could even parse the cli arguments manually and implement the encryption with webcrypto in node so there would be zero external dependency.
But adding a dependency for tests really makes sense, especially since it's a dev dependency.
Regarding puppeteer I'm a bit concerned that it downloads a full chromium version, that feels pretty heavy to me. I'd think testing the encryption/decryption logic with the refactoring you did in your later PRs would be a step in the right direction, we could check the generated example_encrypted.html
files are as expected, and only changes to password_template.html
and index.html
would need to be manually tested. Hopefully with the refactoring these files can become quite light and rarely change. Do you feel that would help your workflow?
Node's test harness looks quite nice but is marked as "Experimental" still and I'd value using something really stable so that the package can be untouched for a while and picking up development can still be very easy. So I personally wouldn't have any issue with using Jest or another well known lib.
from staticrypt.
For the record - rereading this, my objections to pupeeter don't make that much sense to me now (the low number of dependencies mostly matter for dependencies
but it would be in devDependencies
, could run in CI) and I think it could be a fine choice. 👍
from staticrypt.
Related Issues (20)
- Add custom styling HOT 3
- Support encrypting multiple files at once
- Change the CLI signature to be more consistent and flexible
- Remove as much of the code from password_template to allow non-breaking updates
- Make webcrypto engine the only available
- Add confirmation prompt when using a weak password
- Cannot destructure property 'subtle' of 'crypto' as it is undefined. HOT 11
- Missing Package in Latest Release 3.1.0 HOT 2
- Error: Cannot find module 'node:crypto' HOT 3
- Feature: Support usernames, with database HOT 6
- Nothing is happening when clicking "decrypt" on encrypted pages HOT 2
- The `--remember false` option does not work HOT 1
- Page not protected until reload HOT 7
- Question - Is it possible to still use CryptoJS? HOT 4
- setup doesn't work reliably & no CSS HOT 5
- Did not generate encrypted content with "--share" HOT 1
- Auto remember me from shareable link HOT 6
- Please update the home page interface to be compatible with mobile browsers HOT 2
- Encrypt directories recursively but only HTML files HOT 2
- Encrypt page but with no password prompt box HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from staticrypt.