Implementation of SecureAPI in TypeScript running on Bun
- Budi Syahiddin
- Soh Wee Kiat
- Authentication JWT
- Authorization and Access Control
- Secure Error Handling and Logging
- HTTPS Enforcement
- Architecture Diagram
- OpenAPI Spec with Swagger
- API Design and Documentation
- Implementation of Core Functionality
- Integration of Security Features
- GPG Signed commits
- Review Process
- Error thrown reduction
- Database R/W Account segregation
- Input Validation and Sanitization
- Rate Limiting and Throttling
- Testing
- Unit Tests
- Integration Tests
- Security Tests
- Deployment to a Cloud Platform (Optional)
- API Documentation
- Comprehensive guide to using the API
- Implemented API with Source Code
- Complete API code for reference
- Postman Collection for API Testing
- Pre-configured requests for testing API functionality
- Security Features Explanation Document
- Detailed explanation of API security measures
- Test Results and Security Analysis
- Report on API testing and security evaluation
- Monitoring with Datadog
- Dockerfile
- CI/CD DevSecOps
- Semantic Release
- CD to Prod Environment
- SAST
- Container Scanning
- Unit Tests
- Integration Tests
- Endpoints
-
GET /api/v1/products
-
GET /api/v1/products/:id
-
PUT [Protected] /api/v1/products
-
DELETE [Protected] /api/v1/products
-
POST /api/v1/auth/login
-
POST /api/v1/auth/register
-
POST [Protected] /api/v1/auth/logout
-
TODO
To install dependencies:
bun install
To start the development server run:
bun run dev
Open http://localhost:3000/ with your browser to see the result.
- Ensure that commit messages follow Angular Commit Messages
- Create Merge Request with branch titled according to type. Example:
feat/jwt-impl
ordocs/update-readme
- Ensure that commits must be signed