Skip to content

BubbleFetcher simplifies communication with Bubble.io, speeding up development by wrapping the Bubble API and providing easy-to-use methods.

Notifications You must be signed in to change notification settings

Sangkun-svg/bubble-fetcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BubbleFetcher · MIT License PRs Welcome

BubbleFetcher is a library designed to simplify communication with Bubble.io, a no-code tool.

With BubbleFetcher, developers can easily integrate Bubble applications with their own stack and accelerate the development process.

BubbleFetcher provides a wrapper over the Bubble API, providing easy-to-use methods for common tasks such as CRUD operations, authentication, and accessing data.



Installation

Install bubbleFetcher with NPM or Yarn

  npm i bubblefetcher
  
  or

  yarn add bubblefetcher


How to Use ?

  1. Import bubbleFetcher
import { bubbleFetcher } from "bubblefetcher";
  1. Configure variables
bubbleFetcher.init({
  apiKey : "your-bubble-api-key",
  domain : "your-bubble-domain",
  isDev : true || false
})

Example

const BUBBLE_API_KEY = process.env.BUBBLE_API_KEY
bubbleFetcher.init({
  apiKey : BUBBLE_API_KEY,
  domain : "edu.todomall.kr",
  isDev : process.env.NODE_ENV === "development"
})
  1. Request
  • bubbleFetcher.get(objectName[, sortOption[, constrains]])

        // getAll
        const users = await bubbleFetcher.get("/user")
    
        // getAllWithSort
        const users = await bubbleFetcher.get("/user", {
          sortOption: {
            sort_field: "name_text",
            descending: true || false,
          },
        });
    
        // getAllWithConstarint
        const users = await bubbleFetcher.get("/user", {
          constraints: {
            key: "name_text",
            constraint_type: "equals",
            value: "target value",
          },
        });
    
        // getAllWithPage
        const users = await bubbleFetcher.get("/user", {
            pageOption: {
              cursor: 0,
              limit: 10,
            },   
        })
    
    
        // get with Sort and Constarint and Page
        const users = await bubbleFetcher.get("/user", {
         sortOption: {
           sort_field: "name_text",
           descending: true || false, 
         },
         constraints: {
           key: "name_text",
           constraint_type: "equals",
           value: "target value",
         },
         pageOption: {
           cursor: 0,
           limit: 10,
         },
       });
  • bubbleFetcher.post(objectName[, body])

      await bubbleFetcher.post("/user" , {
        body :{
          name_text : "Sangkun-svg",
          age_number: 23
        }
      });
  • bubbleFetcher.put(objectName[, body]) && bubbleFetcher.patch(objectName[, body])

      await bubbleFetcher.put("/user" , {
        body :{
          name_text : "Sangkun-svg",
          age_number: 23
        }
      });
    
      await bubbleFetcher.patch("/user" , {
        body :{
          name_text : "Sangkun-svg",
          age_number: 23
        }
      });
  • bubbleFetcher.delete(objectName)

      await bubbleFetcher.delete("/user/${UID}")


Used By

This project is used by the following companies:



Contributing

Contributions are always welcome!



Reference

About

BubbleFetcher simplifies communication with Bubble.io, speeding up development by wrapping the Bubble API and providing easy-to-use methods.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published