1.18.0 (2025-11-30)
- optimize notes counts endpoint and add sheets note type (6500247)
1.17.0 (2025-11-24)
- add public notes caching and public count to notes endpoint (6436058)
1.16.7 (2025-11-24)
- update color regex to allow lowercase hex in OpenAPI schema (87dd2bc)
1.16.6 (2025-11-23)
- add auth tests and fix test database setup (c71be50)
1.16.5 (2025-11-23)
- correct Jest 30 mock type casting syntax (92a192a)
1.16.4 (2025-11-23)
- add type annotations to auth test mocks for Jest 30 compatibility (6c38045)
1.16.3 (2025-11-23)
- use createClerkClient for Clerk SDK v2.13.0 compatibility (e15fbd7)
- use createClerkClient for Clerk SDK v2.13.0 compatibility (87d16d9)
1.16.2 (2025-11-23)
- update clerkClient usage for Clerk SDK v2.13.0 (38aa913)
1.16.1 (2025-11-23)
- add style attribute support and logging for public notes (bc831ef)
1.16.0 (2025-11-22)
- add public notes API for publishing encrypted notes (76061b7)
1.15.10 (2025-11-22)
- add comprehensive database/cache logging and update Grafana dashboard (5931c0f)
1.15.9 (2025-11-22)
- include http.client_ip in all auth event logs (a313aa9)
1.15.8 (2025-11-22)
- security: add CSWSH protection, header redaction, and patch CVEs (59a8262)
1.15.7 (2025-11-20)
- use standard OTEL environment variables (6e877a0)
1.15.6 (2025-11-19)
- use logRecordProcessors array and lazy-load OTEL logger (5b1eef3)
1.15.5 (2025-11-19)
- import SeverityNumber from @opentelemetry/api-logs (9c717c4)
1.15.4 (2025-11-19)
- integrate logger with OpenTelemetry Logs API (a916f2f)
1.15.3 (2025-11-19)
- correct OpenTelemetry SDK initialization - start() is synchronous (b56b768)
1.15.2 (2025-11-19)
- use resourceFromAttributes instead of Resource constructor (223a523)
1.15.1 (2025-11-19)
- add missing OpenTelemetry dependencies for production build (587c295)
1.15.0 (2025-11-19)
- migrate from Sentry to Grafana Cloud with OpenTelemetry (7c49f36)
1.14.1 (2025-11-05)
- return fake token from Piston for frontend compatibility (e216257)
- return fake token from Piston for frontend compatibility (2df254d)
1.14.0 (2025-11-05)
- add code note type and migrate to Upstash Redis + Piston (01d5b32)
1.13.0 (2025-11-05)
- migrate to Upstash Redis and Piston code execution (3abe305)
1.12.0 (2025-11-03)
- add diagram type support with filtering and tests (d47c0d4)
1.11.11 (2025-10-29)
- expand allowed file upload types to support office docs and Apple formats (f3e3cea)
1.11.10 (2025-10-28)
- install @jest/globals to fix CI test compilation (6c5acec)
- install @jest/globals to fix CI test compilation (1e7fcea)
1.11.9 (2025-10-28)
- enable database migrations for CI tests (17c4490)
1.11.8 (2025-10-28)
- include drizzle migrations in git for CI tests (fb65dca)
1.11.7 (2025-10-28)
- test: use absolute path for migrations in globalSetup (8da367a)
1.11.6 (2025-10-28)
- optimize notes API performance and add test infrastructure (ab8e902)
1.11.5 (2025-10-18)
- send logs as Sentry events using captureMessage/captureException (422a23c)
1.11.4 (2025-10-18)
- send logs as Sentry events using captureMessage/captureException (3133f21)
1.11.3 (2025-10-18)
- use Sentry breadcrumbs for proper structured logging field extraction (f26f3e6)
1.11.2 (2025-10-18)
- standardize logging with structured data and add cache monitoring support (534bbe9)
1.11.1 (2025-10-18)
- reduce log noise and prevent sensitive data logging (df00e25)
1.11.0 (2025-10-18)
- migrate to Sentry.io monitoring, upgrade to Node 22, add folders to Swagger docs (f2189fd)
1.10.0 (2025-10-18)
- add Folders to Swagger and organize monitoring configs (a483df0)
1.9.0 (2025-10-17)
- migrate from New Relic to Prometheus/Grafana metrics (236b1c4)
1.8.2 (2025-10-17)
- resolve Redis Cluster CROSSSLOT error in cache deletions (862d796)
1.8.1 (2025-10-16)
- add comprehensive OpenAPI documentation and refactor routes (5ca9cc6)
1.7.2 (2025-10-15)
- restore JSON string format for CloudWatch compatibility (dc2b7aa)
1.7.1 (2025-10-15)
- output structured logs for New Relic log forwarding (9d004a4)
1.7.0 (2025-10-15)
- add optimized notes counts endpoint for mobile app (225691d)
1.6.2 (2025-10-15)
- replace GITHUB_TOKEN with PAT_TOKEN in release workflow (6327365)
- replace GITHUB_TOKEN with PAT_TOKEN in release workflow (844f9d9)
1.6.1 (2025-10-15)
1.6.0 (2025-10-15)
- add Valkey caching layer with New Relic monitoring and structured logging (14ada06)
1.5.0 (2025-10-13)
- add configurable database connection pooling (18507b1)
1.4.0 (2025-10-12)
- add attachment count to notes list and enhance monitoring (136ad40)
1.3.1 (2025-09-25)
- enforce encrypted data validation to prevent plaintext exposure (0cc6f77)
1.3.0 (2025-09-23)
- add comprehensive Sentry monitoring and fix 429 rate limiting error (6ba5744)
1.2.0 (2025-09-20)
- ci: add Husky pre-commit hooks to prevent CI failures (346bc2b)
- ci: add Husky pre-commit hooks to prevent CI failures (e2b1017)
- code: add secure API proxy for code execution (8d599b5)
1.1.1 (2025-09-16)
- make note title field optional for encrypted notes (ec19a48)
1.1.0 (2025-09-15)
- websocket: implement real-time sync with HMAC authentication and fix folder moves (8de85b7)
1.0.4 (2025-09-10)
- bundle API with esbuild to resolve directory import errors (4644c0e)
1.0.3 (2025-09-10)
- include root-level TypeScript files in esbuild output (cf9bb4f)
1.0.2 (2025-09-10)
- replace tsc with esbuild to resolve build hanging issue (235fce7)
1.0.1 (2025-09-10)
- update Dockerfile to use pnpm instead of npm (13e9639)
- remove ES module configuration to fix semantic-release scripts (f869d14)
- initial open source release of Typelets API (66a3d30)
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Real-time WebSocket Sync: Complete WebSocket implementation for real-time note and folder synchronization
- JWT authentication for WebSocket connections
- Optional HMAC-SHA256 message authentication for enhanced security
- Rate limiting (300 messages/min) and connection limits (20 per user)
- Connection management with automatic cleanup
- Note and folder sync across multiple devices/sessions
- Support for note folder moves via WebSocket
- Security Enhancements:
- Comprehensive security headers middleware (CSP, HSTS, XSS protection)
- Enhanced rate limiting middleware
- Production-ready security configuration
- TypeScript Improvements: Fixed iterator compatibility and module import issues
- Documentation: Complete WebSocket integration documentation and updated security policy
- WebSocket note sync issue where
folderIdchanges weren't being broadcast - TypeScript compilation issues with Map iterators and postgres module imports
- Memory leak prevention in nonce storage with automatic cleanup
- Initial open source release
- TypeScript API with Hono framework
- PostgreSQL database with Drizzle ORM
- Clerk authentication integration
- End-to-end encryption support for notes and files
- Folder organization with nested folder support
- File attachments with encrypted storage
- Tags and search functionality
- Trash and archive features
- Comprehensive API documentation
- GitHub Actions CI/CD pipeline with semantic versioning
- Environment-based configuration for CORS and file upload limits
- Production-ready logging with debug mode support