npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

supacrud-2

v1.0.1

Published

Generate CRUD ops for TypeScript Supabase projects

Downloads

6

Readme

supacrud

supacrud is an in progress command-line interface tool designed to generate CRUD (Create, Read, Update, Delete) operations for your Supabase database tables in TypeScript projects.

Installation

To install supacrud, make sure you have Node.js and npm installed, then run:

npm install -g supacrud

Usage

After installation, you can use supacrud by running the supacrud command in your terminal:

supacrud [OPTIONS]

Options

  • -t, --table <table-name>: Specify the table name to perform CRUD operations on.
  • -a, --all: Generate all CRUD operations.
  • -c, --create: Generate create operation.
  • -r, --read: Generate read operation.
  • -u, --update: Generate update operation.
  • -d, --delete: Generate delete operation.
  • -s, --set-creds: Update your Supabase credentials.

Example

Run supacrud with no options:

supacrud

Specify a table to generate CRUD ops for:

supacrud --table users

Generate create and read ops for a users table:

supacrud -t users -c -r

Generate update and read ops for a users table:

supacrud -t posts -u -d

Generate all CRUD ops for a comments table:

supacrud -t comments -a

Update your Supabase credentials:

supacrud -s

If you don't specify any flags, supacrud will prompt you to choose an operation interactively.

CRUD Operations

supacrud supports the following operations:

  1. All: Add Create, Read, Update, Delete Ops for the specified table
  2. Create: Add new records to your specified table
  3. Read: View existing records and table structure
  4. Update: Modify existing records in the table
  5. Delete: Remove records from the table

For each table, supacrud generates corresponding .ts files in the data/<table-name>/ directory containing the CRUD operations for that table.

First-Time Setup (current implementation)

When you run supacrud for the first time, it will prompt you to enter your Supabase project URL and API key. These credentials will be stored locally for future use.

In the future, supacrud will infer the Supabase project URL and API key from local storage if supabase login has been run.

Configuration

supacrud stores its configuration in:

~/.config/supacrud/config.json

This file contains your Supabase credentials.

License

This project is licensed under the MIT License