Giter Club home page Giter Club logo

fullstack-movies-website's Introduction

Movie website (without using Frameworks)

This is a project challenge to build website with his backend without using UI library, just raw JS/CSS. and also not using web framework, just raw NodeJS. This is project only use JS/NODEJS/DOCKER/PORTGRESQL/REDIS/NGINX.

Development

  • FrontEnd Overviews: image image

  • The server is NGINX as reverse proxy with NodeJS and the database that is used is Postgresql and I have used Redis for sessions caching, while the frontend is just Javascript in /nginx/frontend .

  • The server is build as Monolithic architecture.

  • Backend Infrastructure: image

  • The Project work as CRUD app that allow :

    1. creating account with no pro subscription.
    2. update the account to pro user.
    3. deleting the account.
    4. updating the email of the account.
    5. reading if the user is Pro or not.
  • The project support authentication service where the accounts are saved in the postgre database and it cache the sessions in redis database.

DevOps

  • to connect the project to github:

    1. git clone <repository-URL>to start the git with branch master that is connected to origin/master
  • To run the project and all the containers I use docker-compose.yml file to configure the images and run it.

    1. to run them docker compose up -d.
    2. to stop them docker compose down.
    3. to rebuild the images(apply the changes) docker compose build.
  • NGINX configured to be the only server that is available to public and hide other servers, We have used HTTPS with OPENSSL.

  • In case the binded-mount docker volumes doesnt work or readed, run sudo chmod -R 777 volumeDirName.

Security

  • To secure the passwords that are stored in the database, We hashed them with Bcrypt algorithm.

fullstack-movies-website's People

Contributors

jalaafarhat avatar rayanfarhat avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

jalaafarhat

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.