open-index/open-npm huggingface dataset:
npm package: @geoway/terrain
Description: 地形加载插件@武汉吉威空间信息技术研究院有限公司
Author: huangge
Latest version: 1.0.2

# @geoway/terrain

> geoway cesium 地形插件

## 安装

```
yarn add @geoway/terrain -S
```

## script 引用

```js
<script src="gw-terrain.js"></script>;

new GeowayTerrain.TiledTerrainProvider({
  connections: [
    {
      priority: 0,
      url:
        'http://intenal.geoway-atlas.com:31280/ime-cloud/rest/globe_world_01_14_v20/terrain' +
        '/data?level={TileMatrix}&col={TileCol}&row={TileRow}',
      credit: new Cesium.Credit('WorldTerrain'),
      rectangle: new Cesium.Rectangle.fromDegrees(-180, -90, 180, 90),
      minLevel: 1,
      maxLevel: 10,
      tileMatrixLabels: [
        '1',
        '2',
        '3',
        '4',
        '5',
        '6',
        '7',
        '8',
        '9',
        '10',
        '11',
        '12',
        '13',
        '14',
        '15',
        '16',
        '17',
        '18',
        '19'
      ]
    }
  ]
});
```

## import 引用

```js
import { TiledTerrainProvider } from '@geoway/terrain';

new TiledTerrainProvider({
  connections: [
    {
      priority: 0,
      url:
        'http://intenal.geoway-atlas.com:31280/ime-cloud/rest/globe_world_01_14_v20/terrain' +
        '/data?level={TileMatrix}&col={TileCol}&row={TileRow}',
      credit: new Cesium.Credit('WorldTerrain'),
      rectangle: new Cesium.Rectangle.fromDegrees(-180, -90, 180, 90),
      minLevel: 1,
      maxLevel: 10,
      tileMatrixLabels: [
        '1',
        '2',
        '3',
        '4',
        '5',
        '6',
        '7',
        '8',
        '9',
        '10',
        '11',
        '12',
        '13',
        '14',
        '15',
        '16',
        '17',
        '18',
        '19'
      ]
    }
  ]
});
```
npm package: @geowiki/api-proxy
Description: TypeScript client library for the GeoWiki backend API, auto-generated from the OpenAPI schema.
Latest version: 0.16.0-dev.6

# @geowiki/api-proxy

TypeScript client library for the GeoWiki backend API, auto-generated from the OpenAPI schema.

## Installation

```bash
npm install @geowiki/api-proxy
# or
pnpm add @geowiki/api-proxy
```

## Peer Dependencies

```bash
npm install axios form-data
```

## Usage

```typescript
import { ClusterService, NewsService, OpenAPI } from "@geowiki/api-proxy";

// Configure the API base URL
OpenAPI.BASE = "https://your-api-url.com";

// Use service classes to interact with the API
const clusters = await ClusterService.getClusters();
const news = await NewsService.getNews();
```

## What's Included

- **Service classes** -- `ClusterService`, `NewsService`, `UserService`, `LayerService`, `ResourceService`, and more
- **Model types** -- 160+ TypeScript types for API request/response objects (DTOs for clusters, users, layers, news, resources, etc.)
- **API utilities** -- `ApiError`, `CancelablePromise`, and `OpenAPI` configuration

## License

MIT
npm package: @geowiki/cms
Description: CMS page sections and widget components for rendering dynamic content from the GeoWiki content management system.
Latest version: 0.16.0-dev.6

# @geowiki/cms

CMS page sections and widget components for rendering dynamic content from the GeoWiki content management system.

## Installation

```bash
npm install @geowiki/cms
# or
pnpm add @geowiki/cms
```

## Peer Dependencies

```bash
npm install react react-dom next next-auth react-hook-form react-leaflet @react-leaflet/core leaflet classnames react-toastify zod @hookform/resolvers
```

## CSS Setup

Import the pre-built Tailwind CSS file in your app entry point:

```typescript
import "@geowiki/cms/styles.css";
```

## Usage

```typescript
import { Sections, useMenuItems } from "@geowiki/cms";

function Page({ sections }) {
  return <Sections sections={sections} />;
}

function Navigation() {
  const menuItems = useMenuItems();
  return <nav>{/* render menu */}</nav>;
}
```

## What's Included

- **Section renderer** -- `Sections` component that dynamically renders CMS widget arrays
- **Widget components** -- HeaderWidget, CardGridWidget, GalleryWidget, HeroWidget, NewsLetterWidget, TestimonialListWidget, FAQWidget, VideoWidget, and 30+ more
- **Recodo-specific widgets** -- FarmerClusterFinderWidget, UserInfoWidget, ClusterNewsStories, ContactCardsWidget
- **Hooks** -- `useMenuItems` for CMS-driven navigation

## Dependencies

This package depends on `@geowiki/api-proxy`, `@geowiki/cms-proxy`, `@geowiki/core`, `@geowiki/recodo`, and `@geowiki/ui`.

## License

MIT
npm package: @geowiki/cms-proxy
Description: TypeScript client library for the GeoWiki CMS backend API, auto-generated from the OpenAPI schema.
Latest version: 0.16.0-dev.6

# @geowiki/cms-proxy

TypeScript client library for the GeoWiki CMS backend API, auto-generated from the OpenAPI schema.

## Installation

```bash
npm install @geowiki/cms-proxy
# or
pnpm add @geowiki/cms-proxy
```

## Peer Dependencies

```bash
npm install axios form-data
```

## Usage

```typescript
import { DefaultService, QueryApiService, OpenAPI } from "@geowiki/cms-proxy";

// Configure the API base URL
OpenAPI.BASE = "https://your-cms-url.com";

// Fetch CMS content
const pages = await QueryApiService.getPages();
const settings = await DefaultService.getSettings();
```

## What's Included

- **Service classes** -- `DefaultService`, `QueryApiService`, `SettingsService`
- **Model types** -- 230+ TypeScript types for CMS content structures (widgets, sections, page elements, galleries, testimonials, etc.)
- **API utilities** -- `ApiError`, `CancelablePromise`, and `OpenAPI` configuration

## License

MIT
npm package: @geowiki/core
Description: Core utilities, React hooks, and state management shared across the GeoWiki application.
Latest version: 0.16.0-dev.6

# @geowiki/core

Core utilities, React hooks, and state management shared across the GeoWiki application.

## Installation

```bash
npm install @geowiki/core
# or
pnpm add @geowiki/core
```

## Peer Dependencies

```bash
npm install react react-dom next next-auth @tanstack/react-query @heroicons/react next-localization
```

## Usage

```typescript
import {
  useAppConfig,
  useClusters,
  usePermission,
  useNews,
} from "@geowiki/core";

function App() {
  const config = useAppConfig();
  const { data: clusters } = useClusters();
  const canEdit = usePermission("edit");

  return <div>{/* your app */}</div>;
}
```

## What's Included

- **React hooks** -- 50+ custom hooks for data fetching, configuration, and permissions (`useAppConfig`, `useCluster`, `useClusters`, `useNews`, `usePermission`, `useProjects`, etc.)
- **State stores** -- Zustand stores for app config, layers, settings, panels, and breadcrumbs
- **Models & types** -- `MapLayer`, `Alert`, `ClusterDto`, `GlobalSettings`, and more
- **Utilities** -- Animation helpers, service classes, and common functions

## Dependencies

This package depends on `@geowiki/api-proxy`, `@geowiki/cms-proxy`, and `@geowiki/evoland-api-proxy` for API communication.

## License

MIT
npm package: @geowiki/evoland
Description: EvoLand satellite imagery annotation and project management components for agricultural monitoring.
Latest version: 0.16.0-dev.6

# @geowiki/evoland

EvoLand satellite imagery annotation and project management components for agricultural monitoring.

## Installation

```bash
npm install @geowiki/evoland
# or
pnpm add @geowiki/evoland
```

## Peer Dependencies

```bash
npm install react react-dom next leaflet react-leaflet @geowiki/api-proxy @geowiki/core @geowiki/evoland-api-proxy @geowiki/evoland-orval-api-proxy @geowiki/map @geowiki/ui
```

## CSS Setup

Import the pre-built Tailwind CSS file in your app entry point:

```typescript
import "@geowiki/evoland/styles.css";
```

## Usage

```typescript
import { ProjectList, TaskPerLocationList } from "@geowiki/evoland";

function ProjectsPage() {
  return <ProjectList />;
}

function TasksPage({ locationId }) {
  return <TaskPerLocationList locationId={locationId} />;
}
```

## What's Included

- **Project components** -- `ProjectList`, `ProjectMap`, `Details` for EvoLand project management
- **Task components** -- `TaskPerLocationList` for location-based annotation tasks

## Dependencies

This package depends on `@geowiki/core`, `@geowiki/map`, and `@geowiki/ui` for shared components and utilities, plus `@geowiki/evoland-api-proxy` and `@geowiki/evoland-orval-api-proxy` for API communication.

## License

MIT
npm package: @geowiki/evoland-api-proxy
Description: TypeScript client library for the EvoLand satellite imaging and annotation API, auto-generated from the OpenAPI schema.
Latest version: 0.16.0-dev.6

# @geowiki/evoland-api-proxy

TypeScript client library for the EvoLand satellite imaging and annotation API, auto-generated from the OpenAPI schema.

## Installation

```bash
npm install @geowiki/evoland-api-proxy
# or
pnpm add @geowiki/evoland-api-proxy
```

## Peer Dependencies

```bash
npm install axios form-data
```

## Usage

```typescript
import { ProjectService, TaskService, OpenAPI } from "@geowiki/evoland-api-proxy";

// Configure the API base URL
OpenAPI.BASE = "https://your-evoland-api-url.com";

// Interact with EvoLand projects and tasks
const projects = await ProjectService.getProjects();
const tasks = await TaskService.getTasks(projectId);
```

## What's Included

- **Service classes** -- `ProjectService`, `TaskService`, `LocationService`, `QuestionService`, `StatisticService`, `AiService`
- **Model types** -- 75+ TypeScript types for project management, task annotation, location data, and user statistics
- **API utilities** -- `ApiError`, `CancelablePromise`, and `OpenAPI` configuration

## License

MIT
npm package: @geowiki/evoland-orval-api-proxy
Description: TypeScript client library for the EvoLand API, generated using [Orval](https://orval.dev/) with React Query integration.
Latest version: 0.16.0-dev.6

# @geowiki/evoland-orval-api-proxy

TypeScript client library for the EvoLand API, generated using [Orval](https://orval.dev/) with React Query integration.

## Installation

```bash
npm install @geowiki/evoland-orval-api-proxy
# or
pnpm add @geowiki/evoland-orval-api-proxy
```

## Peer Dependencies

```bash
npm install @tanstack/react-query axios
```

## Usage

```typescript
import { useGetProjects, useGetTasks } from "@geowiki/evoland-orval-api-proxy";

// Use React Query hooks for data fetching
function ProjectList() {
  const { data: projects } = useGetProjects();
  return <div>{projects?.map((p) => <span key={p.id}>{p.name}</span>)}</div>;
}
```

## What's Included

- **React Query hooks** -- Auto-generated hooks for all EvoLand API endpoints
- **API schemas** -- TypeScript types matching the EvoLand OpenAPI specification
- **Axios client** -- Pre-configured API client utilities

## License

MIT
npm package: @geowiki/map
Description: Mapping and geospatial visualization components for GeoWiki, built on Leaflet and React Leaflet.
Latest version: 0.16.0-dev.6

# @geowiki/map

Mapping and geospatial visualization components for GeoWiki, built on Leaflet and React Leaflet.

## Installation

```bash
npm install @geowiki/map
# or
pnpm add @geowiki/map
```

## Peer Dependencies

```bash
npm install react react-dom next next-auth leaflet react-leaflet @react-leaflet/core @tanstack/react-query react-hook-form react-hotkeys-hook zod leaflet-draw ih-leaflet-canvaslayer-field @geowiki/core @geowiki/cms-proxy @geowiki/evoland-api-proxy @geowiki/ui
```

## CSS Setup

Import the pre-built CSS file, which includes Tailwind utilities and custom map styles (popup styling, cluster icons, tooltips):

```typescript
import "@geowiki/map/styles.css";
```

You also need Leaflet's CSS:

```typescript
import "leaflet/dist/leaflet.css";
```

## Usage

```typescript
import { BasicMap, GeoWikiMap } from "@geowiki/map";

function MapPage() {
  return <BasicMap center={[48.2, 16.3]} zoom={5} />;
}
```

## What's Included

- **Map components** -- `BasicMap`, `GeoWikiMap`, `BasfMap`, `GeoTreesMap`, `CanopyMap`, `WaybackTimelineMap`
- **Layer management** -- `CustomWMS`, `GeoJsonLayer`, `OverlayLayer`, `TimeSeries`
- **EvoLand integration** -- `TiffImage`, `Annotation`, `EvolandContainer` for satellite imagery
- **Utilities** -- `BingLayer`, marker clustering, area selection, polyline measurement

## License

MIT
npm package: @geowiki/recodo
Description: Farmer cluster and resource management components for the Recodo platform -- agricultural records, community features, and content management.
Latest version: 0.16.0-dev.6

# @geowiki/recodo

Farmer cluster and resource management components for the Recodo platform -- agricultural records, community features, and content management.

## Installation

```bash
npm install @geowiki/recodo
# or
pnpm add @geowiki/recodo
```

## Peer Dependencies

```bash
npm install react react-dom next next-auth @tanstack/react-query react-toastify
```

## CSS Setup

Import the pre-built Tailwind CSS file in your app entry point:

```typescript
import "@geowiki/recodo/styles.css";
```

## Usage

```typescript
import {
  FarmerClusterList,
  FarmerClusterFinder,
  ResourceList,
} from "@geowiki/recodo";

function ClustersPage() {
  return <FarmerClusterList />;
}

function ResourcesPage() {
  return <ResourceList />;
}
```

## What's Included

- **Farmer cluster components** -- `FarmerClusterBasicInfo`, `FarmerClusterDescription`, `FarmerClusterNews`, `FarmerClusterList`, `FarmerClusterFinder`, image management, and more
- **Resource components** -- `SearchFilter`, `ResourceCard`, `ResourceCreate`, `ResourceEdit`, `ResourceList`, `ResourceView`
- **User components** -- Profile and account management
- **Feature resources** -- Specialized resource collection components

## Dependencies

This package depends on `@geowiki/api-proxy`, `@geowiki/cms-proxy`, `@geowiki/core`, `@geowiki/map`, and `@geowiki/ui`.

## License

MIT
npm package: @geowiki/ui
Description: Comprehensive React UI component library for GeoWiki applications, built with Radix UI primitives and Tailwind CSS.
Latest version: 0.16.0-dev.6

# @geowiki/ui

Comprehensive React UI component library for GeoWiki applications, built with Radix UI primitives and Tailwind CSS.

## Installation

```bash
npm install @geowiki/ui
# or
pnpm add @geowiki/ui
```

## Peer Dependencies

```bash
npm install react react-dom next next-auth react-hook-form leaflet react-leaflet @react-leaflet/core @tanstack/react-query classnames cookies-next @geowiki/api-proxy @geowiki/cms-proxy @geowiki/evoland-api-proxy
```

## CSS Setup

Import the pre-built Tailwind CSS file in your app entry point:

```typescript
import "@geowiki/ui/styles.css";
```

> **Note:** This CSS includes Tailwind `components` and `utilities` layers. Your app should provide `@tailwind base` and define the required CSS custom properties (theme variables) for colors, fonts, and spacing. See the [Tailwind Config](#tailwind-config) section below.

## Usage

```typescript
import { Button, Input, Dialog, DataTable } from "@geowiki/ui";

function MyForm() {
  return (
    <div>
      <Input placeholder="Enter your name" />
      <Button>Submit</Button>
    </div>
  );
}
```

## What's Included

- **Radix UI primitives** -- 100+ accessible components: Accordion, AlertDialog, Button, Checkbox, Dialog, DropdownMenu, Form, Input, Popover, Select, Tabs, Toast, Tooltip, and more
- **Custom components** -- MultiSelect, RichTextContent, Pagination, NewsCard, Gallery, FAQ, Carousel, Testimonials, Tags, Breadcrumb
- **Layouts** -- AdminLayout, MapLayout, Navbar variants
- **Design tokens** -- CSS variable-based theming for colors, typography, and spacing

## Tailwind Config

This library uses CSS custom properties for theming. Your app's Tailwind config should extend the shared GeoWiki config, or define these CSS variables:

```css
:root {
  --primary: #your-color;
  --secondary: #your-color;
  --background: #your-color;
  --foreground: #your-color;
  /* ... see tailwind-config package for full list */
}
```

## License

MIT