APIs

An protocol independent approach to building APIs in Slate so they run as Web APIs or on the CLI. See concepts, example and sample apps.

App

A base App for Console, CLI, Batch, or Server apps with support for environments, logging, configs and more. See concepts, example and sample apps.

CLI

Command line access to your services, apis. Extend the Shell app, register apis, and have the shell marshal commands via reflection. See example

Cache

Light-weight cache to load, store, and refresh data, with support for metrics and time-stamps. Default in-memory implementation available. See example

Commands

A variation to the command pattern to support ad-hoc execution of code, with support for metrics and time-stamps. See example

Context

A container to hold common dependencies like configs, logger, encryptor, etc, to make them easily available to other components. See example for setup and usage

Email

An email service to send emails with support for templates, with a default implementation for SendGrid. See example for details on setup and usage.

Files

A simplified interface and abstraction for persistent file storage. We offer built in support for AWS S3 to store files. See example

Notifications

A push notification abstraction primarily for mobile based push notifications. This component is a work-in-progress and not currently available.

ORM

Light-weight domain-driven ORM to map entities to tables. And a database utility for querying, updating data. See ORM, example and sample apps.

Queues

A simplified interface and abstraction for persistent queues. We offer built in support for AWS SQS and and in-memory queue. See example

Server

A base Web Server to host your protocol independent APIs with built in support for many features. See concepts, example and sample apps.

SMS

An SMS Service to send text messages to mobile phones, with support for templates, with a default implementation using Twilio. See example for setup and usage.

Workers

Background workers for long-running and continuous processing. Support for pausing, stopping, resuming workers, metrics and queues. See example


...

SlateKit.Core

Core architecture components


about The slatekit.core project contains most but not all of these components
package slatekit.core
jar slatekit.core.jar
git Slatekit.Core
docs download
cost free : open-source
dependencies
  • slatekit.common
notes
  • Includes abstractions / base implementations for Queues, Files, Tasks, CLI
  • The APIs, ORM, Queues/Files are located in the slatekit.apis, slatekit.entities, slatekit.cloud projects
  • APIs for each component are available in the SlateKit.Integration project. This is so that the API, Core, Entities projects do not depend on each other.

see all projects