Skip to content

joaopms/spenderella

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spenderella

"Spenderella" was inspired by the name "Cinderella", a well-known fairytale character. The idea behind the name "Spenderella" was to create a playful and catchy name that reflects the idea of managing expenses and spending money. The name is meant to convey a sense of fun and lightheartedness, while still being relevant to the core purpose of the application.

What's Spenderella?

The project consists of an application to manage your money and expenses. It will connect to your bank accounts so you quickly have access to your latest transactions. You'll then be able to categorize them and attach transactions to each other, like when you split a bill with someone.

How to run?

Docker needs to be installed on the host system.

If using NixOS

Just run nix develop and you'll have a shell set-up with PHP and Composer, along with a sail alias.

nix develop
sail up -d

When using PhpStorm, a remote PHP interpreter must be set-up and pointed to the spenderella container. The lifecycle must be set to "connect to existing container".

Tech Info

The project uses Laravel and runs, in development, with Laravel Sail. Formatting is done with Laravel Pint.

Deployment

The Dockerfile located on the docker directory creates a Docker image that runs nginx on port 80, proxying requests to php-fpm.

supervisord is the main process, running nginx, php-fpm, crond (that runs the Laravel scheduler), and Laravel's queue worker.

Setup

  1. Create a directory for the app
  2. Clone the repo to, for example, repo
  3. Copy repo/storage to where persistent data is going to be stored, for example, storage
    (with cp -r repo/storage storage)
  4. Create the database.sqlite file
  5. Setup Docker Compose
    Use the docker-compose.yml file in the docker directory as a guide
  6. Start the Docker container and run the commands below in it
  7. Edit .env to your needs
  8. Restart the Docker container
  9. Success! 🎉
# Install dependencies
composer install --optimize-autoloader --no-dev

# Prepare .env
cp .env.prod.example .env

# Generate the app key
php artisan key:generate

# Create the symbolic link for public storage
php artisan storage:link

# Setup the database tables
php artisan migrate

About

An application to manage your money and expenses.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published