A Spring Boot - React Petshop Application

Overview

zuri-petshop

A Spring Boot - React Petshop Application

Installation

In order to install the development environment, please follow below steps to have a working development environment. 1- Java JDK 11 2- Node.js 3- MySql Server80 4- Maven 5- IDE like IntelliJ IDEA Community for backend development 6-In order to start be, go to project folder, mvn clean install. And run Java application. 7- IDE for frontend development(e.g. WebStorm, Visual Studio Code, etc.) 8- In order to start admin panel, go to project folder, npm install and npm start.

Comments
  • User service

    User service

    1. Implemented new endpoints and objects in order
    • to get a paged list of users
    • to get a single user
    • delete a user
    1. Added access rule for delete and list endpoints
    2. Implemented user page, details modal and api request for admin panel.
    opened by moustaphastar 1
  • fix: Use mandatory file extensions

    fix: Use mandatory file extensions

    A file extension must be provided when using the import keyword to resolve relative or absolute specifiers. Directory indexes (e.g. './startup/index.js') must also be fully specified.

    This behavior matches how import behaves in browser environments, assuming a typically configured server.

    Ref: https://nodejs.org/docs/latest-v17.x/api/esm.html#mandatory-file-extensions

    (Even if you perhaps using require() and extension-less paths, using extension can help with the migration to esm later)


    Hi, I'm experimenting with a github bot to do quality checks and sending automated pr that could improve your code. Sorry if I'm not helpful.

    opened by modernizer-bot 0
  • User service update implementation

    User service update implementation

    Implemented the update logic for user service, fixed a typo in "delete" endpoint's path string and corrected the role string in authorization check expression. Create user is handled by user signup flow. closes #31 closes #46

    MVP 
    opened by moustaphastar 0
  • Uploading an image file via the Add Product flow fails

    Uploading an image file via the Add Product flow fails

    Description Product images can't be uploaded on admin panel while trying to add a product using the "Ürün Ekle" flow.

    The front end app receives a 500 status code from the back end app which throws a NullPointerException at retrieving Google credentials through the uploadFile method of the FirebaseFileServiceImpl class. Inside this method, getResourceAsStream method call is passed an argument as "zuri-petshop-firebase.json" (non-existent) instead of "firebase.json" (existent).

    @Service
    public class FirebaseFileServiceImpl implements FirebaseFileService {
    // ...
        @Override
        public String uploadFile(InputStream is, String contentType, String path, String fileName) throws IOException {
            InputStream serviceAccount = getClass()
                    .getClassLoader()
                    .getResourceAsStream("zuri-petshop-firebase.json");  // <= Correct filename is "firebase.json"
            Storage storage = StorageOptions.newBuilder()
                    .setCredentials(GoogleCredentials.fromStream(serviceAccount)) // <= Throws NullPointerException
                    .setProjectId(PETSHOP_FIREBASE_PROJECT_ID).build().getService();
    // ...
        }
    }
    

    Steps to Reproduce

    • Login to admin panel.
    • Add a category if none exists.
    • Upload an image file for a product using the "Ürün Ekle" flow .

    Expected Result The product image file is uploaded successfully to Firebase.

    Actual Result Upload fails. Admin panel receives a 500 status code from the back end app and the back end app throws a NPE.

    Error Message

    2021-09-09 03:47:24.233 ERROR 6832 --- [nio-8081-exec-4] c.t.p.v.h.ApplicationExceptionHandler    : Exception : class java.lang.NullPointerException: null
    
    java.lang.NullPointerException: null
    	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:892) ~[guava-30.1.1-android.jar:na]
    	at com.google.api.client.util.Preconditions.checkNotNull(Preconditions.java:125) ~[google-http-client-1.39.2.jar:1.39.2]
    	at com.google.auth.oauth2.GoogleCredentials.fromStream(GoogleCredentials.java:151) ~[google-auth-library-oauth2-http-0.26.0.jar:na]
    	at com.google.auth.oauth2.GoogleCredentials.fromStream(GoogleCredentials.java:134) ~[google-auth-library-oauth2-http-0.26.0.jar:na]
    	at com.turkninja.petshop.file.impl.FirebaseFileServiceImpl.uploadFile(FirebaseFileServiceImpl.java:32) ~[classes/:na]
    	at com.turkninja.petshop.v1.FileResource.uploadFile(FileResource.java:30) ~[classes/:na]
    	
    // ... Rest of the error message is omitted
    
    bug 
    opened by moustaphastar 0
  • Add user with admin role

    Add user with admin role

    Implemented methods to let the super_admin users to insert admin users. Also, added a resource bundle to keep local settings and updated documentation.

    closes #51

    enhancement 
    opened by moustaphastar 0
Owner
Ali Turgut Bozkurt
Senior Full Stack Java Developer
Ali Turgut Bozkurt
循序渐进,学习Spring Boot、Spring Boot & Shiro、Spring Batch、Spring Cloud、Spring Cloud Alibaba、Spring Security & Spring Security OAuth2,博客Spring系列源码:https://mrbird.cc

Spring 系列教程 该仓库为个人博客https://mrbird.cc中Spring系列源码,包含Spring Boot、Spring Boot & Shiro、Spring Cloud,Spring Boot & Spring Security & Spring Security OAuth2

mrbird 24.8k Jan 6, 2023
In this course, we will learn how to build a complete full-stack web application using Spring boot as backend and React (React Hooks) as frontend

In this course, we will learn how to build a complete full-stack web application using Spring boot as backend and React (React Hooks) as frontend. We will use MySQL database to store and retrieve the data.

Ramesh Fadatare 43 Dec 22, 2022
Two Spring-boot applications registering themselves to an spring-boot-admin-server application as separate clients for the purpose of monitoring and managing the clients

Spring-boot-admin implementation with 1 Server and 2 clients Creating a Server application to monitor and manage Spring boot applications (clients) un

null 6 Dec 6, 2022
Projeto criado na semana Spring React organizado pela escola Dev Superior com foco na prática/aprendizado das tecnologias Spring e React.

DSVendas Projeto criado na semana Spring React organizado pela escola Dev Superior com foco na prática/aprendizado das tecnologias Spring e React. htt

João Gabriel 3 May 18, 2021
Spring Boot Login and Registration example with MySQL, JWT, Rest Api - Spring Boot Spring Security Login example

Spring Boot Login example with Spring Security, MySQL and JWT Appropriate Flow for User Login and Registration with JWT Spring Boot Rest Api Architect

null 58 Jan 5, 2023
LOQUI - Real-time chat application built using Apache Kafka, Java, Spring Boot, SockJS and React

LOQUI is a simple real-time chat application that demonstrates how to use Apache Kafka as a message broker along with Java, Spring Boot and React on the front-end

Castanho Correia 2 Jun 5, 2022
about learning Spring Boot via examples. Spring Boot 教程、技术栈示例代码,快速简单上手教程。

Spring Boot 学习示例 Spring Boot 使用的各种示例,以最简单、最实用为标准,此开源项目中的每个示例都以最小依赖,最简单为标准,帮助初学者快速掌握 Spring Boot 各组件的使用。 Spring Boot 中文索引 | Spring Cloud学习示例代码 | Spring

纯洁的微笑 28.3k Jan 1, 2023
spring boot 实践学习案例,是 spring boot 初学者及核心技术巩固的最佳实践。另外写博客,用 OpenWrite。

推荐工具: 微信公众号 Markdown 编辑器 - OpenWrite:Markdown 微信编辑器是一款专业强大的微信公众平台在线编辑排版工具,提供手机预览功能,让用户在微信图文 、文章、内容排版、文本编辑、素材编辑上更加方便。 - 更多介绍 博客群发平台 一、支持泥瓦匠 Spring Boot

泥瓦匠BYSocket 15.2k Jan 5, 2023
Spring-Boot-Plus is a easy-to-use, high-speed, high-efficient,feature-rich, open source spring boot scaffolding

Everyone can develop projects independently, quickly and efficiently! What is spring-boot-plus? A easy-to-use, high-speed, high-efficient, feature-ric

geekidea 2.3k Dec 31, 2022
The Spring Boot Sample App on K8S has been implemented using GKE K8S Cluster, Spring Boot, Maven, and Docker.

gke-springboot-sampleapp ?? The Spring Boot Sample App on K8S has been implemented using GKE K8S Cluster, Spring Boot, Maven, and Docker. Usage To be

KYEONGMIN CHO 1 Feb 1, 2022
Spring Boot Migrator (SBM) - a tool for automated code migrations to upgrade or migrate to Spring Boot

Spring Boot Migrator uses and is compatible to OpenRewrite, a powerful mass refactoring ecosystem for Java and other source code.

Spring Projects Experimental 231 Jan 2, 2023
Spring Boot Full Stack with React for Professionals

Spring Boot allows to take an idea/prototype and turn it into a real thing in matters minutes hours of months and years. A lot of companies use Spring Boot because it's easy to setup, learn and write code very fast without having to setup the low level platform code

Amigoscode 318 Dec 29, 2022
Spring Boot Full Stack with React for Professionals

Spring Boot allows to take an idea/prototype and turn it into a real thing in matters minutes hours of months and years. A lot of companies use Spring Boot because it's easy to setup, learn and write code very fast without having to setup the low level platform code. Recently, Netflix has decided to switch their entire backend to Spring Boot.

Amigoscode 26 Mar 25, 2021
Frontend : React , Backend : Spring boot

React(Front) + Spring Boot(Back) 작업 하기 앞서, React와 Spring Boot는 각각 다른 서버에서 돌아가기 때문에, 연동시 Front에 문제가 생기면 Back까지 문제가 생길 수 있다. 하지만, Spring Boot에서 React와 같

심재철 2 Jan 9, 2022
An implementation of a sample E-Commerce app in k8s. This online retail marketplace app uses Spring Boot, React, and YugabyteDB.

An implementation of a sample E-Commerce app in k8s. This online retail marketplace app uses Spring Boot, React, and YugabyteDB.

yugabyte 1 Oct 27, 2022
Google Oauth2 login scenario with Spring boot + React

spring-react-google-oauth2 Google Oauth2 login scenario with Spring boot + React Below diagram is based on oauth implicit flow. Result How to start Pr

배진우 14 Nov 24, 2022
一个涵盖六个专栏:Spring Boot 2.X、Spring Cloud、Spring Cloud Alibaba、Dubbo、分布式消息队列、分布式事务的仓库。希望胖友小手一抖,右上角来个 Star,感恩 1024

友情提示:因为提供了 50000+ 行示例代码,所以艿艿默认注释了所有 Maven Module。 胖友可以根据自己的需要,修改 pom.xml 即可。 一个涵盖六个主流技术栈的正经仓库: 《Spring Boot 专栏》 《Spring Cloud Alibaba 专栏》 《Spring Clou

芋道源码 15.7k Dec 31, 2022
参考 DDD/Clean Architecture 设计理念,整合 Spring Boot/Spring Security/Mybatis Plus/Vavr 的 Spring Realworld 应用案例

Demo · 更多项目 · 参考资料 ms-spring-ddd-examples Unified Domain-driven Layered Architecture for MicroService Apps,试图探索一套切实可行的应用架构规范,可以复制、可以理解、可以落地、可以控制复杂性的指导

王下邀月熊 19 Sep 23, 2022
Spring Kurulumundan Başlayarak, Spring IOC ve Dependency Injection, Hibernate, Maven ve Spring Boot Konularına Giriş Yapıyoruz.

Spring Tutorial for Beginners File Directory Apache Tomcat Apache Tomcat - Eclipse Bağlantısı Spring Paketlerinin İndirilmesi ve Projeye Entegrasyonu

İbrahim Can Erdoğan 11 Apr 11, 2022