- Created migration for accounts table with fields: id, username, password, role_id, created_at, updated_at. - Created migration for movies table with fields: id, title, overview, poster_path, backdrop_path, release_date, tmdb_id. refactor: update package.json scripts and dependencies - Changed dev script to use bun instead of tsx. - Added build:migrate script for migration. - Updated devDependencies for bun and oxlint. fix: refactor database connection and migration execution - Updated PgDatabase to use SQL from bun. - Refactored migration execution logic to read SQL files and execute them. feat: implement account creation and validation logic - Updated AccountEntity to use username instead of email. - Added validation for username format and password strength. - Implemented account repository methods for finding by username and inserting accounts. test: add tests for account entity, repository, and service - Created tests for AccountEntity to validate username and password. - Added tests for AccountRepository to ensure correct database interactions. - Implemented tests for AccountService to validate registration and login logic. chore: remove outdated tests and files - Deleted old tests related to email-based account management. - Cleaned up unused imports and files to streamline the codebase.
nixi-api
Scripts
bun dev- Start development server with hot reloadbun run lint- Run linter (oxlint)bun run type- Type check without emittingbun run build- Build production bundlebun run tests- Run tests with Bun test runner
Testing
This project uses Bun's built-in test runner instead of Jest or Vitest. Tests are located in the tests/ directory and use the pattern *.test.ts.
Running tests
# Run all tests
bun test
# Run specific test file
bun test tests/AccountEntity.test.ts
# Run tests in watch mode
bun test --watch
# Run tests with coverage
bun test --coverage
Description
Languages
TypeScript
98.5%
Dockerfile
1.5%