Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
96187f1
feat: api server
DrewImm Nov 8, 2025
b9f43e7
feat: add HTTP methods (verbs)
DrewImm Nov 8, 2025
20ded25
feat: http errors
DrewImm Nov 8, 2025
c807af8
security: secure by default
DrewImm Nov 8, 2025
650bead
test: query params
DrewImm Nov 8, 2025
7a919c2
Add health check endpoint
DrewImm Nov 8, 2025
b2c82b0
feat: validation
DrewImm Nov 10, 2025
c1499a8
feat: middleware
DrewImm Nov 10, 2025
265a3ad
feat: bearer auth
DrewImm Nov 11, 2025
88e43db
fix: query param validation and sanitization, fix & clean up tests
DrewImm Nov 11, 2025
f8a9d25
fix: prefix endpoint path with /
DrewImm Nov 11, 2025
a6603a5
refactor: remove routing from server, add fullPath
DrewImm Nov 14, 2025
f3d3481
feat: self-documentation (auto-oas, openapi, swagger)
DrewImm Nov 15, 2025
414c278
feat: endpoint examples
DrewImm Nov 15, 2025
abc9b18
feat: error responses
DrewImm Nov 15, 2025
7d41ce0
feat: add authentication class support
DrewImm Nov 15, 2025
e4c9fea
feat: self-documenting authentication
DrewImm Nov 15, 2025
57b7521
fix: express 400 errors were returned as 500 server error
DrewImm Nov 15, 2025
fa0c91c
fix: validation not working with npm i
DrewImm Nov 16, 2025
1071e09
clean: remove get...Sanitizer() unused methods
DrewImm Nov 16, 2025
61f9dad
chore: add valsan as peer dep
DrewImm Nov 16, 2025
839a02c
fix: allow console in scripts/example
DrewImm Nov 16, 2025
a41b56a
feat: add endpoint checkRequest for extensibility
DrewImm Nov 16, 2025
1e0cbaf
fix: status code
DrewImm Nov 16, 2025
b667b39
refactor: use valsan.copy()
DrewImm Nov 16, 2025
a8c534d
fix: swagger wouldn't work when no path defined
DrewImm Nov 16, 2025
83018a5
chore: project renamed due to conflict
DrewImm Nov 16, 2025
3b96e84
docs: runnable quickstart
DrewImm Nov 16, 2025
8be0c1b
v1.0.0
DrewImm Nov 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# API Configuration
APP_TITLE=api-machine
API_PORT=4000
9 changes: 9 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,4 +45,13 @@ module.exports = {
"@typescript-eslint/promise-function-async": 1,
"@typescript-eslint/no-var-requires": 2,
},
overrides: [
{
files: ["examples/**/*.ts", "scripts/**/*.ts"],
rules: {
"@typescript-eslint/no-unused-vars": [1, { "argsIgnorePattern": "request|response" }],
"no-console": 0
}
},
]
};
14 changes: 13 additions & 1 deletion .eslintrc.prod.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,17 @@
"rules": {
"no-console": 2,
"no-debugger": 2
}
},
"overrides": [
{
"files": ["examples/**/*.ts", "scripts/**/*.ts"],
"rules": {
"@typescript-eslint/no-unused-vars": [
1,
{ "argsIgnorePattern": "request|response" }
],
"no-console": 0
}
}
]
}
5 changes: 3 additions & 2 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,12 @@
"type": "node",
"request": "launch",
"args": [
"scripts/example.ts"
"scripts/index.ts",
"openapi"
],
"runtimeArgs": [
"-r",
"ts-node/register"
"ts-node/register",
],
"cwd": "${workspaceRoot}",
"internalConsoleOptions": "openOnSessionStart"
Expand Down
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
# ts-rest - Changelog
# api-machine - Changelog
2 changes: 1 addition & 1 deletion LICENSE.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2022 ts-rest and others
Copyright (c) 2022 api-machine and others

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
Expand Down
Loading