Skip to content

Latest commit

 

History

History
147 lines (114 loc) · 4.29 KB

CONTRIBUTING.md

File metadata and controls

147 lines (114 loc) · 4.29 KB

Contributing to BytePing

Contributions are what makes the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  • Before jumping into a PR be sure to search existing PRs or issues for an open or closed item that relates to your submission.

Priorities

Type of Issue Priority
Core Bugs (Login not working)
Core Features (Add voice recorder)
Confusing UX (... but working)
Minor improvements, non-core feature requests

Local Setup for Development

The development branch is main. This is the branch that all pull requests should be made against.

  1. Fork this repository to your own GitHub account and then clone it to your local device.

    git clone https://github.com/arjunan-k/byteping.git
  2. Create a new branch: Follow conventional commits while creating branches and commiting.

    git checkout -b BRANCH_NAME

    Branch names

    - feat(authentication): implement OAuth2 login
    - fix(login): resolve login button not working
    - docs(readme): update installation instructions
    - style(formatting): fix indentation in main.js
    - refactor(user-service): optimize database queries
    - test(user-api): add unit tests for user validation
    - chore(build): update dependencies to latest versions
  3. npm Install:

    npm install
  4. Set up your .env file: Duplicate .env.local to .env

    - Use `openssl rand -base64 32` to generate a key and add it under `NEXTAUTH_SECRET` in the `.env` file.
    - Use `openssl rand -base64 24` to generate a key and add it under `CALENDSO_ENCRYPTION_KEY` in the `.env` file.
  5. Start developing and watch for code changes:

    npm run dev

Building

You can build the project with:

npm run build

Please be sure that you can make a full production build before pushing code.

Testing

More info on how to add new tests coming soon.

Running tests

This will run and test all flows in multiple Chromium windows to verify that no critical flow breaks:

npm run test

Linting

To check the formatting of your code:

npm lint

If you get errors, be sure to fix them before committing.

Making a Pull Request