Skip to content

Archived backend for Magic AI Booth - AI-powered photo transformation iOS app with FastAPI, PostgreSQL, AWS infrastructure, and fal.ai integration

Notifications You must be signed in to change notification settings

zoltanctoth/slop-machine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Magic AI Booth - Archive

This is the archived codebase for Magic AI Booth, an iOS/iPad app that transformed photos using AI.

What was Magic AI Booth?

Magic AI Booth was an AI-powered photo editor that allowed users to create Instagram-worthy photos without expensive props or studio bookings. Users could upload pictures with faces, add custom text prompts, and generate photorealistic or artistic renderings suitable for social media and special occasions.

App Store Link: Magic AI Booth on the App Store


Development Setup

Install dev dependencies

uv pip install -e ".[dev]" && rehash
npm install -g @action-validator/core @action-validator/cli --save-dev

Coding env

  • Use editorconfig
  • Use yamlfmt (config available in .yamlfmy.yml)
  • use isort with black profile
  • pre-commit install
  • Everything must be isort, black, shellcheck, flake8 and mypy compatible. See the configs for details. pre-commit will fix flake8 issues.

I've found an issue where pre-commit fails and says it's a bug in pre-commit itself. I could solve it by virtualenv --reset-app-data venv -vvvv - I'll just leave it here for now.

Logs

You can retrieve the last 5 minute's query logs with scripts/get_logs.sh. Check the script for changing the timespan.

How to add new variables

The golden source of the secrets' names are stored in the .env.template file. This file is version controlled. The infra/update_secrects.py scripts expect a line in the .env dotenv file for each variable defined in .env.template.

Adding a updating a secret:

1) Add the secret's key to `.env.template`, and then the values to `.env`
2) execute `infra/update_secrets.py` - this will add or update the GitHub Secret for each key in `.env.template` using the values from `.env`.

Do not commit `.env`.

The lambda deployment process goes through each key in `.env.template` and sets the env vars in Lambda based as the values reading from GitHub Secrets.

## Deployment

Deployment automtically happens when merging or pushing to _main_.

About

Archived backend for Magic AI Booth - AI-powered photo transformation iOS app with FastAPI, PostgreSQL, AWS infrastructure, and fal.ai integration

Topics

Resources

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •