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

astro-cloudinary

v1.3.0

Published

<a href="https://github.com/cloudinary-community/astro-cloudinary/actions/workflows/test_and_release.yml"><img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/cloudinary-community/astro-cloudinary/test_and_release.y

Downloads

2,033

Readme

Astro Cloudinary

High-performance image delivery and uploading at scale in Astro powered by Cloudinary.

FeaturesGetting StartedCommunity & SupportContributing

This is a community library supported by the Cloudinary Developer Experience team.

✨ Features

  • Automatically optimize images and deliver in modern formats
  • Remove backgrounds from images
  • Dynamically add image and text overlays to images
  • AI-based cropping and resizing
  • Transform images using color and effects
  • Generate Open Graph Social Media cards on the fly
  • Drop-in Upload Widget
  • ...all at scale with Cloudinary

🚀 Getting Started

Installation

  • Install astro-cloudinary with:
npm install astro-cloudinary
  • Add an environment variable with your Cloud Name:
PUBLIC_CLOUDINARY_CLOUD_NAME="<Your Cloud Name>"

Adding an Image

import { CldImage } from 'astro-cloudinary';

<CldImage width="600" height="600" src="<Public ID or Cloudinary URL>" alt="<Alt Text>" />

Learn more about CldImage on the Astro Cloudinary Docs

❤️ Community & Support

🛠 Contributing

Please read CONTRIBUTING.md prior to contributing.

Working Locally

Installation

This project is using pnpm as a way to manage dependencies and workspaces.

With the project cloned, install the dependencies from the root of the project with:

pnpm install

Configuration

To work on the project, you need to have an active Cloudinary account.

With the account, configure a .env file inside of docs with:

PUBLIC_CLOUDINARY_CLOUD_NAME="<Your Cloudinary Cloud Name>"
PUBLIC_CLOUDINARY_API_KEY="<Your Cloudinary API Key>"
CLOUDINARY_API_SECRET="<Your Cloudinary API Secret>"

PUBLIC_ASSETS_DIRECTORY="assets"

Note: The Cloudinary account can be free, but some features may not work beyond free tier like Background Removal without enabling the add-on

The Cloud Name is required for all usage, where the API Key and Secret currently is only used for Upload Widget usage. The Upload Preset is additionally used for the Upload Widgets.

Uploading Example Images

In order to run the Docs project, you need to have the images and videos referenced available inside of your Cloudinary account.

Most of the images and videos used in the project take advantage of the sample assets included in every Cloudinary account, so some may work out-of-the-box, but not all.

To upload the remaining assets, navigate to the scripts directory and first create a new .env file with:

CLOUDINARY_CLOUD_NAME="<Your Cloudinary Cloud Name>"
CLOUDINARY_API_KEY="<Your API Key>"
CLOUDINARY_API_SECRET="<Your API Secret>"

By default, the images and videos inside of scripts/assets.json will be uploaded to the "assets" directory inside of your Cloudinary account. To change the location, add the CLOUDINARY_ASSETS_DIRECTORY environment variable with your preferred directory:

CLOUDINARY_ASSETS_DIRECTORY="<Your Directory>"

Note: You will then need to update the /docs/.env file to reference the same directory.

To run the script, install the dependencies:

pnpm install

Then run the upload script with:

pnpm upload

Uploading Example Collections

Collections are groups of images that are showcased using the cldAssetsLoader helper.

The directories that make up the sample images include too many images to reasonably ask a contributor to upload.

We have a few options then.

  1. Skip uploading the collections

If you're not working on cldAssetsLoader, or you can test using the single example that utilizes the samples directory, you may not need to worry about this.

  1. Change the collections location

You could update these directories in the docs/src/content/config.ts file to directories that already exist in your account, such as other sample directories.

  1. Upload Manually

If you want to have assets available to test this out, you can create the following directories and include some assets inside.

  • collection
  • ecommerce/fashion
  • ecommerce/sneakers

A good way to handle this is to download some images from Unsplash or your favorite stock photo site.

Running the Project

Once installed and configured, from the root of your project run:

pnpm dev

The project will now be available at http://localhost:4321 or the configured local port.

Contributors