You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Amarte is a full-stack social platform for discovering, understanding, and sharing artworks. Powered by Gemini’s image recognition and AI generation, it identifies artworks from images or keywords and provides clear insights into artistic movements, historical context, and significance. Build your personal Gallery, explore artworks shared by others in the Feed, and engage with an AI chatbot designed as an art historian for deeper, contextual exploration.
Key Features
Personal gallery to save and organize artworks
Explore a community feed of shared artworks
Bookmark artworks for quick access
Identify artworks from images or keywords using AI
Environment: Configure variables using backend/application-example.properties as a reference
Frontend: npm install & npm run dev
Backend: mvn install & mvn spring-boot:run
Live Demo
The application is deployed on AWS but the instance is currently paused for cost reasons.
I am happy to spin it up on request.
API Endpoints
Authentication
Method
Endpoint
Description
POST
/api/auth/signup
Create a new user account
POST
/api/auth/login
Login and receive JWT cookie
POST
/api/auth/logout
Logout and clear JWT cookie
GET
/api/auth/me
Get current authenticated user ID
Gallery
Method
Endpoint
Description
POST
/api/save
Add a new artwork (multipart form, optional image)
GET
/api/show
Get all artworks for authenticated user
GET
/api/show/{id}
Get a single artwork by ID
PATCH
/api/update/{id}
Update artwork details and image
DELETE
/api/delete/{id}
Delete an artwork
Feed
Method
Endpoint
Description
GET
/api/posts
Get all Feed posts
POST
/api/posts/{id}
Save a new Feed post
DELETE
/api/posts/delete/{id}
Delete a post
Bookmark
Method
Endpoint
Description
GET
/api/bookmarks
Get all bookmarks
POST
/api/bookmarks/{id}
Add or remove a bookmark from a gallery or feed item
Artists
Method
Endpoint
Description
GET
/api/artists
Get all artists
Chatbot
Method
Endpoint
Description
GET
/api/chat/messages
Get all chat messages per user
POST
/api/chat/save
Add a new message to a chat conversation
Search and AI
Method
Endpoint
Description
GET
/api/generate-description?userPrompt=
Generate AI artwork description
POST
/api/recognize
Recognize artwork from uploaded image
POST
/api/recognize-keywords
Recognize artwork from user keywords
Screenshots
Artwork Recognition
Gallery View
Details View & AI Chatbot
Feed & Comments
About
AMARTE: An AI-powered art discovery & social platform that lets users identify artworks via image upload or search and instantly explore artists, movements, and historical context. Built with a Spring Boot backend, JWT authentication, and Gemini AI, featuring artwork saving, bookmarks, and personalized galleries.