MyPhotoApp – Full-Stack Photo Management Application
GitHub Repository: MyPhotoApp
Description:
MyPhotoApp is a full-stack photo management application that allows users to upload, view, and organize photos. Designed to be intuitive and responsive, the app provides a seamless user experience while leveraging robust backend support and modern frontend technologies.
Key Features:
Photo Upload & Management: Users can upload photos, view image details, and organize them effectively.
Secure Authentication: Implements secure login and session management to ensure data privacy and restricted access.
Dynamic User Interface: Built with responsive design principles for a smooth experience across devices.
RESTful APIs: Backend powered by Java with Spring Boot to handle CRUD operations efficiently.
Database Integration: Stores photo metadata and user data in a relational database for fast and reliable access.
Technologies Used:
Frontend: HTML, CSS, JavaScript, Bootstrap
Backend: Java, Spring Boot, REST APIs
Database: MySQL (or specify the database used if different)
Deployment: Configured for local hosting and deployment to cloud-based services
Challenges Solved:
Efficiently managed large-scale photo uploads with optimized backend handling.
Designed a scalable architecture to support multiple users simultaneously.
Integrated robust error-handling mechanisms to enhance user experience.
Installation Steps
Clone the Repository:
git clone https://github.com/fanik041/fullStackJava.git cd fullStackJava
Set Up the Backend (Spring Boot):
Ensure you have Java JDK (version 8 or higher) and Maven or Gradle installed. Navigate to the backend directory and build the project:cd backend mvn clean install # For Maven gradle build # For Gradle
Configure the Database:
Install MySQL (or the database used).
Create a new database (e.g., fullstack_db).
Update the application.properties (or application.yml) file in the backend to reflect your database credentials:
properties
spring.datasource.url=jdbc:mysql://localhost:3306/fullstack_db spring.datasource.username=your_username spring.datasource.password=your_password
Run the Backend Server:
Start the Spring Boot application:mvn spring-boot:run # For Maven gradle bootRun # For Gradle
Set Up the Frontend:
Navigate to the frontend directory, and ensure you have a web server (like Node.js or a simple static server) to serve the files.cd frontend # Serve the static files using any method
Test the Application:
Open your browser and navigate to http://localhost:8080 (or the specified port) to access the application.Deploy the Application (Optional):
Configure the project for deployment on platforms like AWS, Azure, or Google Cloud. Update environment variables and database credentials accordingly.
Note: Ensure that all dependencies are installed and the backend and frontend are properly connected during testing.