https://github.com/myominnoo/mBudget
Myo's Personal Budget Manager App
https://github.com/myominnoo/mBudget
Last synced: 4 months ago
JSON representation
Myo's Personal Budget Manager App
- Host: GitHub
- URL: https://github.com/myominnoo/mBudget
- Owner: myominnoo
- License: other
- Created: 2023-06-04T15:33:15.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-06-08T07:11:45.000Z (almost 2 years ago)
- Last Synced: 2024-08-13T07:11:10.183Z (8 months ago)
- Language: R
- Size: 959 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.Rmd
- Changelog: NEWS.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- jimsghstars - myominnoo/mBudget - Myo's Personal Budget Manager App (R)
README
---
output: github_document
---```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```# mBudget: The Personal Budget App
[](https://lifecycle.r-lib.org/articles/stages.html#stable)
mBudget is a Shiny app developed to showcase the extended user authentication features of the [shinyAuthX package](https://github.com/myominnoo/shinyAuthX) as well as serve as a personal finance manager. It integrates advanced user authentication features from the shinyAuthX package, going beyond basic sign-in functionality and providing seamless integration of sign-up and password-recovery features.
[shinyAuthX](https://github.com/myominnoo/shinyAuthX) is a R package specifically designed to enhance user authentication in Shiny applications. It offers a comprehensive suite of hassle-free authentication features, including sign-in, sign-out, sign-up, and password recovery mechanisms. These features are integrated into the mBudget app, providing a seamless and secure user experience.
shinyAuthX leverages the power of MongoDB as the backend, utilizing the [mongolite](https://jeroen.github.io/mongolite/) package to interact with the database. This ensures the persistent storage and secure retrieval of user data, offering an added layer of protection to your personal information. Additionally, shinyAuthX incorporates the [blastula](https://github.com/rstudio/blastula) package, enabling to send customized emails for code verification during signup, welcome emails, and password recovery emails. This comprehensive integration allows for efficient communication with users, keeping them informed and engaged.
To learn more about the extended user authentication capabilities offered by [shinyAuthX](https://github.com/myominnoo/shinyAuthX), visit the package documentation [https://myominnoo.github.io/shinyAuthX/].
**Disclaimer**: While mBudget prioritizes security, it is essential to understand that no authentication process is entirely foolproof. We recommend taking necessary precautions and evaluating the security measures in place. Use mBudget and shinyAuthX at your own risk, being mindful of protecting your personal information and ensuring the security of your application.
## Demo live
[Click here](https://myominnoo.shinyapps.io/mBudget/) to checkout the app.
URL: https://myominnoo.shinyapps.io/mBudget/
Credentials (`username`/`password`):
- `admin`/`admin`
- `user1`/`pass1`
- `user2`/`pass2`Or check it out with your own account!
## Installation
You can install the development version of mBudget from [GitHub](https://github.com/) with:
``` r
# install.packages("devtools")
devtools::install_github("myominnoo/mBudget")
```## Example
This is a basic example which shows you how to solve a common problem:
```{r example, eval=FALSE}
## Run the app
mBudget::run_app()
```## Credits:
We would like to extend our sincere gratitude and acknowledgments to the following individuals for their contributions to the development of `shinyAuthX`:
- Paul Campbell: The author of the `shinyauthr` package, from which we borrowed the `login` and `logout` module functions (`loginUI()`, `loginServer()`, `logoutUI()`, `logoutServer()`). Paul's work and dedication have significantly influenced the functionality and usability of `shinyAuthX`.
We would also like to specifically credit the following individuals for their contributions to the cookie-based authentication aspect of `shinyAuthX`:
- Michael Dewar: His expertise and contributions have played a crucial role in shaping the implementation of the cookie-based authentication mechanism in `shinyAuthX`. His insights have greatly enhanced the security and functionality of this feature.
- Calligross: Their valuable input and contributions have contributed to the development and improvement of the cookie-based authentication functionality in `shinyauthr`.
For further information about their specific roles and contributions, we recommend visiting the [`shinyauthr`](https://github.com/PaulC91/shinyauthr) GitHub page, where you can find additional details about the original package and its contributors.
## Disclaimer:
It is important to note that the security of any authentication system is a complex matter, and while we have taken great care in developing `shinyAuthX`, we cannot guarantee its foolproof security. The authentication process provided by `shinyAuthX` should be used with caution, and we strongly recommend implementing additional security measures based on your specific requirements. We endorse Paul Campbell's disclaimer statement regarding the security risks associated with the package. Please use `shinyAuthX` at your own risk.
We are grateful for the contributions and support from all the individuals mentioned above, as well as the wider community that has provided feedback and suggestions to help improve `shinyAuthX`. Thank you for your valuable contributions and continued support!
## Related work
Both package [`shinyauthr`](https://github.com/PaulC91/shinyauthr) and [shinymanager](https://github.com/datastorm-open/shinymanager/) provide a nice shiny module to add an authentication layer to your shiny apps.