Skip to content

national-data-platform/ep-frontend

Repository files navigation

National Data Platform - EndPoint Admin Console (NDP-EP Frontend)

A React-based administrative web interface for managing and monitoring NDP-EP API instances. This console provides system administrators with comprehensive tools to manage datasets, organizations, services, and system health across multiple CKAN environments.

🌐 About the NDP-EP Admin Console

The NDP-EP Admin Console is designed specifically for system administrators who need to:

  • 🔧 Manage API Instances: Configure and monitor NDP-EP API deployments
  • 📊 Administer Catalogs: Control datasets across Local CKAN, Pre-CKAN, and NDP Central environments
  • 🏢 Organization Management: Create and manage organizational structures within CKAN instances
  • 🔍 System Monitoring: Monitor API health, connectivity, and service status
  • ⚙️ Service Registry: Register and manage microservices, APIs, and applications
  • 🚀 Resource Administration: Bulk manage Kafka topics, S3 resources, and URL resources

⚡ Quick Start for Administrators

Deploy the admin console for your NDP-EP API instance in under 5 minutes:

Prerequisites

  • Docker (for production deployment)
  • Running NDP-EP API instance

Option 1: Docker Hub (Production Ready)

# Deploy with custom NDP-EP API URL  
docker run -p 3000:80 \
  -e NDP_EP_API="https://your-ndp-api.company.com" \
  rbardaji/ndp-ep-frontend:latest

Access the admin console: http://localhost:3000

Option 2: Local Development

# Clone the repository
git clone https://github.com/your-username/ndp-ep-frontend.git
cd ndp-ep-frontend

# Install dependencies
npm install

# Configure API endpoint (optional)
echo "REACT_APP_API_BASE_URL=http://localhost:8003" > .env.local

# Start development server
npm start

Access the admin console: http://localhost:3000

Option 3: Docker Compose (Recommended)

Create a docker-compose.yml file:

version: '3.8'

services:
  frontend:
    image: rbardaji/ndp-ep-frontend:latest
    ports:
      - "80:80"
    environment:
      - NDP_EP_API=https://api.your-domain.com
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:80/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s

Run with:

docker-compose up -d

Option 4: Full Stack with Backend

version: '3.8'

services:
  frontend:
    image: rbardaji/ndp-ep-frontend:latest
    ports:
      - "3000:80"
    environment:
      - NDP_EP_API=http://backend:8000
    depends_on:
      - backend
    restart: unless-stopped

  backend:
    image: rbardaji/ndp-ep-api:latest
    ports:
      - "8001:8000"
    environment:
      - ORGANIZATION=Your Organization
      - CKAN_LOCAL_ENABLED=False
      - PRE_CKAN_ENABLED=True
      - PRE_CKAN_URL=https://preckan.nationaldataplatform.org
      - PRE_CKAN_API_KEY=your-api-key
    restart: unless-stopped

⚙️ Configuration

Environment Variables

Variable Description Default Example
NDP_EP_API Backend API URL http://localhost:8003 https://api.example.com

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


For more information about the National Data Platform, visit nationaldataplatform.org

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages