A lightweight Postman-like REST client built with Next.js, featuring authentication, request history, and environment variables.
- 🔒 Authentication with Firebase
- 🌐 Multi-language support (i18n)
- 📝 REST Client with:
- HTTP method selection
- URL input
- Request body editor (JSON/text)
- Headers management
- Response viewer
- Code generation (cURL, Fetch, etc.)
- 📚 Request History stored in localStorage
- 🔧 Environment Variables support
- 🎨 Modern UI with Tailwind CSS and shadcn/ui
- � Full test coverage with Playwright
- Framework: Next.js (App Router)
- Styling: Tailwind CSS + shadcn/ui
- State Management: Zustand
- Authentication: Firebase
- Testing: Playwright
- Internationalization: next-intl
- Node.js 18+
- Firebase project with Authentication enabled
- Git
-
Clone the repository:
git clone https://github.com/noisekov/rest-client-app.git cd rest-client-app -
Install dependencies:
npm install
-
Create a
.envfile in the root directory and add your Firebase config:NEXT_PUBLIC_FIREBASE_API_KEY=your-api-key NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your-project.firebaseapp.com NEXT_PUBLIC_FIREBASE_PROJECT_ID=your-project-id NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your-bucket.appspot.com NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your-sender-id NEXT_PUBLIC_FIREBASE_APP_ID=your-app-id
-
Run the development server:
npm run dev
-
Open http://localhost:3000 in your browser.
dev: Start development serverbuild: Build for productionstart: Start production serverlint: Run ESLintprettier-fix: Format code with Prettiertest: Run Playwright testscoverage: Generate test coverage report
We use Playwright for end-to-end testing. To run tests:
npm run testTo view test coverage:
npm run coverageThe app deployed to Netlify