You have been provided with a starter project that includes user authentication using Node.js, React.js, and MongoDB. Your task is to extend this application by implementing CRUD (Create, Read, Update, Delete) operations for a real-world application of your choice, while following industry best practices such as:
- Project Management with JIRA
- Requirement Diagram using SysML
- Version Control using GitHub
- CI/CD Integration for Automated Deployment
Select a meaningful use case for your CRUD operations. We will provide the list, you have to select it.
- Create a JIRA project and define:
- Epic
- User Stories (features required in your app)
- Child issues & Subtasks (breaking down development work)
- Sprint Planning (organizing work into milestones)
- Document your JIRA board URL in the project README.
- Draw a requirements diagram
- Create a user-friendly interface to interact with your API (Some portion developed, follow task manager app)).
- Implement forms for adding and updating records.
- Display data using tables, cards, or lists (Follow how we showed data in task manager app)
- Create a user-friendly interface to interact with your API (Some portion developed, follow task manager app).
- Implement forms for adding, showing, deleting and updating records (CRUD).
- Display data using tables, cards, or lists (Follow how we showed data in task manager app)
- Ensure only authenticated users can access and perform CRUD operations. (Already developed in your project)
- Use JWT (JSON Web Tokens) for user authentication (Use the task manager one from .env file).
- Use GitHub for version control and maintain:
main
branch (stable production-ready code)- Feature branches (
feature/xyz
) for each new functionality
- Follow proper commit messages and pull request (PR) reviews .
- Implement a CI/CD pipeline using GitHub Actions to:
- Automatically run tests on every commit/pull request (Optional).
- Deploy the backend to AWS .
- Deploy the frontend to AWS.
- Document your CI/CD workflow in the README .
-
JIRA Project Board URL (user stories ).
-
Requirment diagram (Using project features)
-
GitHub Repository (
backend/
andfrontend/
). -
README.md with:
- Project setup instructions.
- CI/CD pipeline details.