Skip to content

A full-stack movie logging app inspired by Letterboxd, built with Spring Boot and React

Notifications You must be signed in to change notification settings

coby-roberts/Letterboxd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Letterboxd Dupe API

A RESTful API for tracking users watched films, ratings, and discovering.

πŸš€ Features

  • Add films to watched list
  • Rate watched films
  • JWT token management

πŸ› οΈ Tech Stack

  • Spring Boot 3.x
  • PostgreSQL
  • Spring Security
  • JWT Authentication
  • Lombok

πŸ“‹ API Endpoints

Authentication

  • POST /account/login - User login
  • POST /account/signup - Refresh JWT token

Account Settings

  • GET /settings - Profile Info
  • PATCH /settings/me - Update Profile Info
  • PUT /settings/username - Update Username

Users & Watchlist

  • GET /users/search - Returns page of first 10 results sorted by ASC
  • GET /users/{username} - Gets User profile details
  • GET /users/{username}/films - Get all of a users watched films
  • GET /users/{username}/diary - Get all of a users diary entries
  • POST /users/{username}/diary - Create a Diary Entry
  • GET /users/{username}/reviews - NOT IMPLEMENTED
  • POST /users/{username}/watched - Set film as watched
  • POST /users/{username}/follow - Follows a user
  • POST /users/{username}/unfollow - Unfollows a user

Films

  • GET /film/{id}

πŸ“– API Documentation

Add Film to Watched List

POST /users/me/watched
Content-Type: application/json
Authorization: Bearer {jwt_token}

{
  "film": {
    "id": 1,
    "title": "The Matrix",
    "director": "The Wachowskis",
    "release_date": "1999-03-31"
  },
  "watched": {
    "rating": 9
  }
}

About

A full-stack movie logging app inspired by Letterboxd, built with Spring Boot and React

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published