diff --git a/package.json b/package.json
index 18f5906..b1bd403 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
 	"name": "fire-lib-js",
-	"version": "0.3.2",
+	"version": "0.3.3",
 	"author": "Sören Meier <info@soerenmeier.ch>",
 	"type": "module",
 	"scripts": {
diff --git a/src/api/Api.ts b/src/api/Api.ts
index 3c534ee..a7bb150 100644
--- a/src/api/Api.ts
+++ b/src/api/Api.ts
@@ -1,4 +1,4 @@
-import ApiError from './ApiError';
+import ApiError from './ApiError.js';
 
 /**
  * Api class to handle requests to a server
diff --git a/src/api/Stream.ts b/src/api/Stream.ts
index 4fc9b8f..6c57b64 100644
--- a/src/api/Stream.ts
+++ b/src/api/Stream.ts
@@ -1,6 +1,6 @@
-import ApiError from './ApiError';
-import Listeners from '../sync/Listeners';
-import Api from './Api';
+import ApiError from './ApiError.js';
+import Listeners from '../sync/Listeners.js';
+import Api from './Api.js';
 
 /**
  * The Stream is responsible for managing your connection with a server
diff --git a/src/time/Date.ts b/src/time/Date.ts
index 8033803..c76158c 100644
--- a/src/time/Date.ts
+++ b/src/time/Date.ts
@@ -1,5 +1,5 @@
-import { padZero } from '../utils/utils';
-import { fromAny } from './localization';
+import { padZero } from '../utils/utils.js';
+import { fromAny } from './localization.js';
 
 const DAY_IN_MS = 1000 * 60 * 60 * 24;
 
diff --git a/src/time/DateTime.ts b/src/time/DateTime.ts
index 3772781..a46ba8f 100644
--- a/src/time/DateTime.ts
+++ b/src/time/DateTime.ts
@@ -1,5 +1,5 @@
-import { padZero } from '../utils/utils';
-import { fromAny } from './localization';
+import { padZero } from '../utils/utils.js';
+import { fromAny } from './localization.js';
 
 const DAY_IN_MS = 1000 * 60 * 60 * 24;
 
diff --git a/src/time/DateTimeRange.ts b/src/time/DateTimeRange.ts
index 9ec0454..06b888b 100644
--- a/src/time/DateTimeRange.ts
+++ b/src/time/DateTimeRange.ts
@@ -1,5 +1,5 @@
-import { padZero } from '../utils/utils';
-import type DateTime from './DateTime';
+import { padZero } from '../utils/utils.js';
+import type DateTime from './DateTime.js';
 
 export default class DateTimeRange {
 	from: DateTime;
diff --git a/src/time/Duration.ts b/src/time/Duration.ts
index b7dac43..f3da96d 100644
--- a/src/time/Duration.ts
+++ b/src/time/Duration.ts
@@ -1,5 +1,5 @@
-import type DateTime from './DateTime';
-import { type Localization, fromAny } from './localization';
+import type DateTime from './DateTime.js';
+import { type Localization, fromAny } from './localization.js';
 
 export default class Duration {
 	millis: number;
diff --git a/src/utils/colors.ts b/src/utils/colors.ts
index 9b54d02..81db4a4 100644
--- a/src/utils/colors.ts
+++ b/src/utils/colors.ts
@@ -1,4 +1,4 @@
-import { range } from './utils';
+import { range } from './utils.js';
 
 /**
  * returns expects a hex value with 6 values `rgba(0,0,0,a)`
diff --git a/tsconfig.json b/tsconfig.json
index 779de66..cbf1425 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -2,15 +2,14 @@
 	"compilerOptions": {
 		"target": "ESNext",
 		"useDefineForClassFields": true,
-		"module": "ESNext",
-		"moduleResolution": "Bundler",
+		"module": "NodeNext",
+		"moduleResolution": "NodeNext",
 		"declaration": true,
 		"declarationMap": true,
 		"sourceMap": true,
 		"noImplicitAny": true,
-		"baseUrl": ".",
 		"paths": {
-			"@/*": ["src/*"]
+			"@/*": ["./src/*"]
 		},
 		"allowJs": true,
 		"checkJs": false,