Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ncwhh/tabulator-ajax-demo
Tabulator + Node + PostgreSQL: Demo of Interactive Data Analytics Web App with Ajax Filtering, Sorting & Pagination
https://github.com/ncwhh/tabulator-ajax-demo
ajax postgresql tabulator
Last synced: 9 days ago
JSON representation
Tabulator + Node + PostgreSQL: Demo of Interactive Data Analytics Web App with Ajax Filtering, Sorting & Pagination
- Host: GitHub
- URL: https://github.com/ncwhh/tabulator-ajax-demo
- Owner: ncwhh
- Created: 2024-02-24T15:43:53.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-03-19T14:50:11.000Z (11 months ago)
- Last Synced: 2024-11-29T15:24:43.205Z (2 months ago)
- Topics: ajax, postgresql, tabulator
- Language: JavaScript
- Homepage:
- Size: 226 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Interactive Data Analytics Web App with Ajax Filtering, Sorting & Pagination
This project demonstrates a interactive data analytics web app build with [Tabulator](https://github.com/olifolkerd/tabulator), a powerful JavaScript library for creating tabular interfaces. It showcases connecting Tabulator to a [PostgreSQL](https://github.com/postgres/postgres) database for displaying large datasets with features like pagination, sorting, and filtering handled efficiently by the database.
![Demo Screenshot](screenshot.png)
## Getting Started
### Prerequisites:
* Node.js (version 20 or later recommended) - https://nodejs.org/
* Docker - https://www.docker.com/### Running the Demo:
**1. Database**
```bash
cd database
bash build.sh # build docker image
bash run.sh # run docker container
```**2. Backend**
```bash
cd backend
npm install # install dependencies
npm run dev # start development server
```**3. Frontend**
```bash
cd frontend
npm install # install dependencies
npm run dev # start development server
```## Data
The web app shows dummy data generated with [Faker.js](https://github.com/faker-js/faker) to represent a webshop's [conversion funnel](https://en.wikipedia.org/wiki/Purchase_funnel).## Security
This is a demonstration project, and security best practices are not fully implemented. However, to mitigate potential SQL injection vulnerabilities, basic Ajax parameter validation with regular expressions is included.