Welcome! We're excited that you're interested in contributing to Daccotta, a social network for movie lovers. Whether you're here to improve the frontend or work on the entire project, your contributions are invaluable to us. Please read through this guide before making any contributions to ensure a smooth and efficient workflow.
Before contributing, please ensure that you adhere to our Code of Conduct to foster a positive and inclusive environment.
You have two ways to contribute:
If you wish to contribute only to the frontend, you don't need to set up Firebase or MongoDB.
- Pull the latest changes from the
dev
branch:git pull origin dev
- Firebase Configuration:
Enter the Firebase config infirebase.ts
provided by us , its a test account. - API URL Configuration:
Set the backend URL in your environment file:VITE_API_BASE_URL= https://mock-backend-32tp.onrender.com
- Install dependencies and run the frontend:
Follow the steps in the README to install dependencies and run the frontend.
For full project contribution, you need to set up both the frontend and backend. for detailed guide refer to README.
- Pull the latest changes from the
dev
branch:git pull origin dev
- Set up Firebase:
- Create a Firebase project and retrieve the Firebase config.
- Add the config to
firebaseConfig.ts
.
- Set up MongoDB:
- Create an account on MongoDB Atlas.
- Set up your cluster and database.
- Add your MongoDB connection string to the environment variables:
MONGO_URL=mongodb+srv://<username>:<password>@cluster0.mongodb.net/daccotta?retryWrites=true&w=majority
- Install dependencies:
Follow the steps in the README for both frontend and backend setup.
Please follow the branching strategy to maintain consistency:
- Working on an existing issue:
- Ensure the issue is assigned to you before starting work.
- Pull the latest
dev
branch. - Create a new branch with the issue number in the format
issue/issue-number-description
, for example:git checkout -b issue/42-fix-login
- Creating a new feature:
- Pull the latest
dev
branch. - Create a branch with the feature name in the format
feat/feature-name
, for example:git checkout -b feat/group-creation
- Pull the latest
To ensure smooth collaboration, please follow these guidelines when submitting a Pull Request (PR):
- PR Title: Use a clear and concise title.
E.g.,Fix login authentication issue
orAdd group creation feature
. - Description: Provide a detailed description of what your PR does. Link to the related issue if applicable.
- PR Reviews: At least one reviewer must approve your PR before it is merged.
- Passing CI Checks: Ensure that all Continuous Integration (CI) checks pass before requesting a review.
- Merge Target: Always target the
dev
branch for your PRs.
- Before starting work on an issue, ensure it’s assigned to you. If an issue is not assigned, leave a comment expressing your interest, and wait for it to be assigned.
- If you want to propose a new feature or enhancement, feel free to open a new issue with the tag
enhancement
.
To maintain code consistency across the project, please adhere to the following:
Run the lint checks before pushing your changes:
npm run lint
For detailed setup instructions, please refer to our README.
- Install dependencies using Bun.
- Set environment variables for Firebase and API endpoints.
- Install Bun and dependencies.
- Configure MongoDB and Firebase settings in your
.env
file.
For more details, check out the README.
If you have any questions or need further assistance, feel free to:
- Open a new issue.
- Join our community discussion by leaving a comment in our issues or PRs.
Thank you for contributing to Daccotta! We appreciate your time and efforts to make this platform even better for movie lovers around the world. 🎥🍿