Skip to content

SecureSocial is a native security-focused social media app built with Kotlin and Jetpack Compose. Features secure OTP authentication, JWT session handling with automatic token refresh, and a modern UI for posting, liking, and activity logging.

License

Notifications You must be signed in to change notification settings

amz202/SecureSocialApp

Repository files navigation

SecureSocial

A security-focused social media application built to demonstrate robust authentication flows. It combines strict security practices, like OTP verification and automatic token management, with a polished, responsive Material 3 user interface.


Features

  • Email-based registration with OTP verification
  • JWT authentication with automatic access-token refresh
  • Password rules and server-side username availability checks
  • Session persistence using Jetpack DataStore

Social Features

  • Feed with tag-based filtering and relative timestamps
  • Post creation with text input and tag selection
  • Like posts and view the list of users who liked a post
  • Comment on the posts, with timestamps
  • Activity log for login, posts, comments and likes

Security (Backend-Enforced)

  • HMAC-signed likes
  • Hashed user identifiers for incognito views

Tech Stack

  • Language: Kotlin
  • UI Framework: Jetpack Compose (Material 3)
  • Architecture: MVVM with state flow
  • Networking: Retrofit + OkHttp (interceptors & authenticators)
  • Local Storage: Jetpack DataStore
  • Serialization: Gson / kotlinx.serialization
  • Backend: SpringBoot Backend Spring Boot + MongoDB

Project Structure Highlights

  • Clean separation across UI, data, and domain layers
  • Repository pattern for data access
  • Centralized authentication through a custom OkHttp Authenticator
  • ViewModels as the single source of truth for UI state
  • Navigation flow avoiding race conditions during logout
  • Reusable Compose components for posts, dialogs, and tag selectors

UI Previews

Authentication

1

Posts, Activity Log, My Posts

2

Add Post, Post Info

3

License

This project is licensed under the MIT License.

About

SecureSocial is a native security-focused social media app built with Kotlin and Jetpack Compose. Features secure OTP authentication, JWT session handling with automatic token refresh, and a modern UI for posting, liking, and activity logging.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages