Giter Club home page Giter Club logo

spring-boot-blog-app's Introduction

Blogging platform (made with Spring Boot)

Simple blogging platform project I made as started to learn Spring framework.

Live Demo (runs on FreeBSD 12)

https://tomcat.skaringa.dev/spring-blog-app/

About the project

Application made using:
Java 8,
Spring Boot v2.2.6,
Spring Web,
Spring Data JPA,
Spring Security,
H2-in-memory-database,
Lombok,
Thymeleaf
Maven
.

Unregistered/anonymous blog users can view all posts and comments;
Registered and logged in users (Authenticated users) can add new posts, view only their own posts, edit or delete them (CRUD functionality);
Users can write comments to particular posts by own or other users;
Validation for creating new posts, body must not be empty, title must have length of 7 by default and other;
Spring Security authentication and authorization rules ensures that users only able to edit or delete their own posts;
Front-end made using Thymeleaf templates.

Made an effort to write clean OOP code to my Date.past() best understanding, like separation of concerns and encapsulation of internal workings of the class to hide details from outside while providing a simple interface to work with a class and there should be no to little pain adding new functionality.
(Please be forgiving it was my first Spring app and first steps into OOP)

How to set up the application

Open terminal and use git clone command to download the remote GitHub repository to your computer:

git clone https://github.com/skarware/spring-boot-blog-app.git

It will create a new folder with same name as GitHub repository "spring-boot-blog-app". All the project files and git data will be cloned into it. After cloning complete change directories into that new folder:

cd spring-boot-blog-app

How to use

To launch the application run this command (uses maven wrapper):

$ ./mvnw clean spring-boot:run

Or using your installed maven version:

$ mvn clean spring-boot:run

For interacting with application one can use a browser. By default, application uses Tomcat which listening on port: 8080, means you can reach it if run on a local machine by hitting URL http://localhost:8080.

spring-boot-blog-app's People

Contributors

skarware avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.