Thank you for your interest in contributing to our project! This guide will help you get started with the necessary steps to set up your development environment, understand our workflow, and start contributing.
- Project Documentation for New Contributors
Before you begin, ensure you have the following tools installed:
- Node.js (v18 or higher)
- npm
- Serverless Framework CLI (v4 or higher)
- Git
- GitHub Account
-
Fork the Repository: Fork the project repository to your GitHub account.
-
Clone the Repository: Clone your forked repository to your local machine.
git clone https://github.com/your-username/e-get-why.git cd e-get-why
-
Install Frontend Dependencies: Navigate to the frontend directory and install the dependencies.
cd frontend npm install
-
Install Backend Dependencies: Navigate to the backend directory and install the dependencies.
cd ../backend npm install
We use the following branches:
development
: Active development branch.production
: Stable production branch.
We maintain feature branches for ongoing development of new features. Contributors are encouraged to work on these branches for specific features or create a new feature branch.
- User Registration and Authentication:
feature/user-authentication
feature/user-registration
- Story Submission:
feature/story-submission
feature/add-story
- Story Feed:
feature/story-feed
feature/story-list
- Upvote Feature:
feature/story-upvote
feature/add-upvote
- Categories for Stories:
feature/story-categories
feature/add-categories
- User Profile:
feature/user-profile
feature/profile-page
- Search Functionality:
feature/search
feature/story-search
- Notifications:
feature/notifications
feature/user-notifications
- Website Design:
feature/website-theme
feature/website-design
feature/homepage-design
- Homepage Features:
feature/homepage
feature/homepage-banner
feature/homepage-layout
To work on a feature branch, follow these steps:
-
Switch to the Feature Branch:
git checkout feature/new-feature-name git pull origin feature/new-feature-name
-
Make Your Changes: Implement your feature or fix.
-
Commit Changes: Commit your changes with a meaningful commit message.
git add . git commit -m "Implement part of new feature: description of changes"
-
Push Changes: Push your branch to your forked repository.
git push origin feature/new-feature-name
-
Submit Pull Request: Open a pull request to merge your changes back into the feature branch.
Before submitting your changes, ensure all tests pass.
Follow the setup instructions in the main README to build and run the project locally.
We use GitHub Actions for CI/CD. Pushing changes to the development
branch triggers builds and deployments to the development environment. Pushing to the production
branch triggers deployments to the production environment.
- Submit Pull Request: Open a pull request to merge your feature branch into
development
. - Review Process: Your pull request will be reviewed by other contributors. Make necessary changes if requested.
- Merge: Once approved, your pull request will be merged into
development
.
Please read and follow our Code of Conduct.
If you have any questions or need assistance, please reach out via our issue tracker or contact the maintainers.
Thank you for contributing! We appreciate your efforts in making this project better. Happy coding! 🚀