This repository contains a microservices architecture project with Laravel serving as the backend API, admin panel and Next.js for the frontend. It's designed to build a maintainable web applications for PT. Neuronworks Indonesia.
The repository is organized as follows:
backend/: Contains the Laravel backend application.frontend/: Contains the Next.js frontend application.(...rest): Add any additional microservices or components you require as subdirectories.
Follow these instructions to get the project up and running on your local machine.
Before you begin, ensure you have the following installed:
-
Clone the repository:
git clone https://git.neuron.id/products/website-neuron.git cd website-neuron -
Set up the Laravel backend:
- Download the Google Analytic (GA) Credentials json in your Google Api & Services Credentials. Create Credentials with OAuth client ID, after that you can download the credentials
- Navigate to the backend/ directory.
- Place the GA Credentials json in app/analytics
- Copy the .env.example file to .env and configure your database settings and other environment variables like GAnalytics Property id, GA Credentials json name, and mail.
- Run the following commands:
composer install php artisan key:generate php artisan migrate php artisan db:seed <!--Optional if you want data dummy--> php artisan serve
- Set up the Next.js frontend:
-
Navigate to the frontend/ directory.
-
Install dependencies and start the development server:
npm install npm run dev
- Access the Application:
- The Laravel backend should be running at http://localhost:8000.
- The Next.js frontend should be running at http://localhost:3000.
- Invite team members and collaborators
- Create a new merge request
- Automatically close issues from merge requests
- Enable merge request approvals
- Automatically merge when pipeline succeeds
Use the built-in continuous integration in GitLab.
- Get started with GitLab CI/CD
- Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)
- Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy
- Use pull-based deployments for improved Kubernetes management
- Set up protected environments
You can start developing your microservices and frontend components. Customize and extend the project as needed for your specific requirements.
Laravel Next.js Feel free to add any additional sections or details as needed for your specific project. Happy coding!