Skip to content
/ mmm Public

😱 AI-powered image search for your meme collection

License

Notifications You must be signed in to change notification settings

arvl130/mmm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

😱 Meme Manager MMM

MMM manages memes.

Screenshot of the home page Screenshot of semantic search Screenshot of AI tag suggestions

This is a personal project I built to help me search memes I have saved from the Internet.

I also built this project to gain a deeper understanding on how Spring Boot, Spring Security, Spring Session, Spring Data JPA, Spring AI, AWS SDK for Java, Lombok, Hibernate and a bunch of other Java libraries work together to build a scalable, production-grade Java web application.

If this application is useful or interesting to you, consider giving it a star on GitHub.

This application also comes with a frontend web UI available here.

Features

Setup

  1. Clone this repository.
$ git clone https://github.com/arvl130/mmm
  1. Configure the environment variables.
$ export SPRING_DATASOURCE_URL=
$ export AWS_REGION=
$ export AWS_ACCESS_KEY_ID=
$ export AWS_SECRET_ACCESS_KEY=
$ export AWS_S3_BUCKET=
$ export AWS_S3_BUCKET_BASE_URL=
$ export AWS_BEDROCK_MODEL_ID=
$ export RESEND_API_KEY=
$ export MAIL_FROM_URL=
$ export APP_URL=
  1. Install the project dependencies, compile the code, and build the application.
$ mvn clean install
  1. Run the application.
$ mvn spring-boot:run
  1. (Optional) Build and deploy to an AWS Lambda environment with the SAM CLI.
$ cp samconfig.toml.example samconfig.toml
$ vi samconfig.toml # Enter the values for your environment variables, then press :wq to quit.
$ sam build -u
$ sam deploy

License

This project is licensed under the MIT License.

Copyright © 2025 Angelo Geulin