NOW IN PUBLIC ALPHA
Write API's as functions.
Get the rest out-of-the-box.
Samen is a toolkit for developing backends that allows you to write your API's as functions. By utilising the TypeScript compiler, Samen provides you with autogenerated clients, model sharing, preflight checks, input validation, deployable services and more out-of-the-box.
NOW IN PUBLIC ALPHA
Write API's as functions.
Get the rest out-of-the-box.
Samen is a toolkit for developing backends that allows you to write your API's as functions. By utilising the TypeScript compiler, Samen provides you with autogenerated clients, model sharing, preflight checks, input validation, deployable services and more out-of-the-box.
NOW IN PUBLIC ALPHA
Write API's as functions.
Get the rest out-of-the-box.
Samen is a toolkit for developing backends that allows you to write your API's as functions. By utilising the TypeScript compiler, Samen provides you with autogenerated clients, model sharing, preflight checks, input validation, deployable services and more out-of-the-box.



Focus on
your product
Focus on building your product
With Samen, all you need to think about is the core logic
of your application.
Mostly gets
out of your way
Mostly gets
out of your way
Samen only exposes a small set of API's and makes no assumptions about your database, authentication etc.
No need to learn
a new DSL
No need to learn
a new DSL
Samen uses the typescript compiler to understand your code and prevents you from writing tedious configurations.
Focus on
your product
With Samen, all you need to think about is the core logic
of your application.
Mostly gets
out of your way
Samen only exposes a small set of API's and makes no assumptions about your database, authentication etc.
No need to learn
a new DSL
Samen uses the typescript compiler to understand your code and prevents you from writing tedious configurations.
API'S, SERVICES AND MIDDLEWARE
API'S, SERVICES AND MIDDLEWARE
Minimal. Powerful.
Minimal. Powerful.
Samen provides you with the features you need to build amazing backends: API's as functions, services to group API's, and middleware for reusable logic in services.

API'S, SERVICES AND MIDDLEWARE
Minimal. Powerful.
Samen provides you with the features you need to build amazing backends: API's as functions, services to group API's, and middleware for reusable logic in services.


AUTOGENERATED CLIENTS
Get end-to-end typesafety between server and client
Samen autogenerates clients, with hot reload, based on the services and models you expose.

AUTOGENERATED CLIENTS
Get end-to-end typesafety between server and client
Samen autogenerates clients, with hot reload, based on the services and models you expose.

AUTOGENERATED CLIENTS
Get end-to-end typesafety between server and client
Samen autogenerates clients, with hot reload, based on the services and models you expose.
SHARING MODELS
Domain models are automatically exposed through the samen client
No need to create workarounds to duplicate your models between server and frontend. Write once in your server, import wherever you use the samen client.

SHARING MODELS
Domain models are automatically exposed through the samen client
No need to create workarounds to duplicate your models between server and frontend. Write once in your server, import wherever you use the samen client.

SHARING MODELS
Domain models are automatically exposed through the samen client
No need to create workarounds to duplicate your models between server and frontend. Write once in your server, import wherever you use the samen client.



API INPUT VALIDATION
API INPUT VALIDATION
Now you can
trust your input
Now you can
trust your input
Samen knows what type of value your API's are expecting at runtime. No need to write tedious input validators.

API INPUT VALIDATION
Now you can
trust your input
Samen knows what type of value your API's are expecting at runtime. No need to write tedious input validators.
HANDLING ERRORS
204? 404?
Why debate what statuscode to use when you can catch the exact same error in the client, as it was thrown in the API?

HANDLING ERRORS
204? 404?
Why debate what statuscode to use when you can catch the exact same error in the client, as it was thrown in the API?

HANDLING ERRORS
204? 404?
Why debate what statuscode to use when you can catch the exact same error in the client, as it was thrown in the API?


BUILD
No vendor lock
For production, Samen creates a HTTP server in Node.js that your can deploy to whatever cloud or server instance you like.

BUILD
No vendor lock
For production, Samen creates a HTTP server in Node.js that your can deploy to whatever cloud or server instance you like.

BUILD
No vendor lock
For production, Samen creates a HTTP server in Node.js that your can deploy to whatever cloud or server instance you like.
$ samen deploy
Samen Deploy, now in development, will be the distributed system running all your samen functions. Run your functions at the edge and get api versioning, advanced logging, analytics and more.
$ samen deploy
Samen Deploy, now in development, will be the distributed system running all your samen functions. Run your functions at the edge and get api versioning, advanced logging, analytics and more.