Social Networking App Demonstration
This is an effort to demonstrate a social networking application that has users, followers, posts and feeds. This repository is built to handle user follower and following related functionalities. Description
- For user auth, please refer to Auth Service
- For user followers, please refer to Graph Service
- For user posts, please refer to Post Service
Newsfeed Microservice
This service showcases Spring Boot integration with Apache Cassandra database and Apache Kafka.
- User should send access token in Authorization header to access the APIs
- Newsfeed service consumes an event on every post creation
- FeedGenerator service updates the feeds of followers/friends.
- It queries the followers by email id, which is part of event payload.
- Interservice communication is authenticated and authorized with OKTA Client Credentials Flow
Getting Started
Follow the steps below:
🖐 Requirements
- Java 11
- Maven 3.6.x
- OKTA developer account
⏳ Installation
This application uses maven to build. Refer to Installing Maven to install maven.
Step 1: mvn clean install
Step 2: mvn spring-boot:run
Roadmap
Add an additional repository to showcase deployment using Kuberenetes.