DSMovie is a full-stack project developed using Spring Boot for the back-end and TypeScript for the front-end. It is a film catalog application that allows users to browse and evaluate films. The project utilizes PostgreSQL as the database for data storage.
- Film Catalog: Browse through a collection of films with their respective names, images, and ratings.
- User Evaluation: Users can rate films by providing their email and rating in the evaluation section.
- User-Friendly Interface: The front-end is built using TypeScript, HTML, CSS, and JavaScript, providing an intuitive and visually appealing user experience.
- JDK 15: Java Development Kit 15 - a development kit for building applications and components using the Java programming language.
- Maven: Maven is a build automation tool primarily used for Java projects.
- Postman: Postman is an API testing tool used to send HTTP requests and analyze responses.
- PostgreSQL: PostgreSQL is a powerful open-source object-relational database management system.
- Heroku: Heroku is a cloud platform that allows you to deploy, manage, and scale applications.
- TypeScript: TypeScript is a strongly-typed superset of JavaScript that compiles to plain JavaScript.
- HTML: HTML is the standard markup language for creating web pages.
- CSS: CSS is a style sheet language used for describing the look and formatting of a document written in HTML.
- JavaScript: JavaScript is a programming language that enables interactive web pages and web applications.
- Yarn: Yarn is a package manager for JavaScript that allows you to efficiently manage dependencies.
- Node: Node.js is an open-source, cross-platform JavaScript runtime environment.
- ReactJS: ReactJS is a JavaScript library for building user interfaces.
- Netlify: Netlify is a web development platform used for deploying and hosting web applications.
The DSMovie application is deployed and can be accessed here.
-
Movies:
- GET /movies: Get all movies.
- GET /movies/{id}: Get a specific movie by ID.
-
Scores:
- PUT /scores: Update movie scores.
<Route path="/" element={<Listing />} />
<Route path="/form/:movieId" element={<Form />} />
The front-end has two main endpoints:
- The root path ("/") is associated with the Listing component, which displays the film catalog.
- The "/form/:movieId" path is associated with the Form component, which allows users to provide email and ratings for a specific movie.
To get started with the DSMovie project, follow these steps:
- Clone the repository.
- Set up the necessary dependencies, including JDK 15, Maven, and Node.js.
- Configure the PostgreSQL database connection.
- Build and run the back-end application using Spring Boot.
- Build and run the front-end application using TypeScript, HTML, CSS, and ReactJS.
- Access the DSMovie application in your web browser.
This project is licensed under the MIT License.