Skip to content

Simple user friendly web application to control your finances.

License

Notifications You must be signed in to change notification settings

hoholms/online-wallet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Online Wallet

A simple, user-friendly web application to manage your finances efficiently.

Table of Contents

  1. Installation
  2. Configuration
  3. Running with Docker
  4. Screenshots

Installation

Requirements

Ensure the following are installed on your system:

  • PostgreSQL: This application uses PostgreSQL as its database.
  • Git: For cloning the repository.
  • Maven: For building the project.

Running Locally

  1. Clone the repository:

    git clone https://github.com/hoholms/online-wallet.git
    cd online-wallet
  2. Set up the configuration:

    Configure the application.yml file by setting the necessary environment variables or replacing them with actual values:

    # HOSTNAME
    hostname: ${HOSTNAME}
    
    # DATABASE CONNECTION
    spring:
      datasource:
        url: jdbc:postgresql://${DB_HOST}:${DB_PORT}/${DB_NAME}
        username: ${DB_USER}
        password: ${DB_PASSWORD}
        driverClassName: org.postgresql.Driver
    
      # CSRF
      freemarker:
        expose-request-attributes: true
    
      # HIBERNATE
      jpa:
        generate-ddl: false
        show-sql: false
        hibernate:
          ddl-auto: validate
      flyway:
        enabled: true
    
      # SPRING SESSION JDBC
      session:
        jdbc:
          initialize-schema: always
          table-name: SPRING_SESSION
    
      # SMTP MAIL
      mail:
        host: ${MAIL_HOST}
        username: ${MAIL_USERNAME}
        password: ${MAIL_PASSWORD}
        port: ${MAIL_PORT}
        protocol: smtps
    
    mail:
      debug: false
  3. Build the application:

    mvn clean package
  4. Run the application:

    Execute the following script in the project root folder:

    #!/usr/bin/env bash
    ver=$(mvn help:evaluate -Dexpression=project.version | grep -e '^[^\[]')
    cd target
    java -jar online-wallet-"${ver}".jar

Configuration

application.yml

The application.yml file requires configuration to connect to your database and other services. You can set these values using environment variables or directly within the file.

  • Database Configuration:

    • DB_HOST: Database host
    • DB_PORT: Database port
    • DB_NAME: Database name
    • DB_USER: Database username
    • DB_PASSWORD: Database password
  • Mail Configuration:

    • MAIL_HOST: SMTP mail host
    • MAIL_USERNAME: Mail username
    • MAIL_PASSWORD: Mail password
    • MAIL_PORT: Mail port

Running with Docker

To run Online Wallet using Docker, follow these steps:

  1. Build the Docker image:

    mvn clean package jib:dockerBuild
  2. Set up docker-compose.yml:

    Configure the docker-compose.yml file similarly to application.yml.

  3. Run Docker Compose:

    docker compose -f docker-compose.yml -p online-wallet up -d

Screenshots

Dashboard

Dashboard

Statistics

Statistics

Profile Page

Profile


This README provides a comprehensive guide to setting up and running the Online Wallet application. If you encounter any issues or have questions, please refer to the repository's issues section for support.

About

Simple user friendly web application to control your finances.

Topics

Resources

License

Stars

Watchers

Forks