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

lilypad

v0.6.2

Published

the front end framework for Madadata's BI platform

Downloads

3

Readme

lilypad

CircleCI JavaScript Style Guide

Project Structure

Lilypad Apps and Ecosystem

因为我们要做闭环,要做生态

  • https://github.com/Madadata/lilypad-interactive-card-builder
  • https://github.com/Madadata/lilypad-map-card
  • https://github.com/Madadata/lilypad-chart-card-builder
  • https://github.com/Madadata/lilypad-app-store
  • https://github.com/Madadata/lilypad-app-dashboard
  • https://github.com/Madadata/lilypad-app-blade-card
  • https://github.com/Madadata/lilypad-csv-uploader
  • https://github.com/Madadata/lilypad-modeling
  • https://github.com/Madadata/lilypad-metric-card
  • https://github.com/Madadata/lilypad-chart-card
  • https://github.com/Madadata/lilypad-data-center
  • https://github.com/Madadata/lilypad-util
  • https://github.com/Madadata/lilypad-client
  • https://github.com/Madadata/lilypad-sample-data

Deployment

The build is on DockerHub

docker pull mada/lilypad

and also on DaoCloud:

docker pull daocloud.io/madadata/lilypad

Concepts

.
└── Group
  └── Board
      └── Card
          ├── ChartCard
          ├── MetricCard
          └── SortingTableCard
  • Group: a collections of Board -> sections in Domo, page in Domo.
  • Board: a placeholder for collections of Card -> sub-page in Domo.
  • Card: a displaying unit. -> card in Domo.

Naming Conventions

  • Card: Name${CardName}

How to Start

development

  1. Webpack first
  2. start all the docker services
  • export aws env variables
export AWS_SECRET_ACCESS_KEY='any_value_is_ok'
export AWS_ACCESS_KEY_ID='any_value_is_ok'
  • export douban env variables
export CALLBACK_URL_PREFIX='http://127.0.0.1:3000/third-party/callback'
export DOUBAN_CLIENT_ID='douban client id'
export DOUBAN_CLIENT_SECRET='douban client secret'
  • login docker first (your docker user id should in mada), ask for permission if not so
  • run lilypad_start.sh
./lilypad_start.sh
# in case the final cmd in lilypad_start.sh failed, just run it again a few seconds later.

yarn

npm run build
  1. start lilypad
npm start

app development

make sure you have followed the instructions in development section. Then just do

./lilypad_app_start.sh

production

In production, fake-leancloud-auth are replaced by real leancloud service. Therefore, you have to provide leancloud appId and appKey through environment variables -

npm run build
LEANCLOUD_APP_ID=your_app_id LEANCLOUD_APP_KEY=your_app_key npm run start:prod

docker build

Environment Variables

| name | description | example | |-------------------------|---------------------------|-----------------------------------| | LEANCLOUD_APP_KEY | app key of LeanCloud app | wm03Mel0UCyNr2rkjd2OVmjW | | LEANCLOUD_APP_ID | app id of LeanCloud app | khFeY6fqCpsEvb4kI4RAJ7HU-gzGzoHsz | | LEANCLOUD_URL | LeanCloud url | https://api.leancloud.cn | | TURBINE_URL | turbine url | http://turbine:8080 | | BEETLE_URL | beetle url | http://beetle:8080 | | REDIS_URL | redis url | redis://redis:6379 |

docker build -t lilypad .
docker run -d -p 3000:3000 \
  -e LEANCLOUD_APP_KEY=YOUR_LEANCLOUD_APP_KEY \
  -e LEANCLOUD_APP_ID=YOUR_LEANCLOUD_APP_ID \
  lilypad

API

Mount Point

All api services provided will be mounted on /api. Only request with valid basic authorization field is allowed.

  • /card

    • GET: query list of cards
    • POST: create single card
      • body: graphQL
  • /card/:id

    • GET: query single card
    • POST: update single card // not implemented yet
  • /board

    • GET: query list of boards
    • POST: create single board
      • body: graphQL
  • /board/:id

    • GET: query single board
    • POST: create single board
      • body: graphQL
  • /data-set

    • GET: query list of datasets
    • POST: create single dataset
      • body: graphQL
  • /data-set/:id

    • GET: query single dataset
  • /account

    • GET: query list of accounts
    • POST: create single account
      • body: graphQL
  • /account/:id

    • GET: query single account
    • POST: update single account // not implemented yet
  • /data

    • POST: upload csv data
      • query: dataSetIds[, type]
      • form: multiparty-formdata
    • GET: query data by data accessor or sql
      • query: type, (dataAccessor | query)
  • /etl/sync

    • GET: sync dataset
  • /connectors

    • GET: query list of connectors
  • /:connector/tables

    • GET: query list of tables
  • /version

    • GET: query versions of backend services