Data Management

Basic Likes and Follows - Database and API set up

Hey there! In this guide, we'll explore how to build a system for tracking likes and follows in a social network application using Xano's no-code platform. Whether you're creating a platform for sharing products, content, or connecting with others, handling user interactions like likes and follows is a common requirement. Let's dive in!

Step 1: Creating a Transactional Table

The first step is to create a transactional table that keeps track of the likes or follows. This table will store the relationships between users and the items they interact with (e.g., products, posts, profiles).

  1. In your Xano project, navigate to the Data tab and create a new table. Let's call it Likes.
  2. Add two columns to the Likes table:
  • userId: This column will store the user ID of the person who liked or followed the item.
  • itemId: This column will store the ID of the item being liked or followed (e.g., a product ID or a post ID).
  1. Optionally, you can add additional columns to store metadata, such as the timestamp of the interaction or the type of interaction (like or follow).

Step 2: Building the API Endpoint

Now that we have the Likes table set up, let's create an API endpoint that will handle recording likes or follows.

  1. Navigate to the API tab and create a new API endpoint. Let's call it likeProduct.
  2. In the Inputs section, add two input fields:
  • userId (Integer): This will be the user ID of the person liking the product.
  • productId (Integer): This will be the ID of the product being liked.
  1. In the Function Stack, we'll perform the following steps:
  • Query the Likes table to check if the user has already liked the product.
  • If the like relationship doesn't exist, add a new record to the Likes table.
  1. Start by adding a Query All Records function and selecting the Likes table.
  2. Add a Custom Query condition to filter the results based on the userId and productId inputs.
  3. Change the output to return a Single Record instead of a list.
  4. Add a Conditional function that checks if the query result is null (meaning no record was found).
  5. If the condition is true (no record found), add an Add Record function to insert a new record into the Likes table with the userId, productId, and the current timestamp.

Step 3: Testing the API Endpoint

Now that you've built the API endpoint, let's test it to ensure it's working correctly.

  1. In your Xano project, navigate to the API tab and locate the likeProduct endpoint you created.
  2. Click the Run button and enter the userId and productId values for a new like interaction.
  3. Check the Likes table to verify that a new record has been added.

Congratulations! You've successfully built a system for handling likes and follows in your social network application using Xano's no-code platform. You can now integrate this functionality into your web or mobile app, allowing users to interact with products, posts, or other items seamlessly.

Remember, this is just one way to implement likes and follows. Depending on your specific requirements, you may need to adjust the data model or add additional functionality, such as handling unlikes or unfollows.

Sign up for Xano

Join 100,000+ people already building with Xano.

Start today and scale to millions.

Start building for free