Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ddanielsantos/cloneboxd

An open-source Letterboxd clone
https://github.com/ddanielsantos/cloneboxd

graphql jest koa nodejs react relay typescript vite

Last synced: 5 days ago
JSON representation

An open-source Letterboxd clone

Awesome Lists containing this project

README

        

# Cloneboxd


image with Cloneboxd written in it
image with Cloneboxd written in it

### What is Cloneboxd?

Cloneboxd it's a web application based on [Letterboxd](https://letterboxd.com), it uses primarly JavaScript both on the frontend and backend, the data about movies and persons come from the [The Movie Database API](https://developers.themoviedb.org/3), other data are stored on [MongoDB Atlas](https://www.mongodb.com/). You can find more about the stack [here](#stack)

### Demo

Just like Letterboxd, you can log/review the movies you watch



Search about a movie





See what other people are talking about that one you like



Engage on a discussion



Rethink your opinions



Or simply regret what you just said



### Stack

#### Frontend

- [React](https://reactjs.org/) to compose the UI
- [Relay](https://relay.dev/) to communicate with the GraphQL server and manage the data fetching declaratively
- [React Router](https://reactrouter.com/docs/en/v6) to manage the routes
- [Chakra UI](https://chakra-ui.com/) to help with the styling and accessibility
- [Vite](https://vitejs.dev/) to improve bundling and development

#### Backend

- [NodeJS](https://nodejs.org/en/) to run the server
- [Koa](https://koajs.com/) to manage HTTP requests and responses
- [GraphQL](https://graphql.org/) to manage the data communication with the frontend declaratively
- [MongoDB](https://www.mongodb.com/) to store the data in a scalable way using NoSQL
- [Mongoose](https://mongoosejs.com/) to help data modeling and querying in MongoDB

### Want to contribute?

Cloneboxd is open to contributions, if you want to help with the development of the application, please open an issue or pull request.