Skip to content

Latest commit

 

History

History
92 lines (61 loc) · 5.14 KB

CONTRIBUTING.md

File metadata and controls

92 lines (61 loc) · 5.14 KB

Contribution Guidelines

When contributing to PujoAtlasKol-Web, whether on GitHub or in other community spaces:

  • Be respectful, civil, and open-minded.
  • Before opening a new pull request, try searching through the issue tracker for known issues or fixes.
  • If you want to make code changes based on your personal opinion(s), make sure you open an issue first describing the changes you want to make, and open a pull request only when your suggestions get approved by maintainers.

How to Contribute

Prerequisites

In order to not waste your time implementing a change that has already been declined, or is generally not needed, start by opening an issue describing the problem you would like to solve.

Recommended VSCode Extensions

To ensure a consistent development environment and code quality, please install the following VSCode extensions before contributing:

  1. Astro VSCode Extension: Provides support for Astro framework with syntax highlighting, snippets, and more.
  2. Prettier - Code Formatter: Automatically formats your code according to our project's style guide.
  3. ESLint: Lints JavaScript/TypeScript code to catch common errors and enforce coding standards.
  4. Tailwind CSS IntelliSense: Offers utilities for working with Tailwind CSS, including autocompletion and linting.
  5. GitLens: Enhances Git capabilities within VSCode with advanced visualization tools and features.
  6. TypeScript Next: Provides access to the latest TypeScript features and updates.
  7. PostCSS Language Support: Adds syntax highlighting and linting for PostCSS files.
  8. ES7+ React/Redux/React-Native snippets: A collection of useful snippets for React and Redux development.

Setup your environment locally

Some commands will assume you have the Github CLI installed, if you haven't, consider installing it, but you can always use the Web UI if you prefer that instead.

In order to contribute to this project, you will need to fork the repository:

gh repo fork Pujo-Atlas-Kolkata/PujoAtlasKol-Web

then, clone it to your local machine:

gh repo clone <your-github-name>/PujoAtlasKol-Web

This project uses npm as its package manager. Install it if you haven't already.

Then, install the Project's Dependencies:

npm install

Setup your Husky Environment:

npm run prepare

Start the Local Developement Server:

npm run dev

Implement your changes

Now you're all setup and can start implementing your changes. Here are some useful scripts for when you are developing:

Command Description
npm run dev Starts the development server for the site
npm run build Builds the Astro project
npm run format Formats the code
npm run format:check Checks formatting of the code
npm run lint Checks Lint issues
npm run lint:fix Lints the code and fixes any errors
npm run prepare Setup the Husky environment for pre-commit hooks

When making commits, make sure to follow the conventional commit guidelines, i.e. prepending the message with feat:, fix:, chore:, docs:. You can use git status to double check which files have not yet been staged for commit:

git add <file> && git commit -m "feat/fix/chore/docs: commit message"

Please keep in mind that you will not be able to push commits if you're not following the conventional commit guidelines or Lint check is failing.

When you're done

When you're done implementing your changes, please also make a manual, functional test of your changes. When all that's done, it's time to file a pull request to upstream, and fill out the title and body appropriately. Again, make sure to follow the conventional commit guidelines for your title.

Community

For help, discussion about best practices, or any other conversation that would benefit this project: Join the Pujo Atlas Discord Server.