Open Source Projects
PortalKIT
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.
