Building a Full Stack Polls app similar to twitter polls with Spring Boot, Spring Security, JWT, React and Ant Design
I've written a complete tutorial series for this application on The CalliCoder Blog -
-
Clone the application
git clone https://github.com/callicoder/spring-security-react-ant-design-polls-app.git cd polling-app-server -
Create MySQL database
create database polling_app
-
Change MySQL username and password as per your MySQL installation
-
open
src/main/resources/application.propertiesfile. -
change
spring.datasource.usernameandspring.datasource.passwordproperties as per your mysql installation
-
-
Run the app
You can run the spring boot app by typing the following command -
mvn spring-boot:run
The server will start on port 5000. The spring boot app includes the front end build also, so you'll be able to access the complete application on
http://localhost:5000.You can also package the application in the form of a
jarfile and then run it like so -mvn package java -jar target/polls-0.0.1-SNAPSHOT.jar
-
Add the default Roles
The spring boot app uses role based authorization powered by spring security. Please execute the following sql queries in the database to insert the
USERandADMINroles.INSERT INTO roles(name) VALUES('ROLE_USER'); INSERT INTO roles(name) VALUES('ROLE_ADMIN');
Any new user who signs up to the app is assigned the
ROLE_USERby default.
First go to the polling-app-client folder -
cd polling-app-clientThen type the following command to install the dependencies and start the application -
npm install && npm startThe front-end server will start on port 3000.