Hamgerd is a modern web application built with TypeScript, designed for speed, modularity, and developer happiness.
Visit the live site: hamgerd.ir
- Node.js (v18+ recommended)
- pnpm (install globally with
npm i -g pnpm) - Docker (optional, for containerization)
pnpm installpnpm run devVisit http://localhost:3000 in your browser.
pnpm run build
pnpm startdocker-compose up --build- Copy
.env.exampleto.envand configure your environment variables. - See
docker-compose.ymlandDockerfilefor container setup.
/
├── app/ # Main application source
├── components/ # components of code
├── const/ # Constants and shared config
├── hooks/ # Custom React hooks
├── lib/ # Utility libraries
├── models/ # TypeScript models and interfaces
├── public/ # Static assets
├── tests/ # Test files
├── validator/ # Input validation logic
├── Dockerfile
├── docker-compose.yml
├── package.json
└── ...
Run unit and integration tests:
pnpm run testEnd-to-end tests with Playwright:
pnpm exec playwright testPull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
- Fork the repo
- Create your feature branch (
git checkout -b feat/awesome-feature) - Commit your changes (
git commit -m 'Add awesome feature') - Push to the branch (
git push origin feat/awesome-feature) - Open a Pull Request