Giter VIP home page Giter VIP logo

intellectia's Introduction

Hi there, I'm Prasenjeet Symon! ๐Ÿ‘‹

About Me

During my first year, I began developing my childhood dream project named Sculify, a school management platform. It was a SaaS software designed for both small and large schools. Similar to Shopify, but tailored for schools, I served as the CTO and Founder alongside five team members. My responsibilities extended beyond the technical aspects to include marketing and direct sales, coordinating with over 100 field agents of Sculify. Ultimately, I sold Sculify and chose to freelance for several years to broaden my experience across various projects and technologies.

Interests

  • โค๏ธ Love open-source
  • ๐ŸŒ Travelling
  • ๐Ÿ“š Learning new technology
  • ๐Ÿ› ๏ธ Improving my management skills

Skills

  • UI/UX
  • Full-stack Engineer
  • Mobile Development
  • Database Architect
  • System Design
  • DevOps

Programming Languages

  • JavaScript
  • TypeScript
  • Go
  • Rust
  • Dart
  • SQL
  • Python
  • PHP
  • Java
  • C++
  • Ruby

Frameworks

  • Angular
  • Express.js
  • ReactJS
  • Vue.js
  • Flutter
  • SolidJS
  • Capacitor
  • Ionic
  • React Native

Your GitHub stats


Feel free to reach out to me! I'm always open to collaborating on interesting projects and learning new things.

LinkedIn Email

intellectia's People

Contributors

avelynhc avatar codensity30 avatar dustydogcodex avatar gagan-28deep avatar jatin-tec avatar jobayer12 avatar khamkarsuraj avatar krriishhhhhh avatar lokjaw avatar michaelhhogue avatar mixamum avatar nugget-56 avatar patilanuja avatar prasenjeet-symon avatar pravesh-sudha avatar rachit1313 avatar rhythm-08 avatar rishikeshk07 avatar rupeshghosh10 avatar sabbellasri avatar sandheep45 avatar sarveshk76 avatar sparsh-viamagus avatar syphonphilter avatar takuabonn avatar tfalcongreen avatar userunknownn avatar virtual4087 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

intellectia's Issues

Implement /login endpoint for user authentication

Title: Implement /login endpoint for user authentication

Description:

As a user, I want to be able to log in to the application using my email and password, so that I can access the features and functionalities of the app.

Acceptance Criteria:

  • The /login endpoint should accept a POST request with a JSON object containing email and password fields as the request body.
  • The endpoint should validate the input data and check if the email and password match with any existing user in the database.
  • If the login is successful, the endpoint should generate a JWT token and send it back to the client as a response header or cookie.
  • If the login fails, the endpoint should return an appropriate error message and status code.

Add API Route to Dislike an Article

GitHub Issue: Add API Route to Dislike an Article

Objective: Develop an API route that allows users to dislike an article in our application.

Description:

Tasks:

  1. Create API Route for Disliking an Article:

    • Develop a new API route, e.g., /api/user/article/:id/dislike, to enable users to dislike an article by providing the article ID.
    • Implement the necessary logic to record the user's dislike for the article.
  2. Validation:

    • Implement validation to ensure that the provided article ID and user information are valid before recording the dislike.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to record the user's dislike for the article.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful disliking of the article and any potential errors.

Acceptance Criteria:

  • Users can dislike an article by providing the article ID using the /api/user/article/:id/dislike route.
  • Validation is in place to ensure the provided article ID and user information are valid.
  • The API successfully records the user's dislike for the article.
  • Proper error handling is in place for any issues during the disliking of the article.

Add API Route to Get User's Articles with Pagination

GitHub Issue: Add API Route to Get User's Articles with Pagination

Objective: Develop an API route that allows users to retrieve their articles with pagination based on a specified status in our application.

Description:

Tasks:

  1. Create API Route for Getting User's Articles with Pagination:

    • Develop a new API route, e.g., /api/user/articles/:status/:size/:cursor, to enable users to fetch and return their articles based on the specified status with pagination.
    • Implement the necessary logic to retrieve the user's articles with the given status, page size (size), and cursor for pagination.
  2. Validation:

    • Implement validation to ensure that the provided status is valid and corresponds to article statuses used in the application.
    • Validate the size and cursor parameters to ensure they are within appropriate limits.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch a paginated list of articles of the user with the specified status.
  4. Pagination:

    • Implement pagination to handle large datasets of articles effectively. Allow users to specify the page size (size) and provide a cursor for paginating through the articles.
  5. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of articles and any potential errors.

Acceptance Criteria:

  • Users can retrieve their articles based on a specified status with pagination using the /api/user/articles/:status/:size/:cursor route.
  • Validation is in place to ensure the provided status, size, and cursor are valid.
  • The API fetches and returns a paginated list of articles of the user with the specified status.
  • Pagination is implemented to handle large article datasets effectively.
  • Proper error handling is in place for any issues during article retrieval.

Create Logout API Route

GitHub Issue: Create Logout API Route

Issue Description:

Objective: Implement a Logout API route to allow users to log out of their accounts via our application's API.

Issue Scope:

This issue focuses on developing the Logout API route.

Tasks:

  1. Create Logout API Route:

    • Develop a new API route for user logout, e.g., /api/auth/logout.
    • Implement the necessary logic to log the user out, including clearing session data or revoking tokens.
  2. User Experience:

    • Ensure a user-friendly response indicating a successful logout.
    • Handle and respond to any potential errors or issues that may arise during the logout process.
  3. API Documentation:

    • Update our API documentation to include information about the new Logout route.
    • Provide clear instructions for developers on how to use this API endpoint.

Acceptance Criteria:

  • Users can successfully log out of their accounts using the /api/auth/logout route.
  • The logout process should be user-friendly and responsive.
  • Proper error handling is in place for any potential issues during logout.

Add API Route to Follow a User

GitHub Issue: Add API Route to Follow a User

Objective: Develop an API route that allows users to follow another user in our application.

Description:

Tasks:

  1. Create API Route for Following a User:

    • Develop a new API route, e.g., /api/user/follow/:id, to enable users to follow another user by providing the user ID.
    • Implement the necessary logic to establish the follow relationship between the current user and the target user.
  2. Validation:

    • Implement validation to ensure that the provided user ID is valid and corresponds to an existing user.
    • Check if the user is not already following the target user to prevent duplicate follows.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to record the follow relationship between the current user and the target user.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful follow action and any potential errors.

Acceptance Criteria:

  • Users can follow another user by providing the target user's ID using the /api/user/follow/:id route.
  • Validation is in place to ensure the provided user ID is valid and that the user is not already following the target user.
  • The API successfully records the follow relationship between the current user and the target user in the database.
  • Proper error handling is in place for any issues during the follow action.

Add API Route to Retrieve Single Article Series by ID

GitHub Issue: Add API Route to Retrieve Single Article Series by ID

Objective: Develop an API route that allows users to retrieve a single article series by its unique ID in our application.

Description:

Tasks:

  1. Create API Route to Get Single Article Series:

    • Develop a new API route, e.g., /api/article-series/:seriesId, to allow users to fetch a single article series by its ID.
    • Implement the necessary logic to retrieve and format the article series data based on the provided ID.
  2. Validation:

    • Implement validation to verify that the provided article series ID is valid before proceeding with retrieval.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch the article series data based on the provided ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article series retrieval and any potential errors.

Acceptance Criteria:

  • Users can retrieve a single article series by its unique ID using the /api/article-series/:seriesId route.
  • Validation is in place to ensure the provided article series ID is valid.
  • The API fetches and returns the article series data based on the provided ID.
  • Proper error handling is in place for any issues during article series retrieval.

Add API Route to Get Likes/Dislikes of an Article with Pagination

GitHub Issue: Add API Route to Get Likes/Dislikes of an Article with Pagination

Objective: Develop an API route that allows users to retrieve the likes or dislikes of a specific article with pagination in our application.

Description:

Tasks:

  1. Create API Route for Getting Likes/Dislikes of an Article:

    • Develop a new API route, e.g., /api/user/article/:id/likes/:status/:size/:cursor, to enable users to fetch and return the likes or dislikes of a specific article with pagination.
    • Implement the necessary logic to retrieve the likes or dislikes based on the article ID, status (e.g., "liked" or "disliked"), page size (size), and cursor for pagination.
  2. Validation:

    • Implement validation to ensure that the provided article ID, status, size, and cursor parameters are valid.
    • Verify that the article with the provided ID exists.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch a paginated list of likes or dislikes for the specified article.
  4. Pagination:

    • Implement pagination to handle large datasets of likes or dislikes effectively. Allow users to specify the page size (size) and provide a cursor for paginating through the likes or dislikes.
  5. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of likes or dislikes and any potential errors.

Acceptance Criteria:

  • Users can retrieve the likes or dislikes of a specific article with pagination based on the provided article ID, status, page size (size), and cursor using the /api/user/article/:id/likes/:status/:size/:cursor route.
  • Validation is in place to ensure the provided article ID, status, size, and cursor are valid, and the article exists.
  • The API fetches and returns a paginated list of likes or dislikes for the specified article.
  • Pagination is implemented to handle large like or dislike datasets effectively.
  • Proper error handling is in place for any issues during like or dislike retrieval.

Add API Route to Remove Article from "Read Later" List

GitHub Issue: Add API Route to Remove Article from "Read Later" List

Objective: Develop an API route that allows users to remove an article from their "Read Later" list in our application.

Description:

Tasks:

  1. Create API Route for Removing Article from "Read Later" List:

    • Develop a new API route, e.g., /api/user/read_later/:id, to enable users to remove an article from their "Read Later" list by providing the article ID.
    • Implement the necessary logic to disassociate the article from the user's "Read Later" list.
  2. Validation:

    • Implement validation to ensure that the provided article ID and user information are valid before removing the article from the list.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to remove the association between the user and the article in the "Read Later" list.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful removal of the article from the "Read Later" list and any potential errors.

Acceptance Criteria:

  • Users can remove an article from their "Read Later" list by providing the article ID using the /api/user/read_later/:id route.
  • Validation is in place to ensure the provided article ID and user information are valid.
  • The API successfully disassociates the article from the user's "Read Later" list in the database.
  • Proper error handling is in place for any issues during the removal of the article from the list.

Add API Route to Delete Article Series

GitHub Issue: Add API Route to Delete Article Series

Objective: Develop an API route that allows users to delete an article series in our application.

Description:

Tasks:

  1. Create API Route for Deleting Article Series:

    • Develop a new API route, e.g., /api/article-series/delete/:seriesId, to enable users to delete an article series by providing the series ID.
    • Implement the necessary logic to remove the article series and associated articles from the application.
  2. Validation:

    • Implement validation to verify that the provided series ID is valid before proceeding with the deletion.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to delete the specified article series and associated articles.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article series deletion and any potential errors.

Acceptance Criteria:

  • Users can delete an article series by providing the series ID using the /api/article-series/delete/:seriesId route.
  • Validation is in place to ensure the provided series ID is valid.
  • The API successfully removes the specified article series and associated articles from the application.
  • Proper error handling is in place for any issues during article series deletion.

Add API Route to Delete Single Comment

GitHub Issue: Add API Route to Delete Single Comment

Objective: Develop an API route that allows users to delete an existing comment in our application.

Description:

Tasks:

  1. Create API Route for Deleting Comment:

    • Develop a new API route, e.g., /api/comments/delete/:commentId, to enable users to delete an existing comment by providing the comment ID.
    • Implement the necessary logic to remove the specified comment.
  2. Validation:

    • Implement validation to verify that the provided comment ID is valid before proceeding with the deletion.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to delete the specified comment based on the provided comment ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful comment deletion and any potential errors.

Acceptance Criteria:

  • Users can delete an existing comment by providing the comment ID using the /api/comments/delete/:commentId route.
  • Validation is in place to ensure the provided comment ID is valid.
  • The API successfully removes the specified comment based on the provided comment ID.
  • Proper error handling is in place for any issues during comment deletion.

Add API Route to Delete Multiple Articles from an Article Series

GitHub Issue: Add API Route to Delete Multiple Articles from an Article Series

Objective: Develop an API route that allows users to delete multiple articles from an article series in our application.

Description:

Tasks:

  1. Create API Route for Deleting Multiple Articles:

    • Develop a new API route, e.g., /api/user/article_series/:id/articles, to enable users to delete multiple articles from a specific article series by providing the series ID.
    • Implement the necessary logic to remove the specified articles from the series.
  2. Validation:

    • Implement validation to ensure that the provided article series ID and list of article IDs are valid before proceeding with the deletion.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to delete the specified articles from the article series based on the provided IDs.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article deletion and any potential errors.

Acceptance Criteria:

  • Users can delete multiple articles from a specific article series by providing the series ID and a list of article IDs using the /api/user/article_series/:id/articles route.
  • Validation is in place to ensure the provided article series ID and article IDs are valid.
  • The API successfully removes the specified articles from the article series based on the provided IDs.
  • Proper error handling is in place for any issues during article deletion.

Add API Route to Update Article

GitHub Issue: Add API Route to Update Article

Objective: Develop an API route that allows users to update an existing article in our application.

Description:

Tasks:

  1. Create API Route for Updating Article:

    • Develop a new API route, e.g., /api/articles/update/:articleId, to enable users to update an existing article by providing the article ID.
    • Implement the necessary logic to handle updates to the article.
  2. Validation:

    • Implement validation to ensure that the provided article ID and updated article data are valid before proceeding with the update.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to update the existing article data based on the provided article ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article updates and any potential errors.

Acceptance Criteria:

  • Users can update an existing article by providing the article ID using the /api/articles/update/:articleId route.
  • Validation is in place to ensure the provided article ID and updated article data are valid.
  • The API successfully updates the existing article data based on the provided article ID.
  • Proper error handling is in place for any issues during article updates.

Add API Route to Connect Single Topic to User

GitHub Issue: Add API Route to Connect Single Topic to User

Objective: Develop an API route that allows users to connect a single topic to a given user in our application.

Description:

Tasks:

  1. Create API Route to Connect Single Topic:

    • Develop a new API route, e.g., /api/users/connect-topic/:userId/:topicId, to enable users to connect a single topic to a given user by providing the user ID and topic ID.
    • Implement the necessary logic to associate the topic with the user.
  2. Validation:

    • Implement validation to verify that the provided user ID and topic ID are valid before proceeding with the connection.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to establish the connection between the topic and the user's profile.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful topic connections and any potential errors.

Acceptance Criteria:

  • Users can connect a single topic to a given user by providing the user ID and topic ID using the /api/users/connect-topic/:userId/:topicId route.
  • Validation is in place to ensure the provided user ID and topic ID are valid.
  • The API establishes the necessary connection between the topic and the user's profile.
  • Proper error handling is in place for any issues during topic connections.

Add API Route to Like an Article

GitHub Issue: Add API Route to Like an Article

Objective: Develop an API route that allows users to like an article in our application.

Description:

Tasks:

  1. Create API Route for Liking an Article:

    • Develop a new API route, e.g., /api/user/article/:id/like, to enable users to like an article by providing the article ID.
    • Implement the necessary logic to record the user's like for the article.
  2. Validation:

    • Implement validation to ensure that the provided article ID and user information are valid before recording the like.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to record the user's like for the article.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful liking of the article and any potential errors.

Acceptance Criteria:

  • Users can like an article by providing the article ID using the /api/user/article/:id/like route.
  • Validation is in place to ensure the provided article ID and user information are valid.
  • The API successfully records the user's like for the article.
  • Proper error handling is in place for any issues during the liking of the article.

Add API Route to Connect Topics to User

GitHub Issue: Add API Route to Connect Topics to User

Objective: Develop an API route that allows users to connect a list of created topics to their user profile in our application.

Description:

Tasks:

  1. Create API Route to Connect Topics:

    • Develop a new API route, e.g., /api/users/connect-topics, to enable users to connect a list of created topics to their user profile.
    • Implement the necessary logic to associate topics with the user.
  2. Validation:

    • Implement validation to verify that the provided list of topics and user ID is valid before proceeding with the connection.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to establish the connections between topics and the user's profile.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful topic connections and any potential errors.

Acceptance Criteria:

  • Users can connect a list of created topics to their user profile using the /api/users/connect-topics route.
  • Validation is in place to ensure the provided user ID and list of topics are valid.
  • The API establishes the necessary connections between the topics and the user's profile.
  • Proper error handling is in place for any issues during topic connections.

Create API Endpoint for Authenticating Magic URL Login

Issue Title: Create API Endpoint for Authenticating Magic URL Login

Issue Description:
To enable users to securely authenticate via magic login URLs, we need to implement an API endpoint that can verify the validity of these URLs and log users in. This issue outlines the details for creating the authentication endpoint.

Scope:

  • Develop an API endpoint that can validate the magic login URL provided by the user.
  • Once validated, the user should be logged in to their account, and appropriate session tokens or cookies should be set to maintain the user's logged-in state.

Proposed Solution:

  1. API Endpoint Design:

    • Define the route and endpoint for authenticating magic login URLs, e.g., /api/auth/magic-login.
    • Specify the HTTP method (e.g., GET) for handling the authentication request.
  2. Magic URL Validation:

    • Extract the unique token or key from the magic login URL provided in the request.
    • Check if the token is valid and hasn't expired.
    • Verify that the token corresponds to a user account in the system.
  3. User Authentication:

    • If the token is valid, authenticate the user associated with the token.
    • Create and set the necessary session tokens or cookies to maintain the user's logged-in state.
    • Redirect the user to an appropriate landing page or send a response indicating successful login.
  4. Error Handling:

    • Implement error handling to address scenarios where the token is invalid, expired, or doesn't correspond to a user account.
    • Provide meaningful error messages or responses to guide the user.
  5. Security Considerations:

    • Implement rate limiting and authentication to protect against abuse.
    • Ensure that magic login URLs have a limited lifespan for security reasons.

Expected Outcome:
Upon completion of this issue, our platform will have a functional API endpoint for authenticating magic login URLs. Users will be able to use these URLs to securely log in to their accounts without passwords. This feature will enhance user convenience and security.

Please collaborate on this issue, provide feedback, and contribute to its resolution to improve our platform's functionality and user experience.

Add API Route to Add Multiple Articles to Article Series

GitHub Issue: Add API Route to Add Multiple Articles to Article Series

Objective: Develop an API route that allows users to add multiple articles to a specific article series in our application.

Description:

Tasks:

  1. Create API Route to Add Multiple Articles:

    • Develop a new API route, e.g., /api/article-series/:seriesId/add-articles, to enable users to add multiple articles to a given article series.
    • Implement the necessary logic to associate the articles with the specified article series.
  2. Validation:

    • Implement validation to verify that the provided series ID and article data are valid before proceeding with the addition.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to add the multiple articles to the specified article series.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article additions and any potential errors.

Acceptance Criteria:

  • Users can add multiple articles to a specified article series by providing the series ID and a list of article data using the /api/article-series/:seriesId/add-articles route.
  • Validation is in place to ensure the provided series ID and article data are valid.
  • The API associates the articles with the specified article series.
  • Proper error handling is in place for any issues during article additions.

Add API Route to Create New Article Series

GitHub Issue: Add API Route to Create New Article Series

Objective: Develop an API route that allows users to create a new article series in our application.

Description:

Tasks:

  1. Create API Route for New Article Series:

    • Develop a new API route, e.g., /api/article-series/create, to enable users to create a new article series.
    • Implement the necessary logic to handle the creation of a new article series.
  2. Validation:

    • Implement validation to ensure that the provided article series data is valid before proceeding with the creation.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to store the newly created article series in the database.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article series creation and any potential errors.

Acceptance Criteria:

  • Users can create a new article series using the /api/article-series/create route.
  • Validation is in place to ensure the provided article series data is valid.
  • The API successfully stores the newly created article series in the database.
  • Proper error handling is in place for any issues during article series creation.

Implement /signup endpoint for user registration

Title: Implement /signup endpoint for user registration

Description:

As a user, I want to be able to sign up to the application using my email and password, so that I can create an account and access the features and functionalities of the app.

Acceptance Criteria:

  • The /signup endpoint should accept a POST request with a JSON object containing email and password fields as the request body.
  • The endpoint should validate the input data and check if the email is unique and the password is strong enough.
  • If the input data is valid, the endpoint should create a new user in the database with the email and password, and optionally other fields such as name, role, etc.
  • If the user creation is successful, the endpoint should generate a JWT token and send it back to the client as a response header or cookie.
  • If the user creation fails, the endpoint should return an appropriate error message and status code.

Add API Route to Delete Single Article from Article Series

GitHub Issue: Add API Route to Delete Single Article from Article Series

Objective: Develop an API route that allows users to delete a single article from a specific article series in our application.

Description:

Tasks:

  1. Create API Route to Delete Single Article:

    • Develop a new API route, e.g., /api/article-series/:seriesId/delete-article/:articleId, to enable users to delete a single article from a given article series.
    • Implement the necessary logic to remove the association between the article and the specified article series.
  2. Validation:

    • Implement validation to verify that the provided series ID and article ID are valid before proceeding with the deletion.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to remove the article from the specified article series.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article deletions and any potential errors.

Acceptance Criteria:

  • Users can delete a single article from a specified article series by providing the series ID and article ID using the /api/article-series/:seriesId/delete-article/:articleId route.
  • Validation is in place to ensure the provided series ID and article ID are valid.
  • The API removes the association between the article and the specified article series.
  • Proper error handling is in place for any issues during article deletion.

Create Google Sign-In API Route

GitHub Issue: Create Google Sign-In API Route

Objective: Develop an API route for Google Sign-In to enable users to authenticate via their Google accounts.

Tasks:

  1. Configure Google OAuth for user authentication.
  2. Implement /api/auth/google/signin route for Google Sign-In.
  3. Integrate Google user data into our authentication system.
  4. Update API documentation for the new route.

Acceptance Criteria:

  • Users can authenticate using Google accounts through the API.
  • Google user data is securely integrated into our authentication system.
  • Proper error handling for Google Sign-In is in place.

Add API Route to Add New Comment to Article

GitHub Issue: Add API Route to Add New Comment to Article

Objective: Develop an API route that allows users to add a new comment to an article in our application.

Description:

Tasks:

  1. Create API Route for Adding New Comment:

    • Develop a new API route, e.g., /api/articles/add-comment/:articleId, to enable users to add a new comment to an article by providing the article ID.
    • Implement the necessary logic to create and associate the comment with the article.
  2. Validation:

    • Implement validation to verify that the provided article ID and comment data are valid before proceeding with the addition.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to store the newly created comment and associate it with the article.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful comment creation and any potential errors.

Acceptance Criteria:

  • Users can add a new comment to an article by providing the article ID using the /api/articles/add-comment/:articleId route.
  • Validation is in place to ensure the provided article ID and comment data are valid.
  • The API successfully creates and associates the comment with the article.
  • Proper error handling is in place for any issues during comment creation.

Create Google Signup Route

GitHub Issue: Implement Google Signup Route

Issue Description:

Objective: To enhance user registration options, we aim to implement a Google Signup route, allowing users to register for our platform using their Google accounts.

Acceptance Criteria:

  • Users must have the ability to sign up using their Google accounts.
  • Ensure seamless integration of user data obtained from Google into our database.
  • Implement a user-friendly signup process with robust error handling to enhance the overall user experience.

Add API Route to Delete Multiple Articles from Article Series

GitHub Issue: Add API Route to Delete Multiple Articles from Article Series

Objective: Develop an API route that allows users to delete multiple articles from a specific article series in our application.

Description:

Tasks:

  1. Create API Route to Delete Multiple Articles:

    • Develop a new API route, e.g., /api/article-series/:seriesId/delete-articles, to enable users to delete multiple articles from a given article series.
    • Implement the necessary logic to remove the associations between the articles and the specified article series.
  2. Validation:

    • Implement validation to verify that the provided series ID and list of article IDs are valid before proceeding with the deletions.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to remove the associations between the articles and the specified article series.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article deletions and any potential errors.

Acceptance Criteria:

  • Users can delete multiple articles from a specified article series by providing the series ID and a list of article IDs using the /api/article-series/:seriesId/delete-articles route.
  • Validation is in place to ensure the provided series ID and list of article IDs are valid.
  • The API removes the associations between the articles and the specified article series.
  • Proper error handling is in place for any issues during article deletions.

Add API Route to Retrieve All Article Series

GitHub Issue: Add API Route to Retrieve All Article Series

Objective: Develop an API route that allows users to retrieve a list of all article series in our application.

Description:

Tasks:

  1. Create API Route to Get All Article Series:

    • Develop a new API route, e.g., /api/article-series/all, to fetch and return a list of all article series.
    • Implement the necessary logic to retrieve and format the article series data.
  2. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch all article series from the database.
  3. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of all article series and any potential errors.

Acceptance Criteria:

  • Users can retrieve a list of all article series using the /api/article-series/all route.
  • The API fetches and returns all article series from the database.
  • Proper error handling is in place for any issues during article series retrieval.

Create API Endpoint for Magic URL Generation

Issue Description:
We need to implement an API endpoint that generates and sends magic login links to users via email. This feature will allow users to securely log in to our platform using these links without needing a password. Below are the details for this task:

Scope:

  • Create a dedicated API endpoint that generates magic login URLs.
  • Users will request these URLs by providing their email addresses.
  • Upon request, an email containing the magic login link will be sent to the provided email address.
  • The link should be unique and time-limited for security purposes.

Proposed Solution:

  1. API Endpoint Design:

    • Define the route and endpoint for generating magic login links, e.g., /api/magic-login.
    • Specify the HTTP method (e.g., POST) for requesting magic links.
  2. User Input Handling:

    • Accept user input in the form of an email address.
    • Validate the email address to ensure it's properly formatted.
  3. Magic Link Generation:

    • Generate a unique token or key for each magic login link. This token should have a limited lifespan (e.g., 15 minutes) for security reasons.
    • Include this token in the magic login URL, which will have a structure like https://ourapp.com/login/magic?token=<unique-token>.
  4. Email Sending:

    • Use a transactional email service (e.g., SendGrid, AWS SES) to send the magic login link to the provided email address.
    • The email should contain clear instructions for using the magic link to log in.
  5. Security Considerations:

    • Implement rate limiting and authentication to prevent abuse of the API.
    • Ensure that magic links expire after the specified time period.
    • Log all requests for auditing and security purposes.

Expected Outcome:
Upon completion of this issue, our platform will have a functional API endpoint for generating magic login links. Users will be able to request these links by providing their email addresses, and they will receive an email containing a unique link for secure login. This feature will enhance the user experience by providing a passwordless login option.

Please collaborate on this issue, provide feedback, and contribute to its resolution to improve our platform's functionality and security.

Add API Route to Disconnect Single Topic from User

GitHub Issue: Add API Route to Disconnect Single Topic from User

Objective: Develop an API route that allows users to disconnect a single topic from a given user in our application.

Description:

Tasks:

  1. Create API Route to Disconnect Single Topic:

    • Develop a new API route, e.g., /api/users/disconnect-topic/:userId/:topicId, to enable users to disconnect a single topic from a given user by providing the user ID and topic ID.
    • Implement the necessary logic to remove the association between the topic and the user.
  2. Validation:

    • Implement validation to verify that the provided user ID and topic ID are valid before proceeding with the disconnection.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to remove the connection between the topic and the user's profile.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful topic disconnections and any potential errors.

Acceptance Criteria:

  • Users can disconnect a single topic from a given user by providing the user ID and topic ID using the /api/users/disconnect-topic/:userId/:topicId route.
  • Validation is in place to ensure the provided user ID and topic ID are valid.
  • The API removes the connection between the topic and the user's profile.
  • Proper error handling is in place for any issues during topic disconnections.

Add API Route to Publish Article

GitHub Issue: Add API Route to Publish Article

Objective: Develop an API route that allows users to publish an article in our application.

Description:

Tasks:

  1. Create API Route for Publishing Article:

    • Develop a new API route, e.g., /api/articles/publish/:articleId, to enable users to publish an article by providing the article ID.
    • Implement the necessary logic to mark the article as published.
  2. Validation:

    • Implement validation to verify that the provided article ID is valid before proceeding with the publishing action.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to update the article's status to "published" based on the provided article ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article publishing and any potential errors.

Acceptance Criteria:

  • Users can publish an article by providing the article ID using the /api/articles/publish/:articleId route.
  • Validation is in place to ensure the provided article ID is valid.
  • The API updates the article's status to "published" based on the provided article ID.
  • Proper error handling is in place for any issues during article publishing.

Add API Route to Get All "Read Later" Articles

GitHub Issue: Add API Route to Get All "Read Later" Articles

Objective: Develop an API route that allows users to retrieve all the articles from their "Read Later" list in our application.

Description:

Tasks:

  1. Create API Route for Getting "Read Later" Articles:

    • Develop a new API route, e.g., /api/user/read_later, to enable users to fetch and return all the articles from their "Read Later" list.
    • Implement the necessary logic to retrieve the user's "Read Later" articles.
  2. Validation:

    • Implement validation to ensure that the user's information is valid before fetching the "Read Later" articles.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch all the articles associated with the user's "Read Later" list.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of "Read Later" articles and any potential errors.

Acceptance Criteria:

  • Users can retrieve all the articles from their "Read Later" list using the /api/user/read_later route.
  • Validation is in place to ensure the user's information is valid.
  • The API fetches and returns all the articles associated with the user's "Read Later" list.
  • Proper error handling is in place for any issues during the retrieval of "Read Later" articles.

Add API Route to Retrieve Single Topic by ID

GitHub Issue: Add API Route to Retrieve Single Topic by ID

Objective: Develop an API route that allows users to retrieve a single topic by its unique ID in our application.

Description:

Tasks:

  1. Create Get Single Topic API Route:

    • Develop a new API route, e.g., /api/topics/:id, to allow users to fetch a single topic by its ID.
    • Implement the necessary logic to retrieve and format the topic data based on the provided ID.
  2. Validation:

    • Implement validation to verify that the provided topic ID is valid before proceeding with retrieval.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch the topic data based on the provided ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful topic retrieval and any potential errors.

Acceptance Criteria:

  • Users can retrieve a single topic by its unique ID using the /api/topics/:id route.
  • Validation is in place to ensure the provided topic ID is valid.
  • The API fetches and returns the topic data based on the provided ID.
  • Proper error handling is in place for any issues during topic retrieval.

Add API Route to Retrieve All Topics

GitHub Issue: Add API Route to Retrieve All Topics

Objective: Develop an API route that allows users to retrieve a list of all topics in our application.

Description:

Tasks:

  1. Create Get All Topics API Route:

    • Develop a new API route, e.g., /api/topics/all, to fetch and return a list of all topics.
    • Implement the necessary logic to retrieve and format the topic data.
  2. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch all topics from the database.
  3. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of all topics and any potential errors.

Acceptance Criteria:

  • Users can retrieve a list of all topics using the /api/topics/all route.
  • The API fetches and returns all topics from the database.
  • Proper error handling is in place for any issues during topic retrieval.

Add API Route to Delete Topic by ID

GitHub Issue: Add API Route to Delete Topic by ID

Objective: Develop an API route that allows users to delete a topic by its unique ID in our application.

Description:

Tasks:

  1. Create Delete API Route:

    • Develop a new API route, e.g., /api/topics/delete/:id, to enable users to delete a topic by its ID.
    • Implement the necessary logic to handle topic deletion based on the provided ID.
  2. Validation:

    • Implement validation to verify that the provided topic ID is valid before proceeding with the deletion.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to delete the topic data based on the provided ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful topic deletions and any potential errors.

Acceptance Criteria:

  • Users can delete a topic by its unique ID using the /api/topics/delete/:id route.
  • Validation is in place to ensure the provided topic ID is valid.
  • Topic data is successfully deleted from the database.
  • Proper error handling is in place for any issues during topic deletion.

Add API Route to Get Liked/Disliked Articles with Pagination

GitHub Issue: Add API Route to Get Liked/Disliked Articles with Pagination

Objective: Develop an API route that allows users to retrieve their liked or disliked articles with pagination in our application.

Description:

Tasks:

  1. Create API Route for Getting Liked/Disliked Articles:

    • Develop a new API route, e.g., /api/user/liked_articles/:status/:size/:cursor, to enable users to fetch and return their liked or disliked articles with pagination.
    • Implement the necessary logic to retrieve the user's liked or disliked articles based on the specified status, page size (size), and cursor for pagination.
  2. Validation:

    • Implement validation to ensure that the provided status is valid (e.g., "liked" or "disliked") and corresponds to article statuses used in the application.
    • Validate the size and cursor parameters to ensure they are within appropriate limits.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch a paginated list of liked or disliked articles for the user.
  4. Pagination:

    • Implement pagination to handle large datasets of articles effectively. Allow users to specify the page size (size) and provide a cursor for paginating through the articles.
  5. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of liked or disliked articles and any potential errors.

Acceptance Criteria:

  • Users can retrieve their liked or disliked articles with pagination based on a specified status using the /api/user/liked_articles/:status/:size/:cursor route.
  • Validation is in place to ensure the provided status, size, and cursor are valid.
  • The API fetches and returns a paginated list of liked or disliked articles for the user.
  • Pagination is implemented to handle large article datasets effectively.
  • Proper error handling is in place for any issues during article retrieval.

Create API Route to Add New Topic

GitHub Issue: Create API Route to Add New Topic

Objective: Develop an API route that allows users to add a new topic to our application.

Description:

Tasks:

  1. Create API Route:

    • Develop a new API route, e.g., /api/topics/add, to allow users to add a new topic.
    • Implement the necessary logic to handle topic creation.
  2. Validation:

    • Implement validation for topic data to ensure data integrity.
    • Define rules and constraints for topic attributes.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to store the new topic data.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful topic creation and any potential errors.

Acceptance Criteria:

  • Users can add a new topic using the /api/topics/add route.
  • The API validates topic data and enforces rules.
  • New topics are stored in the database.
  • Proper error handling is in place for any issues during topic creation.

Add API Route to Republish Article

GitHub Issue: Add API Route to Republish Article

Objective: Develop an API route that allows users to republish an article in our application.

Description:

Tasks:

  1. Create API Route for Republishing Article:

    • Develop a new API route, e.g., /api/articles/republish/:articleId, to enable users to republish an article by providing the article ID.
    • Implement the necessary logic to mark the article as republished.
  2. Validation:

    • Implement validation to verify that the provided article ID is valid before proceeding with the republishing action.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to update the article's status to "published" based on the provided article ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article republishing and any potential errors.

Acceptance Criteria:

  • Users can republish an article by providing the article ID using the /api/articles/republish/:articleId route.
  • Validation is in place to ensure the provided article ID is valid.
  • The API updates the article's status to "published" based on the provided article ID.
  • Proper error handling is in place for any issues during article republishing.

Add API Route to Get Parent Comments of an Article

GitHub Issue: Add API Route to Get Parent Comments of an Article

Objective: Develop an API route that allows users to retrieve all the parent comments of a specific article in our application.

Description:

Tasks:

  1. Create API Route to Get Parent Comments:

    • Develop a new API route, e.g., /api/user/article/:id/comments/:size/:cursor, to fetch and return all the parent comments of a given article.
    • Implement the necessary logic to retrieve the parent comments based on the article ID, size, and cursor for pagination.
  2. Validation:

    • Implement validation to ensure that the provided article ID, size, and cursor are valid and within appropriate limits.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch all the parent comments associated with the specified article.
  4. Pagination:

    • Implement pagination to handle large comment datasets. Allow users to specify the number of comments to retrieve (size) and provide a cursor for paginating through the comments.
  5. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of parent comments and any potential errors.

Acceptance Criteria:

  • Users can retrieve all the parent comments of a specific article using the /api/user/article/:id/comments/:size/:cursor route.
  • Validation is in place to ensure the provided article ID, size, and cursor are valid.
  • The API fetches and returns all the parent comments associated with the specified article.
  • Pagination is implemented to handle large comment datasets effectively.
  • Proper error handling is in place for any issues during parent comment retrieval.

Add API Route to Update Article Series

GitHub Issue: Add API Route to Update Article Series

Objective: Develop an API route that allows users to update an existing article series in our application.

Description:

Tasks:

  1. Create API Route for Updating Article Series:

    • Develop a new API route, e.g., /api/article-series/update/:seriesId, to enable users to update an existing article series by providing the series ID.
    • Implement the necessary logic to handle updates to the article series.
  2. Validation:

    • Implement validation to ensure that the provided series ID and updated article series data are valid before proceeding with the update.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to update the existing article series data based on the provided series ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article series updates and any potential errors.

Acceptance Criteria:

  • Users can update an existing article series by providing the series ID using the /api/article-series/update/:seriesId route.
  • Validation is in place to ensure the provided series ID and updated article series data are valid.
  • The API successfully updates the existing article series data based on the provided series ID.
  • Proper error handling is in place for any issues during article series updates.

Add API Route to Retrieve All Articles of a Given Article Series

GitHub Issue: Add API Route to Retrieve All Articles of a Given Article Series

Objective: Develop an API route that allows users to retrieve all articles associated with a specific article series in our application.

Description:

Tasks:

  1. Create API Route to Get All Articles of a Given Article Series:

    • Develop a new API route, e.g., /api/article-series/:seriesId/articles, to fetch and return a list of all articles associated with a specific article series.
    • Implement the necessary logic to retrieve and format the article data.
  2. Validation:

    • Implement validation to verify that the provided series ID is valid before proceeding with the retrieval.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch all articles associated with the specified article series.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of articles and any potential errors.

Acceptance Criteria:

  • Users can retrieve a list of all articles associated with a specific article series using the /api/article-series/:seriesId/articles route.
  • Validation is in place to ensure the provided series ID is valid.
  • The API fetches and returns all articles associated with the specified article series from the database.
  • Proper error handling is in place for any issues during article retrieval.

Add API Route to Get All Articles of a User

GitHub Issue: Add API Route to Get All Articles of a User

Objective: Develop an API route that allows users to retrieve all their articles based on a specified status in our application.

Description:

Tasks:

  1. Create API Route for Getting User's Articles:

    • Develop a new API route, e.g., /api/user/articles/:status, to enable users to fetch and return all their articles based on the specified status.
    • Implement the necessary logic to retrieve the user's articles with the given status.
  2. Validation:

    • Implement validation to ensure that the provided status is valid and corresponds to article statuses used in the application.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch all articles of the user with the specified status.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of articles and any potential errors.

Acceptance Criteria:

  • Users can retrieve all their articles based on a specified status using the /api/user/articles/:status route.
  • Validation is in place to ensure the provided status is valid.
  • The API fetches and returns all articles of the user with the specified status.
  • Proper error handling is in place for any issues during article retrieval.

Add API Route to Add Article to "Read Later" List

GitHub Issue: Add API Route to Add Article to "Read Later" List

Objective: Develop an API route that allows users to add an article to their "Read Later" list in our application.

Description:

Tasks:

  1. Create API Route for Adding Article to "Read Later" List:

    • Develop a new API route, e.g., /api/user/read_later, to enable users to add an article to their "Read Later" list.
    • Implement the necessary logic to associate the article with the user's "Read Later" list.
  2. Validation:

    • Implement validation to ensure that the provided article data and user information are valid before adding the article to the list.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to store the association between the user and the article in the "Read Later" list.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful addition of the article to the "Read Later" list and any potential errors.

Acceptance Criteria:

  • Users can add an article to their "Read Later" list using the /api/user/read_later route.
  • Validation is in place to ensure the provided article data and user information are valid.
  • The API successfully associates the article with the user's "Read Later" list in the database.
  • Proper error handling is in place for any issues during the addition of the article to the list.

Create Logout from All Active Sessions API Route

GitHub Issue: Create Logout from All Active Sessions API Route

Objective: Implement an API route that allows users to log out from all active sessions, effectively ending all sessions and requiring reauthentication.

Issue Description:

Tasks:

  1. Create Logout from All Active Sessions API Route:

    • Develop a new API route, e.g., /api/auth/logout/all, to log a user out from all active sessions.
    • Implement the necessary logic to invalidate all active sessions associated with the user.
  2. User Experience:

    • Ensure a user-friendly response indicating successful logout from all sessions.
    • Handle and respond to any potential errors or issues that may arise during the process.

Acceptance Criteria:

  • Users can log out from all active sessions using the /api/auth/logout/all route.
  • All active sessions for the user are effectively invalidated, requiring reauthentication.
  • Proper error handling is in place for any potential issues during the logout process.

Add API Route to Create and Add New Article

GitHub Issue: Add API Route to Create and Add New Article

Objective: Develop an API route that allows users to create and add a new article to their user profile in our application.

Description:

Tasks:

  1. Create API Route for New Article:

    • Develop a new API route, e.g., /api/users/add-article, to enable users to create and add a new article to their profile.
    • Implement the necessary logic to handle the creation of a new article and associate it with the user.
  2. Validation:

    • Implement validation to ensure that the provided article data is valid before proceeding with the addition.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to store the newly created article in the database and associate it with the user.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article creation and any potential errors.

Acceptance Criteria:

  • Users can create and add a new article to their user profile using the /api/users/add-article route.
  • Validation is in place to ensure the provided article data is valid.
  • The API successfully stores the newly created article in the database and associates it with the user.
  • Proper error handling is in place for any issues during article creation.

Add API Route to Update Single Comment

GitHub Issue: Add API Route to Update Single Comment

Objective: Develop an API route that allows users to update an existing comment in our application.

Description:

Tasks:

  1. Create API Route for Updating Comment:

    • Develop a new API route, e.g., /api/comments/update/:commentId, to enable users to update an existing comment by providing the comment ID.
    • Implement the necessary logic to handle updates to the comment.
  2. Validation:

    • Implement validation to verify that the provided comment ID and updated comment data are valid before proceeding with the update.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to update the existing comment data based on the provided comment ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful comment updates and any potential errors.

Acceptance Criteria:

  • Users can update an existing comment by providing the comment ID using the /api/comments/update/:commentId route.
  • Validation is in place to ensure the provided comment ID and updated comment data are valid.
  • The API successfully updates the existing comment data based on the provided comment ID.
  • Proper error handling is in place for any issues during comment updates.

Add API Route to Get Replies of a Comment with Cursor

GitHub Issue: Add API Route to Get Replies of a Comment with Cursor

Objective: Develop an API route that allows users to retrieve all the replies of a specific comment with pagination using a cursor in our application.

Description:

Tasks:

  1. Create API Route to Get Replies:

    • Develop a new API route, e.g., /api/comments/:commentId/replies/:size/:cursor, to fetch and return all the replies of a given comment.
    • Implement the necessary logic to retrieve the replies based on the comment ID, size, and cursor for pagination.
  2. Validation:

    • Implement validation to ensure that the provided comment ID, size, and cursor are valid and within appropriate limits.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to fetch all the replies associated with the specified comment.
  4. Pagination:

    • Implement pagination to handle large reply datasets. Allow users to specify the number of replies to retrieve (size) and provide a cursor for paginating through the replies.
  5. User Experience:

    • Ensure clear and user-friendly responses for successful retrieval of replies and any potential errors.

Acceptance Criteria:

  • Users can retrieve all the replies of a specific comment with pagination using the /api/comments/:commentId/replies/:size/:cursor route.
  • Validation is in place to ensure the provided comment ID, size, and cursor are valid.
  • The API fetches and returns all the replies associated with the specified comment.
  • Pagination is implemented to handle large reply datasets effectively.
  • Proper error handling is in place for any issues during reply retrieval.

Add API Route to Unpublish Article

GitHub Issue: Add API Route to Unpublish Article

Objective: Develop an API route that allows users to unpublish an article in our application.

Description:

Tasks:

  1. Create API Route for Unpublishing Article:

    • Develop a new API route, e.g., /api/articles/unpublish/:articleId, to enable users to unpublish an article by providing the article ID.
    • Implement the necessary logic to mark the article as unpublished.
  2. Validation:

    • Implement validation to verify that the provided article ID is valid before proceeding with the unpublishing action.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to update the article's status to "unpublished" based on the provided article ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article unpublishing and any potential errors.

Acceptance Criteria:

  • Users can unpublish an article by providing the article ID using the /api/articles/unpublish/:articleId route.
  • Validation is in place to ensure the provided article ID is valid.
  • The API updates the article's status to "unpublished" based on the provided article ID.
  • Proper error handling is in place for any issues during article unpublishing.

Add API Route to Delete Multiple Topics from User

GitHub Issue: Add API Route to Delete Multiple Topics from User

Objective: Develop an API route that allows users to delete multiple topics associated with their user profile in our application.

Description:

Tasks:

  1. Create API Route to Delete Multiple Topics:

    • Develop a new API route, e.g., /api/users/delete-topics/:userId, to enable users to delete multiple topics associated with their user profile by providing the user ID and a list of topic IDs.
    • Implement the necessary logic to remove the associations between the topics and the user.
  2. Validation:

    • Implement validation to verify that the provided user ID and list of topic IDs are valid before proceeding with the deletions.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to remove the connections between the topics and the user's profile.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful topic deletions and any potential errors.

Acceptance Criteria:

  • Users can delete multiple topics associated with their user profile by providing the user ID and a list of topic IDs using the /api/users/delete-topics/:userId route.
  • Validation is in place to ensure the provided user ID and list of topic IDs are valid.
  • The API removes the associations between the topics and the user's profile.
  • Proper error handling is in place for any issues during topic deletions.

Add API Route to Add Single Article to Article Series

GitHub Issue: Add API Route to Add Single Article to Article Series

Objective: Develop an API route that allows users to add a single article to a specific article series in our application.

Description:

Tasks:

  1. Create API Route to Add Single Article:

    • Develop a new API route, e.g., /api/article-series/:seriesId/add-article, to enable users to add a single article to a given article series.
    • Implement the necessary logic to associate the article with the specified article series.
  2. Validation:

    • Implement validation to verify that the provided series ID and article data are valid before proceeding with the addition.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to add the article to the specified article series.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful article additions and any potential errors.

Acceptance Criteria:

  • Users can add a single article to a specified article series by providing the series ID and article data using the /api/article-series/:seriesId/add-article route.
  • Validation is in place to ensure the provided series ID and article data are valid.
  • The API associates the article with the specified article series.
  • Proper error handling is in place for any issues during article addition.

Add API Route to Update Topic by ID

GitHub Issue: Add API Route to Update Topic by ID

Objective: Develop an API route that allows users to update a topic by its unique ID in our application.

Description:

Tasks:

  1. Create Update API Route:

    • Develop a new API route, e.g., /api/topics/update/:id, to enable users to update a topic by its ID.
    • Implement the necessary logic to handle topic updates based on the provided ID.
  2. Validation:

    • Implement validation for updated topic data to ensure data integrity.
    • Define rules and constraints for topic attributes during updates.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to update the topic data based on the provided ID.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful topic updates and any potential errors.

Acceptance Criteria:

  • Users can update a topic by its unique ID using the /api/topics/update/:id route.
  • The API validates updated topic data and enforces rules.
  • Topic data is successfully updated in the database.
  • Proper error handling is in place for any issues during topic updates.

Create Prisma Model for Topic

GitHub Issue: Create Prisma Model for Topic

Objective: Define a Prisma model for the "Topic" entity.

Tasks:

  1. Create Prisma model for the "Topic" entity.
  2. Generate a Prisma migration to create the "Topic" table in the database.

Acceptance Criteria:

  • Prisma model for "Topic" is defined.
  • A Prisma migration successfully creates the "Topic" table in the database.

Add API Route to Unfollow a User

GitHub Issue: Add API Route to Unfollow a User

Objective: Develop an API route that allows users to unfollow another user in our application.

Description:

Tasks:

  1. Create API Route for Unfollowing a User:

    • Develop a new API route, e.g., /api/user/follow/:id, to enable users to unfollow another user by providing the user ID.
    • Implement the necessary logic to remove the follow relationship between the current user and the target user.
  2. Validation:

    • Implement validation to ensure that the provided user ID is valid and corresponds to an existing user.
    • Check if the user is currently following the target user to prevent unfollowing a user not in the follow list.
  3. Database Interaction:

    • Integrate the API route with Prisma or our chosen database library to remove the follow relationship between the current user and the target user.
  4. User Experience:

    • Ensure clear and user-friendly responses for successful unfollow action and any potential errors.

Acceptance Criteria:

  • Users can unfollow another user by providing the target user's ID using the /api/user/follow/:id route.
  • Validation is in place to ensure the provided user ID is valid and that the user is currently following the target user.
  • The API successfully removes the follow relationship between the current user and the target user in the database.
  • Proper error handling is in place for any issues during the unfollow action.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.