Anotheria
Open Source Projects

PortalKIT

GitHub
PortalKIT is a collection of services and apis for use across different projects.

PortalKit Services

Foundation / Infrastructure

  • essentials — Core essentials shared across all services (formerly "common")
  • eventing — Eventing infrastructure for inter-service communication (formerly "common")
  • common — Common service layer combining essentials + eventing with Spring, MongoDB, Hibernate and Quartz support
  • storage — Low-level storage abstraction backed by MongoDB

Account & Identity

  • accountservice — Core account management service
  • accountservice-spring-mongo — Spring Data MongoDB implementation of the account service
  • accountsettingsservice — Manages per-account settings/configuration
  • accountlistservice — Manages lists of accounts (e.g. groups, collections)
  • accountarchiveservice — Archives and stores historical account data
  • profileservice — User profile management backed by MongoDB

Authentication & Security

  • authenticationservice — Core authentication service (password hashing via commons-codec)
  • authenticationservice-spring-mongo — Spring Data MongoDB implementation of the authentication service
  • approvalservice — Handles account/content approval workflows

Social / Relationship

  • relationservice — Manages relationships (e.g. follow, friend) between accounts
  • matchservice — Match-making service between accounts
  • foreignidservice — Stores and links accounts to external identity providers (Google, Facebook, Twitter, etc.)
  • foreignidservice-spring-mongo — Spring Data MongoDB implementation of the foreign ID service

Engagement & Monetization

  • subscriptionservice — Manages user subscriptions
  • coinservice — Virtual coin/currency service
  • onlineservice — Tracks user online/presence status

Anti-Fraud & Safety

  • scamscoreservice — Tracks and manages spam/scam scores per user
  • photoscammer — Detects duplicate photo uploads across accounts to identify scammers

Communication & Notifications

  • pushtokenservice — Stores and manages push notification tokens per device/account
  • phoneverificationservice — Verifies user phone numbers via Twilio
  • bounce — Records email bounce events from mail providers

Data & Sessions

  • personaldata — Stores user personal data (MongoDB/Morphia) encrypted.
  • sessionservice — Manages user sessions
  • recordservice — Generic record storage service

PortalKit APIs

  • Async Task - asynchronous task processing via pub/sub or other publish subscribe mechanisms with support for gcp, aws, kafka etc.

PortalKIT Engines

  • MailHunter - engine to detect email adresses in text-message, when the user ties to hide them. Based on matchers and transitions. Probably outdated.