* Public File Sharing
This implements public file sharing (read-only) with and without passwords (#57).
It also fixes a problem with filenames including special characters like `#` not working properly (#71).
You can share a directory or a single file, by using the new share icon on the right of the directories/files, and click on it to manage an existing file share (setting a new password, or deleting the file share).
There is some other minor cleanup and other copy updates in the README.
Closes#57Fixes#71
* Hide UI elements when sharing isn't allowed
This adds Email as a multi-factor authentication method/option. It reuses the `VerificationCode` for the code generation and validation.
It also refactors the email templating for easier repurposing.
Finally, it has a small Deno version bump.
Closes#25
* Add TOTP MFA Support
* Add Passkey MFA Support
It's not impossible I missed some minor cleanup, but most things make sense and there isn't a lot of obvious duplication anymore.
---------
Co-authored-by: Bruno Bernardino <me@brunobernardino.com>
* Implement a more robust Config
This moves the configuration variables from the `.env` file to a new `bewcloud.config.ts` file. Note that DB connection and secrets are still in the `.env` file.
This will allow for more reliable and easier personalized configurations, and was a requirement to start working on adding SSO (#13).
For now, `.env`-based config will still be allowed and respected (overriden by `bewcloud.config.ts`), but in the future I'll probably remove it (some major upgrade).
* Update deploy script to also copy the new config file
This implements the option to choose directories when uploading files via the Web UI (The most important part of #52).
When you choose a directory, its file and sub-directory structure will be maintained.
Tested with the latest Safari, Firefox, and Chrome.
Additionally, the Deno version was updated, which required some accessibility improvements as well.
Additionally:
- Make expense and budget modal "reset" once closed, saved, or deleted.
- Make manifest icons dark
- Budgets in small screens should be full-screen
- Minor code cleanup
Fixes#48
A UI based on [Budget Zen](https://github.com/BrunoBernardino/budgetzen-web) but slightly updated and adjusted for bewCloud. It also features a chart with available money and spent by budgets.
This is useful for envelope-based budgeting.