Skip to content

kruthish18/TECH-BUDDY

Repository files navigation

Review Assignment Due Date

final-project-group-tech-buddy

Team Tech Buddy

  • Rohan Vasudev Ginde - 002646835
  • Rajavi Shah - 002727823
  • Kruthi Shankar Hegde - 002618976
  • Sheetal Pujari - 002619620

TechBuddy

Tech buddy web application is designed to be a social media platform that caters specifically to developers who want to learn, explore, connect and grow with other techies. Users will have access to a range of features including analytics, challenges, quizzes, comments, and more, all designed to help them enhance their skills and knowledge. Our analytics feature will provide developers with real-time data about their performance and progress, allowing them to monitor their growth and identify areas where they need to improve. With our challenges feature, developers can put their skills to the test by completing challenges that are designed to motivate them. Developers can interact with each other through our comments feature, allowing them to share ideas, ask questions, and provide feedback to one another. Our platform will be easy to use, intuitive, and accessible from any device, ensuring that users can learn and grow wherever and whenever they want.

Overall, our goal is to create a vibrant and supportive community of developers who can learn from one another, share their knowledge, and work together to advance their skills and careers.

Screenshots

Blog App Screenshot Login App Screenshot Blog detail App Screenshot Challenges App Screenshot Analytics App Screenshot

Milestones for the Project

Milestone 1 :: Due by March 22, 2023

tb_requirements and design

  1. Finalize Project Topic and technology stack
  2. Design features and Object Model

Milestone 2 :: Due by March 29, 2023

tb_login and setup

  1. Implement Rest Apis and set up the Database.
  2. Design and develop the authentication/login including the front-end.
  3. Complete the main blogging feature where the users can add, edit and delete posts.
  4. User profile implementation with all sub-features.

Milestone 3 :: Due by April 05, 2023

tb_challenges and analyitcs

  1. Develop 'Challenges' feature where users can add new coding challenges.

  2. Solving challenges will increase the user rating.

  3. Any user can add challenges and also solve any challenge.

  4. Users can see the insights and post interactions such as likes, comments, and shares.

Milestone 4 :: Due by April 12, 2023

tb_quiz and bookmarks

  1. Develop a 'Quiz' feature where users can take new quizzes.

  2. Solving the quizzes will increase the user rating.

  3. Users can save the post and bookmark it.

  4. Users can see the insights about the bookmarked post.

User stories under each milestone

Milestone 1 :: tb_requirements and design

User stories

Title - Assignee

  1. Design Object Model - Rohan Ginde
  2. Create and document resources - Rajavi Shah
  3. OpenApi Specification and documentation - Sheetal Pujari
  4. Rest Api Design for main blog feature - Kruthi Hegde
  5. Rest api design for challenges - Rohan Ginde
  6. Rest api design for fetching users - Rajavi Shah
  7. Rest Api design for quiz - Sheetal Pujari
  8. Create milestones and readme update - Kruthi Hegde
  9. Draw Domain driven design on draw.io - Sheetal Pujari
  10. Create user stories - Rohan Ginde
  11. Verify relationship and cardinality - Kruthi Hegde
  12. feasibility check, project scope and tech stack - Rajavi Shah
  13. Readme update for user stories - Kruthi Hegde
  14. Fix object model based on TA suggestions - Rohan Ginde
  15. Brainstorm on Analytics feature - Sheetal Pujari
  16. Rest Api design for bookmark feature - Rajavi Shah

Milestone 2 :: tb_login and setup

User stories

Title - Assignee

  1. Basic node project setup - Rohan Ginde
  2. Basic Database setup - Kruthi Hegde
  3. Setting up the environment and installation for React/Redux(RTK) - Sheetal Pujari
  4. Design wireframe and develop front-end for Login feature - Rohan Ginde
  5. Design wireframe and develop front-end blog feature - Sheetal Pujari
  6. Design wireframe and front-end for user profile - Kruthi Hegde
  7. Implement Rest Apis for user authentication/login - Rajavi Shah
  8. Implement functionalities for adding, editing and deleting posts - Rohan Ginde
  9. State management for Login feature and User profile - Rohan Ginde
  10. TDD(Test driven development)-Unit testing for login feature - Rohan Ginde
  11. TDD (test driven development) Unit testing for User profile - Kruthi Hegde
  12. TDD (Test Driven Development) Unit Testing for blogging feature - Rajavi Shah
  13. Implement Rest Apis for User profile - Sheetal Pujari
  14. Implement Rest Apis for Post feature - Sheetal Pujari
  15. Verify and test all requests on Postman - Rohan Ginde
  16. Code documentation and code quality - Kruthi Hegde
  17. Implement services for User Profile - Rajavi Shah
  18. Implement services for login feature - Kruthi Hegde
  19. CSS(Sass) styling for login - Sheetal Pujari
  20. CSS styling for user profile - Kruthi Hegde
  21. Git flow and source configuration - Rohan Ginde
  22. DB management and admin for User profile - Rajavi Shah

Milestone 3 :: tb_challenges and analytics

User stories

Title - Assignee

  1. Develop front-end for Challenges feature - Rohan Ginde
  2. State management for challenges feature - Rohan Ginde
  3. Verify and test all endpoints POSTMAN - Rohan Ginde
  4. Test Driven Development (TDD) challenges feature - Rohan Ginde
  5. Build Rest Api for challenges feature - Sheetal Pujari
  6. Design UI and Wireframe for challenges - Sheetal Pujari
  7. Develop backend services for challenge feature - Sheetal Pujari
  8. Update Mongodb for challenges feature - Sheetal Pujari
  9. Test endpoints on Postman for analytics - Kruthi Hegde
  10. Develop frontend for Analytics feature - Kruthi Hegde
  11. Test Driven Development -Analytics feature - Rajavi Shah
  12. State management for analytics - Kruthi Hegde
  13. Design UI and wireframe for analytics - Rajavi Shah
  14. Build REST Api rest for analytics - Rajavi Shah
  15. Update MongoDB for analytics - Kruthi Hegde
  16. Develop backend services for analytics - Rajavi Shah

Milestone 4 :: tb_quiz and bookmarks

User stories

Title - Assignee

  1. Build Rest Api for bookmarks feature - Sheetal Pujari
  2. Design UI for bookmark feature - Sheetal Pujari
  3. State management for bookmarks - Sheetal Pujari
  4. Update Mongodb for bookmarks - Rohan Ginde
  5. Develop backend services for bookmarks feature - Kruthi Hegde
  6. Test Driven Development for bookmarks feature - Sheetal Pujari
  7. Verify and test all endpoints Postman for bookmarks - Rohan Ginde
  8. Populate and consume Quiz data - Rohan Ginde
  9. Build quiz game - Kruthi Hegde
  10. Reflect Quiz data in database - Rohan Ginde
  11. Deep testing TDD all components - Rajavi Shah
  12. Acceptance testing for entire project - Rajavi Shah
  13. Code quality and documentation for new features - Kruthi Hegde
  14. State management for quiz - Rohan Ginde
  15. Code reviews and enhancements - Rajavi Shah
  16. Project Video editing and development- Sheetal Pujari

REST API resources required for the project user stories.

For Developers

GET /developers - Retrieve a list of all developers

GET /developers?developername=johndoe

POST /developers - Create a new developer

GET /developers/{developerId} - Retrieve a specific developer by ID

PUT /developers/{developerId} - Update a specific developer by ID

DELETE /developers/{developerId} - Delete a specific developer by ID

For Posts

GET /posts - Get all posts

GET /posts/{postId} - Get a specific post

POST /posts - Create a new post

PUT /posts/{postId} - Update an existing post

DELETE /posts/{postId} - Delete a post

POST /posts/{postId}/likes - Update Like

DELETE /posts/{postId}/likes - Delete Like

POST /posts/{postId}/comments - Update Comment

DELETE /posts/{postId}/comments - Delete Comment

POST /posts/{postId}/shares - Update Share

DELETE /posts/{postId}/shares - Delete Share

For Bookmarks

GET /bookmarks - This endpoint retrieves all the bookmarks in the system.

GET /bookmarks/{bookmarkId} - This endpoint retrieves a specific bookmark by its ID.

POST /bookmarks - This endpoint creates a new bookmark in the system.

DELETE /bookmarks/{bookmarkId} - This endpoint deletes a bookmark by its ID.

GET /bookmarks/search?q={query} - This endpoint searches for bookmarks based on a query string.

For Analytics

GET /analytics/{developerId} - Get the analytics

For Challenges

GET /challenges - Retrieve a list of all challenges

POST /challenges - Create a new challenge

GET /challenges/{challengeId} - Retrieve a specific challenge by ID

DELETE /challenges/{challengeId} - Delete a specific challenge by ID

PUT /challenges/{challangesId} - Update the challenge

For Submissions

GET /submissions/{developerId} - Get all submissions by particular Author

GET /submissions/{developerId} - Get all submissions of developer

TECHBUDDYTDD

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published