This project contains the frontend codebase for CorsairOps, a microservices-based application. The frontend is built using modern web technologies to provide a responsive and user-friendly interface for interacting with the backend services.
- Responsive Design: The frontend is designed to be responsive and works well on various devices, including Desktops, Tablets, and Mobile Phones.
- User Authentication: Integration with backend services for user authentication and authorization.
- Dashboard: A comprehensive dashboard to monitor and manage various aspects of the application.
- Easy Navigation: Intuitive navigation structure for seamless user experience.
- API Integration: Communicates with backend microservices via RESTful APIs.
- State Management: Utilizes state management libraries for efficient data handling.
- Component-Based Architecture: Built using reusable components for better maintainability.
- Next.js
- React
- TypeScript
- Tailwind CSS
- Axios
- Material-UI
- Orval
- React Query
- React Hook Form
- Zod
- NextAuth
To get started with the frontend project, follow these steps:
- Clone the repository:
git clone- Navigate to the frontend directory:
cd frontend- Install dependencies:
npm install- Start the development server:
npm run dev- Open your browser and navigate to
http://localhost:3000to view the application.
NEXTAUTH_SECRET=
NEXT_PUBLIC_API_BASE_URL=
KEYCLOAK_CLIENT_ID=
KEYCLOAK_CLIENT_SECRET=
KEYCLOAK_ISSUER=
NEXT_PUBLIC_KEYCLOAK_LOGOUT_URL=
NEXT_PUBLIC_MAPBOX_TOKEN=
This project uses Orval to generate API clients from OpenAPI specifications. The generated clients for services are
located within the src/lib/api/services directory. To regenerate the API clients after updating the OpenAPI specs, run
the following command:
npm run generate-apiAPI specifications are stored in the openapi directory. To add or update an API specification, place the OpenAPI YAML
or JSON file in this directory and update the Orval configuration accordingly. To add a new service, follow these steps:
- Add the OpenAPI specification file for the new service in the
openapidirectory - Update the Orval configuration file (
orval.config.jsor similar) to include the new service specification. - Run the API generation command:
npm run generate-api