"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.
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.
Docker needs to be installed on the host system.
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 -dWhen 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".
The project uses Laravel and runs, in development, with Laravel Sail. Formatting is done with Laravel Pint.
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.
- Create a directory for the app
- Clone the repo to, for example,
repo - Copy
repo/storageto where persistent data is going to be stored, for example,storage
(withcp -r repo/storage storage) - Create the
database.sqlitefile - Setup Docker Compose
Use thedocker-compose.ymlfile in thedockerdirectory as a guide - Start the Docker container and run the commands below in it
- Edit
.envto your needs - Restart the Docker container
- 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