{"_id":"nextjs-django-client","_rev":"32-7828681390c5db7a0486a2962076a6b6","name":"nextjs-django-client","dist-tags":{"latest":"2.7.0"},"versions":{"2.0.0":{"name":"nextjs-django-client","version":"2.0.0","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Augment Code"},"license":"MIT","_id":"nextjs-django-client@2.0.0","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"dist":{"shasum":"790706a0fc389bd8c7cd24fd9e07195074f57af8","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.0.0.tgz","fileCount":7,"integrity":"sha512-o2CkNrqfmV2w26FMO2sbyRVac6gDxKPQY4zwVzN4qiEtRmJgxDqGiXtKgBzQGx0JCfo8p9t4dNeDgN5HwMMkfg==","signatures":[{"sig":"MEUCIHUlzg2A0b4bfGZy1hK7zCtz4yCr0arJnlxz2icpgTVCAiEAuzb4z7ttMrX7r9bK4stjUx8051mK+SXzweiJ3NMbPAk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1616040},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"b533fa811d6e1ddae4ce2870d6cd0b589ca0b80c","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","test":"jest","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"chokidar":"^3.5.3","commander":"^11.1.0","js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^18.2.0","eslint":"^8.54.0","rimraf":"^5.0.5","rollup":"^4.5.0","ts-jest":"^29.1.1","prettier":"^3.1.0","react-dom":"^18.2.0","typescript":"^5.2.2","@types/jest":"^29.5.8","@types/node":"^20.9.0","@types/react":"^18.2.37","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.0","eslint-plugin-react":"^7.33.2","@testing-library/react":"^14.1.2","eslint-config-prettier":"^9.0.0","jest-environment-jsdom":"^29.7.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^6.1.5","@typescript-eslint/parser":"^6.11.0","eslint-plugin-react-hooks":"^4.6.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.11.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.0.0_1750775763869_0.02769989791504801","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"nextjs-django-client","version":"2.0.1","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Augment Code"},"license":"MIT","_id":"nextjs-django-client@2.0.1","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"dist":{"shasum":"d20e764cd4cab4797428dd7318778aca1d442cab","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.0.1.tgz","fileCount":7,"integrity":"sha512-++G3j4q/S12H+w+lf2GBJhK6XBmElUec2EVPRNcGvk2klPrHZrK+TmU+6nZYesG5BtggJXLyFRj2Yf2w+NJ7Pw==","signatures":[{"sig":"MEQCIHtBFZNQog5/xSub2szCbqmlbgjWT0GNugvoPBtbjKPUAiA+AZJJk5vjATEMWiIVcL0G1rGh+I8Nh+MUxB28pMyP4g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1620220},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"021c770282527412d4abc8392638acb433642006","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","test":"jest","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"chokidar":"^3.5.3","commander":"^11.1.0","js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^18.2.0","eslint":"^8.54.0","rimraf":"^5.0.5","rollup":"^4.5.0","ts-jest":"^29.1.1","prettier":"^3.1.0","react-dom":"^18.2.0","typescript":"^5.2.2","@types/jest":"^29.5.8","@types/node":"^20.9.0","@types/react":"^18.2.37","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.0","eslint-plugin-react":"^7.33.2","@testing-library/react":"^14.1.2","eslint-config-prettier":"^9.0.0","jest-environment-jsdom":"^29.7.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^6.1.5","@typescript-eslint/parser":"^6.11.0","eslint-plugin-react-hooks":"^4.6.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.11.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"optionalDependencies":{"prettier":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.0.1_1750783237119_0.533180450126644","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"nextjs-django-client","version":"2.1.0","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Augment Code"},"license":"MIT","_id":"nextjs-django-client@2.1.0","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"bin":{"openapi-codegen":"dist/cli.js","nextjs-django-codegen":"dist/cli.js"},"dist":{"shasum":"dedaefedb9748e6b56582bd44c9f8bd3663a6245","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.1.0.tgz","fileCount":9,"integrity":"sha512-rj2Evyfxs+YObUj68fl8g7iaL2JeQed2yrhvFAu17nwbNiLNCO+HBK3/6mWMDPiY/hX8lawsGwVHDfuCi3DEAQ==","signatures":[{"sig":"MEYCIQDqJqjpAwFfz7kLDzcuWxhi19mGoQq1HAYkmcV47QrprQIhAMWkjtDXYv425u27fWYnxqKd7yiZwLrJvE3asw6MmMde","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15542630},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"021c770282527412d4abc8392638acb433642006","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","test":"jest","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"chokidar":"^3.5.3","commander":"^11.1.0","js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^18.2.0","eslint":"^8.54.0","rimraf":"^5.0.5","rollup":"^4.5.0","ts-jest":"^29.1.1","prettier":"^3.1.0","react-dom":"^18.2.0","typescript":"^5.2.2","@types/jest":"^29.5.8","@types/node":"^20.9.0","@types/react":"^18.2.37","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.0","eslint-plugin-react":"^7.33.2","@testing-library/react":"^14.1.2","eslint-config-prettier":"^9.0.0","jest-environment-jsdom":"^29.7.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^6.1.5","@typescript-eslint/parser":"^6.11.0","eslint-plugin-react-hooks":"^4.6.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.11.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"optionalDependencies":{"prettier":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.1.0_1750784452252_0.4129717657098182","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"nextjs-django-client","version":"2.1.1","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Taqiudeen Abdulai"},"license":"MIT","_id":"nextjs-django-client@2.1.1","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"bin":{"openapi-codegen":"dist/cli.js","nextjs-django-codegen":"dist/cli.js"},"dist":{"shasum":"4651c72d74e1008f860500e67cfab8fe5579ef17","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.1.1.tgz","fileCount":9,"integrity":"sha512-OykgrJLCW3/7I6JmvQ2jZEpqFBHmsofpRa30eQeKmvAGViI83Ukc8TdMqb/XQ3dkOLpBAO656jQshXOgbUEDPw==","signatures":[{"sig":"MEYCIQCfKDBR8FxTg7/YxBeWbId22iNDrMOr7+uOxJS/xEOE6gIhAL7jasZLJIKQb+mpblhHzUCVm8kifyDpNH9iwJoWu6oa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15554794},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"51339a60ddf0a9d8a16c16afc72dd88bf96ce6dc","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","test":"jest","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"chokidar":"^3.5.3","commander":"^11.1.0","js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^18.2.0","eslint":"^8.54.0","rimraf":"^5.0.5","rollup":"^4.5.0","ts-jest":"^29.1.1","prettier":"^3.1.0","react-dom":"^18.2.0","typescript":"^5.2.2","@types/jest":"^29.5.8","@types/node":"^20.9.0","@types/react":"^18.2.37","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.0","eslint-plugin-react":"^7.33.2","@testing-library/react":"^14.1.2","eslint-config-prettier":"^9.0.0","jest-environment-jsdom":"^29.7.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^6.1.5","@typescript-eslint/parser":"^6.11.0","eslint-plugin-react-hooks":"^4.6.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.11.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"optionalDependencies":{"prettier":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.1.1_1750849560703_0.7541714276384768","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"nextjs-django-client","version":"2.2.0","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Taqiudeen Abdulai"},"license":"MIT","_id":"nextjs-django-client@2.2.0","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"bin":{"openapi-codegen":"dist/cli.js","nextjs-django-codegen":"dist/cli.js"},"dist":{"shasum":"0c4a787f7a5f2698266e3ad8dd2bda4a37ee1f21","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.2.0.tgz","fileCount":9,"integrity":"sha512-MEsDb82t1V32SJhKTC+D4FnfYB9wDDP2FKm0G4LzaJ2/tl8spUEan0cUrDJOmmYUUhta/OGO/7Raigp9iFpwKw==","signatures":[{"sig":"MEUCIDUZjA5MmU2puwWeyVwZoLMAdQgAXQbWoHsD0qx0tMVeAiEArij7P9V9qGfwmBxHZvOrCAlkNt2sUUUjH7C2ZPsw3zg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15558856},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"51339a60ddf0a9d8a16c16afc72dd88bf96ce6dc","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","test":"jest","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"chokidar":"^3.5.3","commander":"^11.1.0","js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^18.2.0","eslint":"^8.54.0","rimraf":"^5.0.5","rollup":"^4.5.0","ts-jest":"^29.1.1","prettier":"^3.1.0","react-dom":"^18.2.0","typescript":"^5.2.2","@types/jest":"^29.5.8","@types/node":"^20.9.0","@types/react":"^18.2.37","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.0","eslint-plugin-react":"^7.33.2","@testing-library/react":"^14.1.2","eslint-config-prettier":"^9.0.0","jest-environment-jsdom":"^29.7.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^6.1.5","@typescript-eslint/parser":"^6.11.0","eslint-plugin-react-hooks":"^4.6.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.11.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"optionalDependencies":{"prettier":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.2.0_1750851856421_0.4412820515169176","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"nextjs-django-client","version":"2.3.0","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Taqiudeen Abdulai"},"license":"MIT","_id":"nextjs-django-client@2.3.0","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"bin":{"openapi-codegen":"dist/cli.js","nextjs-django-codegen":"dist/cli.js"},"dist":{"shasum":"a121c796ccd53e4879a2ad1707596ebdf702480d","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.3.0.tgz","fileCount":9,"integrity":"sha512-Ub6VDQNF+ox+HpAq+8sx+wfl1w+lKJtEWikLD6tOp4aXZH1xdrdSuTF81QmYOOKRqu1d+QOU2kGBQSNldLQetg==","signatures":[{"sig":"MEUCIQDTT/+C9Mgl0z916tOnJW942RkdsXMAu/h2l9joLo29lQIgFrQdS20OSdtRk0erMG3Ues+BpzjGmYy+M0cMVxLOFgo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15562143},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"1944d53839e962e8cbd6a6a8e2937ec88e39c1bc","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","test":"jest","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"chokidar":"^3.6.0","commander":"^12.1.0","js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^18.3.1","eslint":"^8.57.0","rimraf":"^6.0.1","rollup":"^4.19.0","ts-jest":"^29.2.3","prettier":"^3.3.3","react-dom":"^18.3.1","typescript":"^5.5.4","@types/jest":"^29.5.12","@types/node":"^22.0.0","@types/react":"^18.3.3","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.1","eslint-plugin-react":"^7.35.0","@testing-library/react":"^16.0.0","eslint-config-prettier":"^9.1.0","jest-environment-jsdom":"^29.7.0","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-typescript":"^11.1.6","@testing-library/jest-dom":"^6.4.8","@typescript-eslint/parser":"^7.18.0","eslint-plugin-react-hooks":"^4.6.2","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^7.18.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"optionalDependencies":{"prettier":"^3.3.3"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.3.0_1750858952300_0.39575364995117224","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"nextjs-django-client","version":"2.3.1","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Taqiudeen Abdulai"},"license":"MIT","_id":"nextjs-django-client@2.3.1","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"bin":{"openapi-codegen":"dist/cli.js","nextjs-django-codegen":"dist/cli.js"},"dist":{"shasum":"10355beb8b1823547e1cb17117857ef68e958921","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.3.1.tgz","fileCount":9,"integrity":"sha512-oxJNG6xJAaK3/KPPXW8uZWwhm13MyHnhh/P6qqOUQJ0bIXMR1he7WM/W2A7Q3ORSI/eJ/NE5ziodxcatuQ6UBg==","signatures":[{"sig":"MEQCIB/TCwXX2QH8/hjt+Jaj0E42jdfv1cN5dtM93SVNeRLdAiBAvkaPZIWKZU25LGPiKHxoC6aar6Q2MEr36Yl9gvtGAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15562172},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"1944d53839e962e8cbd6a6a8e2937ec88e39c1bc","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","test":"jest","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"fs":"0.0.1-security","chokidar":"^3.6.0","commander":"^12.1.0","js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^18.3.1","eslint":"^8.57.0","rimraf":"^6.0.1","rollup":"^4.19.0","ts-jest":"^29.2.3","prettier":"^3.3.3","react-dom":"^18.3.1","typescript":"^5.5.4","@types/jest":"^29.5.12","@types/node":"^22.0.0","@types/react":"^18.3.3","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.1","eslint-plugin-react":"^7.35.0","@testing-library/react":"^16.0.0","eslint-config-prettier":"^9.1.0","jest-environment-jsdom":"^29.7.0","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-typescript":"^11.1.6","@testing-library/jest-dom":"^6.4.8","@typescript-eslint/parser":"^7.18.0","eslint-plugin-react-hooks":"^4.6.2","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^7.18.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"optionalDependencies":{"prettier":"^3.3.3"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.3.1_1750859606190_0.8249889152470933","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"nextjs-django-client","version":"2.4.0","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Taqiudeen Abdulai"},"license":"MIT","_id":"nextjs-django-client@2.4.0","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"bin":{"openapi-codegen":"dist/cli.js","nextjs-django-codegen":"dist/cli.js"},"dist":{"shasum":"e50eb5be9a068d11cfb6d90e05de6d6fa88baffb","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.4.0.tgz","fileCount":19,"integrity":"sha512-7Vuanl6BSJeYyQlXX25AkPuT5Z2duJOuZFQ9yQg7T9uqBY/yJhXcdAbUDTPedn5e+Xd+vKFV0am7GcnvhWJdFA==","signatures":[{"sig":"MEQCIEmm0+aGM76aLFyJx37UR7owhQGaNiuZgHIM+RN+EGq9AiAs6L/+PC9VYfkVysgnmAuOKSyjTJxqwiq+g2RMQAzL5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16100022},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./core":{"types":"./dist/core.d.ts","import":"./dist/core.esm.js","require":"./dist/core.js"},"./advanced":{"types":"./dist/advanced.d.ts","import":"./dist/advanced.esm.js","require":"./dist/advanced.js"}},"gitHead":"1944d53839e962e8cbd6a6a8e2937ec88e39c1bc","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","eslint":"^8.57.0","rimraf":"^6.0.1","rollup":"^4.19.0","chokidar":"^3.6.0","prettier":"^3.3.3","commander":"^12.1.0","react-dom":"^18.3.1","typescript":"^5.5.4","@types/node":"^22.0.0","@types/react":"^18.3.3","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.1","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-typescript":"^11.1.6","@typescript-eslint/parser":"^7.18.0","eslint-plugin-react-hooks":"^4.6.2","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^7.18.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"optionalDependencies":{"prettier":"^3.3.3"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.4.0_1750962834212_0.3435343140382485","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"nextjs-django-client","version":"2.5.0","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Augment Code"},"license":"MIT","_id":"nextjs-django-client@2.5.0","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/augment-code/nextjs-django-client#readme","bugs":{"url":"https://github.com/augment-code/nextjs-django-client/issues"},"bin":{"openapi-codegen":"dist/codegen/cli/index.js","nextjs-django-codegen":"dist/codegen/cli/index.js"},"dist":{"shasum":"f28d342d3022b442812b22beab5d0d0fbf67c327","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.5.0.tgz","fileCount":22,"integrity":"sha512-JiQzBDsm2Uxik/WjqWBnIliMhVMYgtL2w9gHe889tC25/8vn8ZjdWd7W9iNY9bXR0Y8yhU5aAsSmo27dtvzZ+g==","signatures":[{"sig":"MEQCIFwZ5rbMu6h9peNiIWlDnLpM3hi30IhteAwER74jM5LgAiBYJtlGJ383CQUCvgZi4saJVK4R3BV5H+T6dfih5NSIrg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32675205},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"gitHead":"b6a70eceb1ae7d666f0ce91035ec8e89e69e4167","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","test":"jest","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/augment-code/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"chokidar":"^3.5.3","commander":"^11.1.0","js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^18.2.0","eslint":"^8.54.0","rimraf":"^5.0.5","rollup":"^4.5.0","ts-jest":"^29.1.1","prettier":"^3.1.0","react-dom":"^18.2.0","typescript":"^5.2.2","@types/jest":"^29.5.8","@types/node":"^20.9.0","@types/react":"^18.2.37","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.0","@rollup/plugin-json":"^6.1.0","eslint-plugin-react":"^7.33.2","@testing-library/react":"^14.1.2","eslint-config-prettier":"^9.0.0","jest-environment-jsdom":"^29.7.0","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^6.1.5","@typescript-eslint/parser":"^6.11.0","eslint-plugin-react-hooks":"^4.6.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.11.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.5.0_1750974195842_0.7893878461628336","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"nextjs-django-client","version":"2.6.0","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Taqiudeen Abdulai"},"license":"MIT","_id":"nextjs-django-client@2.6.0","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"bin":{"openapi-codegen":"dist/cli.js","nextjs-django-codegen":"dist/cli.js"},"dist":{"shasum":"05b528e7a0602b01435c8b8a1447a49882377ba6","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.6.0.tgz","fileCount":19,"integrity":"sha512-2ORcg9poeB66OAkCpuDI60DdT8VvaCYUAKRmYNjEEC4xBW0AOEdVgRR58z7M5utXC5eAc9+KYENg2TQdX10YHQ==","signatures":[{"sig":"MEQCIDz5jokqcQFxCQfhrpmcfPHqIRx7SdqST21w961NCcYjAiBgMedfP2vz7lfvg04BrsdC5J8Mfd8hLl6uk5jfMZyT+Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16172513},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./core":{"types":"./dist/core.d.ts","import":"./dist/core.esm.js","require":"./dist/core.js"},"./advanced":{"types":"./dist/advanced.d.ts","import":"./dist/advanced.esm.js","require":"./dist/advanced.js"}},"gitHead":"1308ce96a4a8601443f50c2bf9d9bfe8b0c854c2","scripts":{"dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","build":"rollup -c","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","type-check":"tsc --noEmit","build:watch":"rollup -c -w","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"ats24","actor":{"name":"ats24","type":"user","email":"atarqiudeen@gmail.com"},"email":"atarqiudeen@gmail.com"},"repository":{"url":"git+https://github.com/taqiudeen275/nextjs-django-client.git","type":"git"},"_npmVersion":"10.9.2","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","directories":{},"_nodeVersion":"22.16.0","dependencies":{"js-cookie":"^3.0.5"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","eslint":"^8.57.0","rimraf":"^6.0.1","rollup":"^4.19.0","chokidar":"^3.6.0","prettier":"^3.3.3","commander":"^12.1.0","react-dom":"^18.3.1","typescript":"^5.5.4","@types/node":"^22.0.0","@types/react":"^18.3.3","@types/js-cookie":"^3.0.6","rollup-plugin-dts":"^6.1.1","eslint-plugin-react":"^7.35.0","eslint-config-prettier":"^9.1.0","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-typescript":"^11.1.6","@typescript-eslint/parser":"^7.18.0","eslint-plugin-react-hooks":"^4.6.2","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^7.18.0"},"peerDependencies":{"next":">=13.0.0","react":">=18.0.0"},"optionalDependencies":{"prettier":"^3.3.3"},"_npmOperationalInternal":{"tmp":"tmp/nextjs-django-client_2.6.0_1750978703272_0.9290419066597295","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"nextjs-django-client","version":"2.7.0","type":"module","description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.esm.js","require":"./dist/index.js","types":"./dist/index.d.ts"},"./core":{"import":"./dist/core.esm.js","require":"./dist/core.js","types":"./dist/core.d.ts"},"./advanced":{"import":"./dist/advanced.esm.js","require":"./dist/advanced.js","types":"./dist/advanced.d.ts"}},"bin":{"openapi-codegen":"dist/cli.js","nextjs-django-codegen":"dist/cli.js"},"scripts":{"build":"rollup -c","build:watch":"rollup -c -w","dev":"rollup -c -w","lint":"eslint src --ext .ts,.tsx","lint:fix":"eslint src --ext .ts,.tsx --fix","type-check":"tsc --noEmit","format":"prettier --write \"src/**/*.{ts,tsx,json,md}\"","format:check":"prettier --check \"src/**/*.{ts,tsx,json,md}\"","prepublishOnly":"npm run build","clean":"rimraf dist"},"keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"author":{"name":"Taqiudeen Abdulai"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/taqiudeen275/nextjs-django-client.git"},"bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","peerDependencies":{"react":">=18.0.0","next":">=13.0.0"},"devDependencies":{"@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","@rollup/plugin-typescript":"^11.1.6","@types/js-cookie":"^3.0.6","@types/node":"^22.0.0","@types/react":"^18.3.3","@typescript-eslint/eslint-plugin":"^7.18.0","@typescript-eslint/parser":"^7.18.0","eslint":"^8.57.0","eslint-config-prettier":"^9.1.0","eslint-plugin-react":"^7.35.0","eslint-plugin-react-hooks":"^4.6.2","prettier":"^3.3.3","react":"^18.3.1","react-dom":"^18.3.1","rimraf":"^6.0.1","rollup":"^4.19.0","rollup-plugin-dts":"^6.1.1","typescript":"^5.5.4","commander":"^12.1.0","chokidar":"^3.6.0"},"dependencies":{"js-cookie":"^3.0.5"},"optionalDependencies":{"prettier":"^3.3.3"},"engines":{"node":">=16.0.0"},"_id":"nextjs-django-client@2.7.0","gitHead":"ab93ed7d8d810855960fcf50e5249610c4c106c9","_nodeVersion":"22.16.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-RX4AttC1vxSxqdUlcOQmyOjaK3nl5kNN8cHOHw7sVxdfPrkBNdtKxxMFdCqJSm1qeSVFbJOQahZogLxkfgrLxg==","shasum":"7f20c3bd44f825877aebfe0b7a5d9e36e926a644","tarball":"https://registry.npmjs.org/nextjs-django-client/-/nextjs-django-client-2.7.0.tgz","fileCount":19,"unpackedSize":16230487,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAnxiYS6/BcjY/a9tSH2A+CWu4oDT7X11VUBb9Y44hyVAiALZPi+7fA1QDOwyhAP8CShXIBET+d+KUBZgtFJqWXwzw=="}]},"_npmUser":{"name":"ats24","email":"atarqiudeen@gmail.com","actor":{"name":"ats24","email":"atarqiudeen@gmail.com","type":"user"}},"directories":{},"maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nextjs-django-client_2.7.0_1751070218589_0.029481272371912004"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-24T14:36:03.868Z","modified":"2025-06-28T00:23:38.989Z","0.1.0":"2024-12-30T11:03:46.822Z","0.1.1":"2024-12-30T11:06:32.071Z","0.1.2":"2024-12-30T11:14:45.396Z","0.2.0":"2024-12-30T11:27:47.231Z","0.2.1":"2024-12-30T11:41:51.453Z","0.2.2":"2024-12-30T11:56:53.790Z","0.3.0":"2024-12-30T12:09:43.499Z","0.3.1":"2024-12-30T12:17:45.211Z","1.0.0":"2024-12-30T17:37:39.386Z","1.0.1":"2024-12-30T18:05:51.102Z","1.0.2":"2024-12-30T18:35:58.927Z","1.0.3":"2024-12-30T18:44:19.213Z","1.0.4":"2025-01-01T18:08:51.295Z","1.0.5":"2025-01-01T18:25:44.710Z","1.1.0":"2025-01-01T18:55:49.318Z","1.2.0":"2025-01-01T19:10:47.514Z","1.3.0":"2025-01-01T20:11:16.462Z","1.3.1":"2025-01-01T20:53:44.915Z","1.4.0":"2025-01-04T16:42:11.303Z","2.0.0":"2025-06-24T14:36:04.123Z","2.0.1":"2025-06-24T16:40:37.354Z","2.1.0":"2025-06-24T17:00:52.542Z","2.1.1":"2025-06-25T11:06:00.950Z","2.2.0":"2025-06-25T11:44:16.619Z","2.3.0":"2025-06-25T13:42:32.520Z","2.3.1":"2025-06-25T13:53:26.395Z","2.4.0":"2025-06-26T18:33:54.487Z","2.5.0":"2025-06-26T21:43:16.163Z","2.6.0":"2025-06-26T22:58:23.525Z","2.7.0":"2025-06-28T00:23:38.794Z"},"bugs":{"url":"https://github.com/taqiudeen275/nextjs-django-client/issues"},"author":{"name":"Taqiudeen Abdulai"},"license":"MIT","homepage":"https://github.com/taqiudeen275/nextjs-django-client#readme","keywords":["nextjs","django","rest-framework","typescript","sdk","authentication","state-management","react","hooks"],"repository":{"type":"git","url":"git+https://github.com/taqiudeen275/nextjs-django-client.git"},"description":"A comprehensive, type-safe SDK for seamlessly integrating Next.js 15+ applications with Django REST Framework backends","maintainers":[{"name":"ats24","email":"atarqiudeen@gmail.com"}],"readme":"# Next.js Django Client SDK\r\n\r\n🚀 **The easiest way to connect your Next.js app to Django REST Framework**\r\n\r\nA comprehensive, type-safe SDK that makes integrating Next.js applications with Django backends simple and powerful. Perfect for beginners and experts alike!\r\n\r\n## ✨ Why Choose This SDK?\r\n\r\n- 🎯 **Beginner-Friendly**: Get started in minutes with our step-by-step guide\r\n- 🔒 **Secure by Default**: Built-in JWT authentication and CSRF protection\r\n- 📝 **Full TypeScript**: Complete type safety for your API calls\r\n- 🤖 **Auto-Generated Code**: Generate API clients from your OpenAPI specs\r\n- ⚡ **Modern React**: Built for Next.js 15+ with React 18+ hooks\r\n- 🧪 **Well Tested**: Comprehensive test suite with 95%+ coverage\r\n\r\n## 🚀 Quick Start (5 minutes)\r\n\r\n### Step 1: Install the Package\r\n\r\n```bash\r\nnpm install nextjs-django-client\r\n# or\r\nyarn add nextjs-django-client\r\n# or\r\npnpm add nextjs-django-client\r\n```\r\n\r\n#### Bundle Options\r\n\r\nChoose the right bundle for your needs:\r\n\r\n```typescript\r\n// Full bundle (258 KB) - All features included\r\nimport { createDjangoApiClient, useAuth, useRBAC } from 'nextjs-django-client';\r\n\r\n// Core bundle (136 KB) - Basic features only (recommended for most users)\r\nimport { createDjangoApiClient, useAuth } from 'nextjs-django-client/core';\r\n\r\n// Advanced bundle (171 KB) - RBAC, social login, advanced auth\r\nimport { useRBAC, useSocialLogin, AdvancedAuthProvider } from 'nextjs-django-client/advanced';\r\n```\r\n\r\n### Step 2: Create Your API Client\r\n\r\nCreate a new file `lib/api.ts` in your Next.js project:\r\n\r\n```typescript\r\nimport { createDjangoApiClient } from 'nextjs-django-client';\r\n\r\n// Replace with your Django API URL\r\nexport const apiClient = createDjangoApiClient('http://localhost:8000/api');\r\n```\r\n\r\n### Step 3: Add Authentication (Optional)\r\n\r\nWrap your app with the AuthProvider in `app/layout.tsx` or `pages/_app.tsx`:\r\n\r\n```tsx\r\nimport { AuthProvider } from 'nextjs-django-client';\r\nimport { apiClient } from '@/lib/api';\r\n\r\nexport default function RootLayout({\r\n  children,\r\n}: {\r\n  children: React.ReactNode;\r\n}) {\r\n  return (\r\n    <html lang=\"en\">\r\n      <body>\r\n        <AuthProvider apiClient={apiClient}>\r\n          {children}\r\n        </AuthProvider>\r\n      </body>\r\n    </html>\r\n  );\r\n}\r\n\r\n### Step 4: Start Making API Calls\r\n\r\nNow you can use the API client anywhere in your app:\r\n\r\n```tsx\r\n'use client'; // For Next.js 13+ App Router\r\n\r\nimport { useState, useEffect } from 'react';\r\nimport { apiClient } from '@/lib/api';\r\n\r\ninterface User {\r\n  id: number;\r\n  email: string;\r\n  name: string;\r\n}\r\n\r\nexport default function UsersPage() {\r\n  const [users, setUsers] = useState<User[]>([]);\r\n  const [loading, setLoading] = useState(true);\r\n\r\n  useEffect(() => {\r\n    async function fetchUsers() {\r\n      try {\r\n        const response = await apiClient.get<User[]>('/users/');\r\n        setUsers(response);\r\n      } catch (error) {\r\n        console.error('Failed to fetch users:', error);\r\n      } finally {\r\n        setLoading(false);\r\n      }\r\n    }\r\n\r\n    fetchUsers();\r\n  }, []);\r\n\r\n  if (loading) return <div>Loading...</div>;\r\n\r\n  return (\r\n    <div>\r\n      <h1>Users</h1>\r\n      <ul>\r\n        {users.map(user => (\r\n          <li key={user.id}>{user.name} ({user.email})</li>\r\n        ))}\r\n      </ul>\r\n    </div>\r\n  );\r\n}\r\n```\r\n\r\n## 🔐 Authentication Made Easy\r\n\r\n### Simple Login Form\r\n\r\n```tsx\r\n'use client';\r\n\r\nimport { useAuth } from 'nextjs-django-client';\r\n\r\nexport default function LoginForm() {\r\n  const { login, isLoading, error } = useAuth();\r\n\r\n  const handleSubmit = async (e: React.FormEvent<HTMLFormElement>) => {\r\n    e.preventDefault();\r\n    const formData = new FormData(e.currentTarget);\r\n\r\n    await login({\r\n      email: formData.get('email') as string,\r\n      password: formData.get('password') as string,\r\n    });\r\n  };\r\n\r\n  return (\r\n    <form onSubmit={handleSubmit} className=\"space-y-4\">\r\n      <div>\r\n        <label htmlFor=\"email\">Email:</label>\r\n        <input\r\n          id=\"email\"\r\n          name=\"email\"\r\n          type=\"email\"\r\n          required\r\n          className=\"border rounded px-3 py-2\"\r\n        />\r\n      </div>\r\n      <div>\r\n        <label htmlFor=\"password\">Password:</label>\r\n        <input\r\n          id=\"password\"\r\n          name=\"password\"\r\n          type=\"password\"\r\n          required\r\n          className=\"border rounded px-3 py-2\"\r\n        />\r\n      </div>\r\n      {error && <p className=\"text-red-500\">{error.message}</p>}\r\n      <button\r\n        type=\"submit\"\r\n        disabled={isLoading}\r\n        className=\"bg-blue-500 text-white px-4 py-2 rounded disabled:opacity-50\"\r\n      >\r\n        {isLoading ? 'Logging in...' : 'Login'}\r\n      </button>\r\n    </form>\r\n  );\r\n}\r\n```\r\n\r\n### Protected Routes\r\n\r\n```tsx\r\n'use client';\r\n\r\nimport { useAuth } from 'nextjs-django-client';\r\nimport { useRouter } from 'next/navigation';\r\nimport { useEffect } from 'react';\r\n\r\nexport default function ProtectedPage() {\r\n  const { user, isLoading, error } = useAuth(); // error property available for error handling\r\n  const router = useRouter();\r\n\r\n  useEffect(() => {\r\n    if (!isLoading && !user) {\r\n      router.push('/login');\r\n    }\r\n  }, [user, isLoading, router]);\r\n\r\n  if (isLoading) return <div>Loading...</div>;\r\n  if (!user) return null;\r\n\r\n  return (\r\n    <div>\r\n      <h1>Welcome, {user.name}!</h1>\r\n      <p>This is a protected page.</p>\r\n    </div>\r\n  );\r\n}\r\n```\r\n\r\n## 🤖 Auto-Generate Your API Client (Recommended!)\r\n\r\nThe easiest way to get started is by generating your API client from your Django OpenAPI schema. This gives you:\r\n\r\n- ✅ **100% Type Safety**: All your API endpoints are fully typed\r\n- ✅ **Auto-completion**: Your IDE knows all available methods and parameters\r\n- ✅ **Always Up-to-date**: Regenerate when your API changes\r\n- ✅ **Zero Boilerplate**: No manual API client code to write\r\n\r\n### Step 1: Export Your Django OpenAPI Schema\r\n\r\nFirst, make sure your Django project exports an OpenAPI schema. Add this to your Django `urls.py`:\r\n\r\n```python\r\n# urls.py\r\nfrom django.contrib import admin\r\nfrom django.urls import path, include\r\nfrom rest_framework.schemas import get_schema_view\r\n\r\nurlpatterns = [\r\n    path('admin/', admin.site.urls),\r\n    path('api/', include('your_app.urls')),\r\n    # Add this line to export your schema\r\n    path('api/schema/', get_schema_view(\r\n        title=\"Your API\",\r\n        description=\"API for your awesome project\",\r\n        version=\"1.0.0\"\r\n    ), name='openapi-schema'),\r\n]\r\n```\r\n\r\n### Step 2: Generate Your API Client\r\n\r\n```bash\r\n# Download your schema (replace with your URL)\r\ncurl http://localhost:8000/api/schema/ > openapi.json\r\n\r\n# Generate your API client\r\nnpx nextjs-django-codegen generate -i openapi.json -o src/generated\r\n```\r\n\r\n### Step 3: Use Your Generated Client\r\n\r\n```tsx\r\n// src/generated/index.ts is automatically created\r\nimport { GeneratedApiClient, useGetUsers, useCreateUser } from '@/generated';\r\n\r\n// Create your client instance\r\nconst client = new GeneratedApiClient('http://localhost:8000/api');\r\n\r\n// Use in React components with generated hooks\r\nexport default function UsersPage() {\r\n  const { data: users, isLoading, error } = useGetUsers();\r\n  const createUser = useCreateUser();\r\n\r\n  const handleCreateUser = async () => {\r\n    await createUser.mutateAsync({\r\n      name: 'John Doe',\r\n      email: 'john@example.com'\r\n    });\r\n  };\r\n\r\n  if (isLoading) return <div>Loading...</div>;\r\n  if (error) return <div>Error: {error.message}</div>;\r\n\r\n  return (\r\n    <div>\r\n      <h1>Users</h1>\r\n      <button onClick={handleCreateUser}>Add User</button>\r\n      <ul>\r\n        {users?.map(user => (\r\n          <li key={user.id}>{user.name}</li>\r\n        ))}\r\n      </ul>\r\n    </div>\r\n  );\r\n}\r\n```\r\n\r\n### Configuration File (Optional)\r\n\r\nCreate `openapi.config.js` for custom settings:\r\n\r\n```javascript\r\nmodule.exports = {\r\n  input: './openapi.json',\r\n  output: './src/generated',\r\n  generateTypes: true,\r\n  generateClient: true,\r\n  generateHooks: true,\r\n  clientName: 'GeneratedApiClient', // Default changed to avoid naming conflicts\r\n  prettier: true,\r\n};\r\n```\r\n\r\n## 📚 Manual Configuration (Advanced)\r\n\r\nIf you prefer manual setup or need custom configuration:\r\n\r\n### Authentication Configuration\r\n\r\n```typescript\r\nimport { configureAuth } from 'nextjs-django-client';\r\n\r\nconst authConfig = configureAuth({\r\n  loginEndpoint: '/api/auth/login/',\r\n  refreshEndpoint: '/api/auth/refresh/',\r\n  userEndpoint: '/api/auth/user/',\r\n  useEmailAsUsername: true,\r\n  secureTokens: true,\r\n});\r\n```\r\n\r\n### API Client Configuration\r\n\r\n```typescript\r\nimport { createApiClient } from 'nextjs-django-client';\r\n\r\nconst apiClient = createApiClient({\r\n  baseURL: 'https://api.example.com',\r\n  timeout: 30000,\r\n  defaultHeaders: {\r\n    'Content-Type': 'application/json',\r\n  },\r\n  retries: 3,\r\n  retryDelay: 1000,\r\n});\r\n```\r\n\r\n## TypeScript Support\r\n\r\nThe SDK is built with TypeScript-first approach:\r\n\r\n```typescript\r\ninterface CustomUser extends User {\r\n  customField: string;\r\n}\r\n\r\n// Type-safe authentication\r\nconst { user } = useAuth<CustomUser>();\r\n\r\n// Type-safe API calls\r\nconst response = await apiClient.get<CustomUser[]>('/users/');\r\n```\r\n\r\n## 🚀 Production Ready\r\n\r\n### Bundle Optimization\r\n\r\nChoose the right bundle for your needs to minimize bundle size:\r\n\r\n- **Core Bundle** (136 KB): Basic HTTP client, authentication, and OpenAPI generation\r\n- **Advanced Bundle** (171 KB): RBAC, social login, and advanced authentication features\r\n- **Full Bundle** (259 KB): All features included\r\n\r\n### Browser Compatibility\r\n\r\n- ✅ **No Node.js dependencies** in browser bundles\r\n- ✅ **Tree-shakeable** exports for optimal bundle size\r\n- ✅ **ES2022+ target** for modern browsers\r\n- ✅ **Separate CLI bundle** with Node.js dependencies\r\n\r\n## Testing\r\n\r\n```bash\r\n# Run tests\r\nnpm test\r\n\r\n# Run tests with coverage\r\nnpm run test:coverage\r\n\r\n# Run tests in watch mode\r\nnpm run test:watch\r\n```\r\n\r\n## Development\r\n\r\n```bash\r\n# Install dependencies\r\nnpm install\r\n\r\n# Start development build\r\nnpm run dev\r\n\r\n# Run linting\r\nnpm run lint\r\n\r\n# Format code\r\nnpm run format\r\n\r\n# Type checking\r\nnpm run type-check\r\n```\r\n\r\n## Project Structure\r\n\r\n```\r\nsrc/\r\n├── auth/                 # Authentication system\r\n│   ├── providers/        # React context providers\r\n│   ├── hooks/           # Authentication hooks\r\n│   ├── types/           # TypeScript types\r\n│   └── utils/           # Auth utilities\r\n├── client/              # HTTP client\r\n│   ├── http/            # Core HTTP client\r\n│   ├── interceptors/    # Request/response interceptors\r\n│   └── types/           # HTTP client types\r\n├── state/               # State management (coming soon)\r\n├── hooks/               # React hooks\r\n├── utils/               # Utility functions\r\n└── types/               # Global TypeScript types\r\n```\r\n\r\n## Roadmap\r\n\r\n### Sprint 2 (Weeks 3-4)\r\n- JWT auto-refresh mechanism\r\n- Enhanced `useAuth` hook with auto-refresh\r\n- Secure cookie handling improvements\r\n\r\n### Sprint 3 (Weeks 5-6)\r\n- Customizable authentication endpoints\r\n- Role-based access control (RBAC)\r\n- Social login providers\r\n\r\n### Sprint 4 (Weeks 7-8)\r\n- Advanced state management with optimistic updates\r\n- Tag-based cache invalidation\r\n- Batch mutations\r\n\r\n## Contributing\r\n\r\n1. Fork the repository\r\n2. Create a feature branch\r\n3. Make your changes with tests\r\n4. Ensure all tests pass and coverage is maintained\r\n5. Submit a pull request\r\n\r\n## 🚨 Troubleshooting\r\n\r\n### Common Issues and Solutions\r\n\r\n#### 1. CORS Errors\r\n```python\r\n# In your Django settings.py\r\nCORS_ALLOWED_ORIGINS = [\r\n    \"http://localhost:3000\",  # Your Next.js dev server\r\n    \"https://yourdomain.com\",  # Your production domain\r\n]\r\n\r\nCORS_ALLOW_CREDENTIALS = True\r\n```\r\n\r\n#### 2. Authentication Token Issues\r\n```typescript\r\n// Check if token is being sent\r\napiClient.addInterceptor({\r\n  request: (config) => {\r\n    console.log('Headers:', config.headers);\r\n    return config;\r\n  }\r\n});\r\n```\r\n\r\n#### 3. TypeScript Errors with Generated Code\r\n```bash\r\n# Regenerate your API client\r\nnpx nextjs-django-codegen generate -i openapi.json -o src/generated\r\n\r\n# Make sure your OpenAPI schema is valid\r\nnpx nextjs-django-codegen validate -i openapi.json\r\n```\r\n\r\n#### 4. Network Errors in Development\r\n```typescript\r\n// Use the correct Django dev server URL\r\nconst apiClient = createDjangoApiClient('http://127.0.0.1:8000/api');\r\n// Not localhost if you're having issues\r\n```\r\n\r\n### Getting Help\r\n\r\n- 📖 **Documentation**: Check our [full documentation](docs/)\r\n- 🐛 **Bug Reports**: [Open an issue](https://github.com/taqiudeen275/nextjs-django-client/issues)\r\n- 💬 **Questions**: [Start a discussion](https://github.com/taqiudeen275/nextjs-django-client/discussions)\r\n- 📧 **Email**: support@nextjs-django-client.com\r\n\r\n## 🤝 Contributing\r\n\r\nWe love contributions! Here's how you can help:\r\n\r\n1. **Fork the repository**\r\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\r\n3. **Make your changes** and add tests\r\n4. **Run tests**: `npm test`\r\n5. **Submit a pull request**\r\n\r\nSee our [Contributing Guide](CONTRIBUTING.md) for detailed instructions.\r\n\r\n## 📄 License\r\n\r\nMIT License - see [LICENSE](LICENSE) file for details.\r\n\r\n---\r\n\r\n**Made with ❤️ for the Django + Next.js community**\r\n","readmeFilename":"README.md"}