https://github.com/captainbeluga/petuniabank
Simple home banking web app with OAuth2 login, user & roles management, and full unit test suite. Built for our internship at Remira S.r.l.
https://github.com/captainbeluga/petuniabank
auth0 bootstrap5 chartjs chartjs-2 dotenv ejs expressjs jest nodejs oauth2 postegresql selenium
Last synced: 2 months ago
JSON representation
Simple home banking web app with OAuth2 login, user & roles management, and full unit test suite. Built for our internship at Remira S.r.l.
- Host: GitHub
- URL: https://github.com/captainbeluga/petuniabank
- Owner: CaptainBeluga
- Created: 2025-06-11T13:27:09.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-11T14:04:04.000Z (about 1 year ago)
- Last Synced: 2025-06-11T15:34:23.591Z (about 1 year ago)
- Topics: auth0, bootstrap5, chartjs, chartjs-2, dotenv, ejs, expressjs, jest, nodejs, oauth2, postegresql, selenium
- Language: JavaScript
- Homepage:
- Size: 16.6 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ๐ Petunia Bank
## ๐งฑ Frameworks
| Framework | Description |
|-------------|--------------------------------------------------------------------|
| [Node.js](https://nodejs.org/) | JavaScript runtime environment for executing server-side code |
| [Express](https://expressjs.com/) | Fast and minimalist Node.js web framework for APIs |
---
## ๐ Libraries
| Library | Description |
|-----------|--------------------------------------------------------------------|
| [Bootstrap](https://getbootstrap.com/) | Frontend CSS framework for responsive design |
| [Chart.js](https://www.chartjs.org/) | JavaScript library for building beautiful charts |
| [express-openid-connect](https://www.npmjs.com/package/express-openid-connect) | Middleware for integrating OAuth2 authentication with Auth0 |
---
## ๐ Authentication
| Method | Description |
|---------------------|--------------------------------------------------------------------------------------------------|
| **OAuth2 with Auth0** | Secure user authentication is implemented using the `express-openid-connect` library, which integrates OAuth2 with the [Auth0](https://auth0.com/) identity platform. Users can log in using Auth0โs hosted login page, providing robust security and ease of integration. |
---
## ๐งพ Templating
| Engine | Description |
|--------|-----------------------------------------------------------------------|
| [EJS](https://ejs.co/) | Embedded JavaScript templates for rendering HTML on the server |
---
## ๐ Environment Management
| Tool | Description |
|------|-----------------------------------------------------------------------|
| [dotenv](https://www.npmjs.com/package/dotenv) | Loads environment variables from a `.env` file into `process.env` |
---
## ๐งช Testing
| Tool | Description |
|------|-----------------------------------------------------------------------|
| [Jest](https://jestjs.io/) | JavaScript testing framework for unit and integration tests |
| [Selenium](https://www.selenium.dev/) | Front-end testing framework for various languages |
---
## ๐๏ธ Database
| Database | Description |
|----------|-----------------------------------------------------------------------|
| [PostgreSQL](https://www.postgresql.org/) | Powerful, open-source relational database system |
---
## ๐ Getting Started
```bash
# Install dependencies
npm install pg
npm install express
npm install express-openid-connect
npm install dotenv
npm install path
npm install alphabet
# Run tests
npx jest