Skip to content

sentilis/core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@sentilis/core

The isomorphic TypeScript SDK for the Sentilis platform.

NPM Version Package License NPM Downloads

Description

The @sentilis/core library provides the foundational APIs, models, and HTTP clients to programmatically interact with the Sentilis platform.

Designed to be isomorphic — runs in Node, browsers, Deno, Bun, and edge runtimes (Cloudflare Workers, Vercel Edge, etc.) with zero Node-specific runtime imports.

Installation

$ npm install @sentilis/core

Quick Start

import { RestClient } from "@sentilis/core";

const client = new RestClient(process.env.SENTILIS_TOKEN!, "prod", {
  // Optional: inject caller-supplied headers (e.g. client name/version)
  headers: {
    "X-Client-Name": "my-app",
    "X-Client-Version": "1.0.0",
  },
});

const { data, pagination } = await client.listPress({ visibility: ["public"] });
console.log(data, pagination);

Core Modules

  • RestClient: Isomorphic HTTP wrapper for the Sentilis REST API. Accepts caller-supplied identification headers via RestClientOptions.
  • validateToken: Verify an authentication token and resolve its owning username.
  • bio: Profile / resume parsing with multi-language variant support.
  • press: Markdown validation and parsing for press resources and their attachments.
  • market: Product schema validation, parsing, and upload payload helpers.
  • workspace: discoverWorkspace walks a bio/ + press/ + market/ tree and returns the entries to push.

Submodule entry points

Import What it gives you
@sentilis/core RestClient, validateToken, response types
@sentilis/core/bio Bio types, upload helpers
@sentilis/core/press Press types, upload helpers
@sentilis/core/market Market types, upload helpers
@sentilis/core/workspace discoverWorkspace and the WorkspaceTree / WorkspaceEntry types
@sentilis/core/{bio,press,market}/markdown Frontmatter parsing & metadata builders

Runtime Compatibility

This package has no Node-only runtime imports. All Node-specific behaviour (OS info, process metadata, package.json lookup) is delegated to the caller via RestClientOptions.headers.

  • Node 18+
  • Modern browsers (uses fetch and btoa)
  • Deno, Bun
  • Edge runtimes (Cloudflare Workers, Vercel Edge, Netlify Edge)

DEBUG=1 is honoured if a process global with env.DEBUG is present; in browsers it is silently ignored.

Development

$ npm install
$ npm run build      # tsc → dist/

The build emits ESM JavaScript with TypeScript declarations.

Stay in touch

License

Sentilis Core is AGPL-3.0-only.

About

The isomorphic TypeScript SDK for the @sentilis platform.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors