Moved useAuthStore from utils to service to break circular dependency: - utils was importing from service (supabase client, types) - service was importing from utils (useAuthStore) - Solution: moved useAuthStore and related storage utilities to service Changes: - Created libs/service/src/storage/ with cookies.ts and local-storage.ts - Moved use-auth-store.ts from utils/hooks to service/hooks/auth - Updated all 20+ files to import useAuthStore from service instead of utils - Removed useAuthStore export from utils - Added storage exports to service index This fixes the build error: "Could not execute command because the task graph has a circular dependency" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
IMPHNEN Frontend Service
This repository is a monorepo for all frontend services of IMPHNEN. The monorepo includes three main applications:
- Gacha - Application for Gacha Website.
- Backoffice - Application for Internal Management Website.
- Dimentorin - Application for Mentoring Service.
- Landing Page - Application for Landing Page.
How to install
- Clone this repository:
git clone https://github.com/IMPHNEN/imphnen-frontend-service.git cd imphnen-frontend-service - Install all dependencies:
npm install
How to run
Setup Environment Variables
Before running the applications, you need to set up the environment variables. You can do this by copying the .env.example file to .env and modifying the values according to your needs.
cd apps/{appname}
cp .env.example .env
Development
Use the following commands to run in development mode:
- Gacha:
npm run gacha:dev - Backoffice:
npm run backoffice:dev - Dimentorin:
npm run dimentorin:dev - Landing Page:
npm run landing:dev
Build
Use the following commands to build the applications:
- Gacha:
npm run gacha:build - Backoffice:
npm run backoffice:build - Dimentorin:
npm run dimentorin:build - Landing Page:
npm run landing:build
Production
Use the following commands to run the applications in production mode:
- Gacha:
npm run gacha:prod - Backoffice:
npm run backoffice:prod - Dimentorin:
npm run dimentorin:prod - Landing Page:
npm run landing:prod
Storybook
This repository uses Storybook to develop, test, and document UI components in an isolated and interactive environment. Below are the commands to work with Storybook:
-
Run Storybook
This command starts Storybook in development mode, allowing you to view and test UI components interactively.
npm run ui:storybook -
Run Unit Test
This command runs unit tests for the UI components to ensure they function as expected.
npm run ui:test -
Build Components
This command generates a static build of Storybook, which can be deployed for sharing and documentation purposes.
npm run ui:build
How to contribute
- Fork the repository and clone it locally.
- Create a new branch for a new feature or fix:
git checkout -b feat/feature-name - Make changes, commit, and push to your forked repository.
- Create a pull request to this repository
developbranch.
If you encounter any issues or problems, feel free to create a new Issue.