Skip to content

SergioR29/fruit-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🍎 Fruit Web

A premium, modern web application for managing your favorite fruits. Built with Node.js, Express, PostgreSQL, and a stunning Glassmorphism UI.

✨ Features

  • User Authentication: Secure Registration & Login system using JSON Web Tokens (JWT).
  • Fruit Management: Full CRUD operations to add, view, and delete your customized fruits.
  • Premium UI: A sleek, translucent glassmorphism design with floating background animations and vibrant colors.
  • Responsive: Adapts gracefully to all screen sizes.
  • Dockerized: Seamless setup and deployment using Docker Compose.

πŸ› οΈ Technology Stack

  • Backend: Node.js, Express.js
  • Database: PostgreSQL
  • ORM: Sequelize
  • Frontend: Vanilla HTML5, CSS3, JavaScript
  • Infrastructure: Docker, Docker Compose

πŸš€ Getting Started

Prerequisites

  • Docker and Docker Compose installed on your local machine.

Installation & Running

  1. Clone this repository:

    git clone https://github.com/YOUR_USERNAME/fruit-web.git
    cd fruit-web
  2. Start the application and database containers:

    docker-compose up -d --build
  3. Open your web browser and navigate to:

    http://localhost:3000
    

(Note: On the first run, the Node.js server has built-in retry logic to wait for the PostgreSQL database cluster to initialize completely).

πŸ“‚ Project Structure

fruit-web/
β”œβ”€β”€ public/              # Frontend static files (HTML, CSS, JS)
β”‚   β”œβ”€β”€ index.html       # Main application interface
β”‚   β”œβ”€β”€ style.css        # Premium UI styles & animations
β”‚   └── app.js           # Frontend logic & API calls
β”œβ”€β”€ Dockerfile           # Docker configuration for the Node.js image
β”œβ”€β”€ docker-compose.yml   # Multi-container orchestration (App + Database)
β”œβ”€β”€ package.json         # Node.js dependencies and scripts
└── server.js            # Node.js Express server, API routes, and Sequelize Models

πŸ”’ Security

  • Passwords are cryptographically hashed using bcryptjs before being stored in the database.
  • Session management is handled via secure jsonwebtoken (JWT), protected against direct manipulation.

About

🍎 A premium, modern web application for managing your favorite fruits. Built with Node.js, Express, PostgreSQL, and a stunning Glassmorphism UI.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors