Skip to content

mrbrightsides/rantai-datahub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

36 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

RANTAI DataHub ๐Ÿ“ˆ - Advanced Tourism Data Processing Platform

Version License Next.js TypeScript SpacetimeDB Build Status Docker Python React License: MIT Data Sources

Intelligent tourism data aggregation, normalization, and visualization platform with real-time collaboration

Features โ€ข Quick Start โ€ข API Docs โ€ข Architecture โ€ข Contributing


๐Ÿ“– Overview

STC DataHub adalah platform canggih untuk agregasi, normalisasi, dan visualisasi data pariwisata dari berbagai sumber. Dilengkapi dengan AI-powered insights, real-time collaboration, dan interactive visualizations yang membuat data tourism menjadi hidup!

๐ŸŽฏ Key Highlights

  • ๐Ÿ”„ Real-time Collaboration - Multi-user collaboration powered by SpacetimeDB
  • ๐Ÿค– AI-Powered Insights - Smart recommendations & data quality analysis
  • ๐Ÿ—บ๏ธ Interactive Maps - Leaflet-based geographic visualization with heatmaps
  • ๐Ÿ“Š Custom Dashboards - Drag-and-drop widget builder
  • ๐ŸŒ Multi-language - Full i18n support (English & Indonesian)
  • ๐Ÿ”— REST API - Public API endpoints for data sharing
  • ๐Ÿ“ฆ 7-Format Export - CSV, JSON, Excel, SQL, XML, NDJSON, Parquet

โœจ Features

๐Ÿš€ Data Processing Pipeline

5-stage intelligent pipeline:

  1. Fetch - Connect to real data sources (REST Countries, OpenStreetMap, Open Brewery)
  2. Validate - Schema validation & data quality checks
  3. Normalize - Intelligent field mapping & standardization
  4. Enrich - Add metadata, geocoding, categorization
  5. Store - Persist to database with versioning

๐Ÿ“Š Visualization Suite

  • Interactive Maps - Pin-based geographic visualization with Leaflet
  • Heatmap Analysis - Density visualization for tourism hotspots
  • Charts & Graphs - Distribution, trends, and comparative analytics
  • Before/After Preview - Data transformation showcases
  • Real-time Feed - Live processing intelligence updates

๐Ÿ” Advanced Features

  • Multi-criteria Filtering - Search, category, country, price, rating filters
  • Data Export - 7 formats with filtered data support
  • AI Recommendations - Pattern detection & actionable insights
  • Custom Dashboards - Personalized widget layouts
  • Real-time Collaboration - See other users & live changes
  • Public REST API - Share data via HTTP endpoints

๐ŸŒ Multi-language Support

Full UI translation in:

  • ๐Ÿ‡ฌ๐Ÿ‡ง English
  • ๐Ÿ‡ฎ๐Ÿ‡ฉ Bahasa Indonesia

๐Ÿš€ Quick Start

Prerequisites

  • Node.js 18+
  • npm/yarn/pnpm
  • SpacetimeDB CLI (optional, for collaboration features)

Installation

# Clone repository
git clone https://github.com/yourusername/stc-datahub.git
cd stc-datahub

# Install dependencies
npm install

# Run development server
npm run dev

Open http://localhost:3000 ๐ŸŽ‰

SpacetimeDB Setup (Optional)

For real-time collaboration features:

# Install SpacetimeDB CLI
curl --proto '=https' --tlsv1.2 -sSf https://install.spacetimedb.com | sh

# Start local SpacetimeDB server
spacetime start

# Publish module
cd spacetime-server
spacetime publish stc-datahub --clear-database

# Module will auto-connect from Next.js app

๐Ÿ“š Documentation


๐Ÿ—๏ธ Tech Stack

Frontend

  • Next.js 15 - React framework with App Router
  • TypeScript - Type-safe development
  • Tailwind CSS - Utility-first styling
  • shadcn/ui - Component library
  • Recharts - Data visualization
  • Leaflet - Interactive maps
  • react-grid-layout - Dashboard builder
  • i18next - Internationalization

Backend & Data

  • SpacetimeDB - Real-time database & collaboration
  • REST API - Data sharing endpoints
  • Real Data Sources:
    • REST Countries API
    • OpenStreetMap Overpass API
    • Open Brewery DB

AI & Analytics

  • Custom pattern detection engine
  • Data quality analyzer
  • Smart recommendations system

โš™๏ธ Pipeline

flowchart TD
    A["Register Source"] --> B["Fetch"]
    B --> C["Validate robots.txt & License"]
    C --> D["Normalize via Mapping Template"]
    D --> E["Enrich Web3 Fields (optional)"]
    E --> F["Store Raw + Normalized"]
    F --> G["Provenance Log"]
    G --> H["Preview & Download"]
Loading
flowchart TD
    A[๐Ÿ‘ฉโ€๐Ÿ’ป Users\nResearchers / Devs / Communities] --> B[๐Ÿ“Š STC DataHub\nDiscover ยท Fetch ยท Normalize ยท Store]
    C[Kaggle\nGov Portals\ndata.go.id] --> B
    D[Garuda Kemdikbud\nAcademic Repos] --> B
    E[OpenStreetMap\nInsideAirbnb\nOther APIs] --> B
    B --> F[๐Ÿ“ˆ Analytics & Insights\nDashboards, Reports]
    B --> G[๐ŸŽ“ Research & Education\nOpen Data for Academia]
    B --> H[๐ŸŒ Web3 Ecosystem\nSmart Contracts, dApps, NFT Tourism]
Loading

๐ŸŽฏ Use Cases

Tourism Industry

  • Destination Discovery - Find and analyze tourism attractions
  • Market Research - Compare destinations, pricing, ratings
  • Data Standardization - Normalize disparate data sources

Data Analysis

  • Geographic Analysis - Heatmaps and spatial distributions
  • Trend Analysis - Rating trends, pricing patterns
  • Quality Control - Data completeness and accuracy checks

Collaboration

  • Team Workflows - Real-time multi-user data processing
  • Shared Insights - Collaborative analysis and annotations
  • Live Updates - See changes as they happen

๐Ÿ“ฆ Project Structure

stc-datahub/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ app/                    # Next.js App Router
โ”‚   โ”‚   โ”œโ”€โ”€ api/                # API routes
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ data-share/     # Public data API
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ stats/          # Statistics API
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ proxy/          # External API proxy
โ”‚   โ”‚   โ”œโ”€โ”€ layout.tsx          # Root layout
โ”‚   โ”‚   โ””โ”€โ”€ page.tsx            # Main dashboard
โ”‚   โ”œโ”€โ”€ components/
โ”‚   โ”‚   โ”œโ”€โ”€ dashboard/          # Dashboard components
โ”‚   โ”‚   โ”œโ”€โ”€ visualization/      # Charts, maps, heatmaps
โ”‚   โ”‚   โ”œโ”€โ”€ collaboration/      # Real-time features
โ”‚   โ”‚   โ””โ”€โ”€ ui/                 # shadcn/ui components
โ”‚   โ”œโ”€โ”€ lib/
โ”‚   โ”‚   โ”œโ”€โ”€ real-data-sources.ts      # API connectors
โ”‚   โ”‚   โ”œโ”€โ”€ data-export-utils.ts      # Export utilities
โ”‚   โ”‚   โ”œโ”€โ”€ ai-insights-engine.ts     # AI analysis
โ”‚   โ”‚   โ””โ”€โ”€ i18n.ts                   # Translations
โ”‚   โ”œโ”€โ”€ spacetime_module_bindings/    # SpacetimeDB client
โ”‚   โ””โ”€โ”€ hooks/                         # Custom React hooks
โ”œโ”€โ”€ spacetime-server/
โ”‚   โ””โ”€โ”€ src/
โ”‚       โ””โ”€โ”€ lib.rs              # SpacetimeDB Rust module
โ”œโ”€โ”€ public/                     # Static assets
โ””โ”€โ”€ docs/                       # Additional documentation

๐Ÿ”— API Endpoints

GET /api/data-share

Fetch tourism data with filtering & pagination.

# Example
curl "http://localhost:3000/api/data-share?category=hotel&country=Indonesia&page=1&limit=10"

GET /api/stats

Get aggregated statistics.

curl "http://localhost:3000/api/stats"

See API_DOCS.md for complete documentation.


๐Ÿค Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.

Quick Contribution Steps

  1. Fork the repository
  2. Create feature branch: git checkout -b feature/amazing-feature
  3. Commit changes: git commit -m 'Add amazing feature'
  4. Push to branch: git push origin feature/amazing-feature
  5. Open Pull Request

๐Ÿ“„ License

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


๐Ÿ™ Acknowledgments

  • SpacetimeDB - Real-time database infrastructure
  • shadcn/ui - Beautiful component library
  • Leaflet - Open-source mapping
  • REST Countries - Country data API
  • OpenStreetMap - Geographic data

๐Ÿ“ž Support


๐Ÿ—บ๏ธ Roadmap

  • Additional data source connectors
  • Machine learning model integration
  • Advanced data transformation rules
  • Team workspaces & permissions
  • Mobile app (React Native)
  • GraphQL API
  • Data versioning & time travel
  • Export scheduling & automation

Made with โค๏ธ by the STC DataHub Team

โญ Star us on GitHub if you find this project useful!

About

scraper website data by RANTAI

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages