Welcome to the official repository for Datagovmy, a comprehensive monorepo project meticulously crafted to enhance the development, management, and deployment of a suite of projects that power Malaysian government data initiatives.
At Datagovmy, our mission is to transform data into actionable insights, and this monorepo is the central hub for displaying the our data. Our projects span a wide range of applications and packages, each playing a vital role in advancing data accessibility and utilization. Explore our projects below:
We embrace collaboration and innovation, and we invite contributions from the open-source community. Whether you want to report a bug, request a new feature, or actively contribute to our projects, your input is invaluable in our mission to make data more accessible and impactful.
Join us in shaping the future of data at Datagovmy!
This monorepo project is efficiently managed and organized using TurboRepo, a powerful tool that streamlines the development workflow for large-scale projects. TurboRepo simplifies the management of multiple projects and packages within a single repository, ensuring smooth collaboration, dependency management, and deployment processes.
Installation: Ensure you have TurboRepo installed locally. You can install it globally or use it as a project dependency.
npm install -g @turbo/turbo
Configuration: This project has been configured with turborepo to manage workspaces, project dependencies. Find the configuration at root path in turbo.json
Development Workflow: With TurboRepo in place, you can easily run commands like turbo dev
, turbo build
, and turbo test
to manage your projects within the monorepo efficiently.
Publishing: TurboRepo offers a streamlined publishing process, making it straightforward to release new versions of your projects.
Learn more about turborepo by visiting its official docs Turborepo.
We recommend to use yarn
to manage the project's dependencies.
git clone [email protected]:data-gov-my/datagovmy-front.git
# Yarn
yarn install
yarn prepare
# NPM
npm install
npx prepare
cp .env.example .env
# Start development server
yarn dev
# Start development server for specific workspace
yarn dev --filter=app
# Build production app
yarn build
# Build production app for specific workspace
yarn build --filter=app
# Start production server
yarn start
# Setup husky for githook
yarn prepare
- Branch out from
staging
& give the new branch a descriptive name eg:feat/covid
,fix/dropdown-bug
etc. - After you're done developing,
git fetch && git merge origin/staging
to synchronize any new changes & resolve conflicts, if there is any. - Push the branch to remote and create a PR to
staging
. Briefly describe the changes introduced in the PR. - Assign a core developer to review and wait for it to be approved.
- That's all. Happy developing!
Thank you for your willingness to contribute to this free and open source project by the Malaysian public sector! When contributing, consider first discussing your desired change with the core team via GitHub issues or discussions!
Issues are very valuable to this project and we appreciate the time you take with the repository.
If you have anything specific and project-related to this repository, feel free to create an issue ticket.
- Ideas are a valuable source of contributions others can make
- Problems show where this project is lacking
- With a question you show where contributors can improve the user experience
Thank you for creating them.
data.gov.my is licensed under MIT
Copyright © 2023 Government of Malaysia