This documentation has been hosted at https://mherman22.github.io/customer/
Find the backend repository at https://github.com/mherman22/customer
Find the frontend repository at https://github.com/mherman22/feedback
-
This webapp has been created with the sole aim of collecting the
Name
Email address,Customer feedback and the GPS location of the respondent
. -
To achieve the above, i have used Reactjs for the frontEnd and Java's Spring framework to comeup with the restful backend of the webapp.
-
To interract with the webapp, visit https://mherman22.github.io/feedback/#/landingpage to have a view of the frontend which i deployed using github pages.
-
However, to carryout CRUD operations on the web app, please clone the backend service using
git clone https://github.com/mherman22/customer
and setupmysql
and then cd into the project folder by doingcd customer
and then triggermvn spring-boot:run
which will run the server onto which the restful service can be accessed. -
With the above step done, you can now go back to the web app and interract with it by;
-
Adding customer details
-
Then viewing the data in the datatable
CustomerPage Screenshot | LandingPage Screenshot |
---|---|
- Java 8
- Spring Boot
- Mysql
- Lombok
- Hibernate JPA
- maven.
For further reference, please consider the following sections:
- Official Apache Maven documentation
- Spring Boot Maven Plugin Reference Guide
- Create an OCI image
- Spring Boot DevTools
- Spring Web
- Spring Data JPA
- Validation
The following guides illustrate how to use some features concretely:
- Building a RESTful Web Service
- Serving Web Content with Spring MVC
- Building REST services with Spring
- Accessing data with MySQL
- Accessing Data with JPA
- Validation
Make sure you have java installed on your machine.
For Windows platform/machine, do the following;- Download and install java 8. Set environment variable path (JAVA_HOME). Test to see if java has been installed. java -version.
- Follow the steps at https://mherman22.hashnode.dev/have-java-installed-on-ubuntu-easy-steps-i-followed to achieve that.
- Follow the steps at https://docs.oracle.com/javase/10/install/installation-jdk-and-jre-macos.htm
Make sure your IDE has Lombok configured in it, if not do the following;-
- For Eclipse, follow the steps at https://projectlombok.org/setup/eclipse.
- For Intellijea, follow the steps at https://projectlombok.org/setup/intellij.
- For Netbeans, follow the steps at https://projectlombok.org/setup/netbeans.
- For Spring Tool Suite, follow the steps at https://projectlombok.org/setup/eclipse.
- For Visual Studio Code, follow the steps at https://projectlombok.org/setup/vscode.
- For JBoss Developer Studio, follow the steps at https://projectlombok.org/setup/eclipse
- fork this repository.
- clone it onto your machine.
- make your changes and test them to ensure everything perfect.
- create a branch
git checkout -b branch-name
. commit your changes to your branch usinggit add .
andgit commit -m "commit message"
. - pull from origin to ensure your local repo is in sync with upstream. use
git pull origin branch-name
- push your changes using
git push origin branch-name
. - create a pull request and give it a proper description stating clearly the changes you have added.
This is the frontend (ui) for the Customer Feedback App
It was bootstrapped with Create React App. I have not used any library in this project (yet).
Find the deployment at https://mherman22.github.io/feedback/#/landingpage
- axios
- sass
- Reactjs with jsx
- React-router-dom.
- React Carbon Design System
- clone it onto your machine by running
git clone https://github.com/mherman22/feedback
. - cd into
feedback
- Open the command prompt or terminal.
- Run
npm install
to install the dependencies. - Then run
npm start
. - Open http://localhost:3000 to view it in your browser.
The page will reload when you make changes. You may also see any lint errors in the console.
- For windows users, go to package.json file and replace react-scripts start with
"start": "set PORT=portNumberOfYourChoice && react-scripts start"
. - For Linux users, do the above and replace with
"start": "PORT=portNumberOfYourChoice react-scripts start"
or"start": "export PORT=portNumberOfYourChoice react-scripts start"
- fork this repository.
- clone it onto your machine by running
git clone https://github.com/mherman22/feedback
. - make your changes and test them to ensure everything perfect.
- create a branch
git checkout -b branch-name
. - commit your changes to your branch using
git add .
andgit commit -m "commit message"
. - pull from origin to ensure your local repo is in sync with upstream. use
git pull origin branch-name
- push your changes using
git push origin branch-name
. - create a pull request and give it a proper description stating clearly the changes you have added.
-
npm start
: It runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.
The page will reload when you make changes.
You may also see any lint errors in the console. -
npm test
: It launches the test runner in the interactive watch mode.
See the section about running tests for more information. -
npm run build
: It builds the app for production to thebuild
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
To learn more about React, explore the following links;-
- You can learn more in the Create React App documentation and also check out the React documentation.
- Code Splitting: This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting.
- Analyzing the Bundle Size: This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size.
- Making a Progressive Web App: This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app.
- Advanced Configuration: This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration.
- Deployment: This section has moved here: https://facebook.github.io/create-react-app/docs/deployment.
npm run build
fails to minify: This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify.