{"id":18327210,"url":"https://github.com/dalikewara/ayapingping-js","last_synced_at":"2025-10-10T21:33:38.549Z","repository":{"id":54175644,"uuid":"269961843","full_name":"dalikewara/ayapingping-js","owner":"dalikewara","description":"A starter pack framework in NodeJS to build REST API applications","archived":false,"fork":false,"pushed_at":"2022-08-29T17:56:54.000Z","size":87,"stargazers_count":8,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-21T14:23:19.822Z","etag":null,"topics":["application","ayapingping","express","framework","javascript","nodejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dalikewara.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":"dalikewara","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2020-06-06T11:34:35.000Z","updated_at":"2024-01-26T12:24:19.000Z","dependencies_parsed_at":"2022-08-13T08:20:49.681Z","dependency_job_id":null,"html_url":"https://github.com/dalikewara/ayapingping-js","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalikewara%2Fayapingping-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalikewara%2Fayapingping-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalikewara%2Fayapingping-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalikewara%2Fayapingping-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dalikewara","download_url":"https://codeload.github.com/dalikewara/ayapingping-js/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247423472,"owners_count":20936621,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["application","ayapingping","express","framework","javascript","nodejs"],"created_at":"2024-11-05T19:09:57.767Z","updated_at":"2025-10-10T21:33:33.511Z","avatar_url":"https://github.com/dalikewara.png","language":"JavaScript","funding_links":["https://github.com/sponsors/dalikewara"],"categories":[],"sub_categories":[],"readme":"# AyaPingPing JS\n\nA starter pack framework in NodeJS for building REST API applications.\n\n[![npm package](https://nodei.co/npm/ayapingping-js.png?downloads=true\u0026downloadRank=true\u0026stars=true)](https://nodei.co/npm/ayapingping-js/)\n\n[![version](https://img.shields.io/npm/v/ayapingping-js.svg?style=flat)](https://img.shields.io/npm/v/ayapingping-js.svg?style=flat)\n[![build](https://img.shields.io/circleci/project/github/dalikewara/ayapingping-js.svg?style=flat)](https://img.shields.io/circleci/project/github/dalikewara/ayapingping-js.svg?style=flat)\n[![language](https://img.shields.io/github/languages/top/dalikewara/ayapingping-js.svg?style=flat)](https://img.shields.io/github/languages/top/dalikewara/ayapingping-js.svg?style=flat)\n[![download](https://img.shields.io/npm/dt/ayapingping-js.svg?style=flat)](https://img.shields.io/npm/dt/ayapingping-js.svg?style=flat)\n[![dependents](https://img.shields.io/librariesio/dependents/npm/ayapingping-js.svg?style=flat)](https://img.shields.io/librariesio/dependents/npm/ayapingping-js.svg?style=flat)\n[![issue](https://img.shields.io/github/issues/dalikewara/ayapingping-js.svg?style=flat)](https://img.shields.io/github/issues/dalikewara/ayapingping-js.svg?style=flat)\n[![last_commit](https://img.shields.io/github/last-commit/dalikewara/ayapingping-js.svg?style=flat)](https://img.shields.io/github/last-commit/dalikewara/ayapingping-js.svg?style=flat)\n[![license](https://img.shields.io/npm/l/ayapingping-js.svg?style=flat)](https://img.shields.io/npm/l/ayapingping-js.svg?style=flat)\n\n```javascript\nconst appjs = require('ayapingping-js')(__dirname);\n\nappjs.get('/my-route', 'myController');\n\nappjs.listen();\n```\n\n# Features\n\n - Using the power of [ExpressJS](https://github.com/expressjs/express)\n - Allows you to use most of ExpressJS operations (using `express` function)\n - Easy implementation \u0026 customization\n - Controller-based routing\n - Focus on simplicity \u0026 performance\n - Plugin mechanism (custom plugin \u0026 built in plugin)\n - Executable for generating applications project structure quickly (`./node_modules/.bin/ayapingping-js-create`)\n\n# Docs\n\n - For full documentation, visit the [Wiki](https://github.com/dalikewara/ayapingping-js/wiki)\n\n# Getting started\n\n### Installation\n\n`ayapingping-js` tersedia di *NPM package manager*. Untuk meng*install*, pertama buat dulu *folder project* Anda dan masuk kedalam *folder* tersebut:\n\n```bash\nmkdir my-project\ncd my-project\n```\n\nKemudian, install `ayapingping-js` dengan perintah berikut:\n\n```bash\nnpm install ayapingping-js\n```\n\nSetelah proses *install* berhasil, eksekusi perintah berikut untuk membuat *working directory* dari `ayapingping-js`:\n\n```bash\n./node_modules/.bin/ayapingping-js-create\n```\n\nPerintah diatas akan membuat *folders* dan *files* baru seperti: `app.js`, `.env`, `controllers`, dll yang dibutuhkan untuk memulai menggunakan `ayapingping-js`.\n\n### Getting the latest version\n\nGunakan perintah berikut untuk melakukan *update* `ayapingping-js` ke versi yang terbaru:\n\n```bash\nnpm update ayapingping-js\n```\n\n# Basic usage\n\n`ayapingping-js` berbasis `ExpressJS`. Bagi yang familiar dengan `ExpressJS` tentu akan lebih mudah. Untuk menggunakan `ayapingping-js`, silahkan *install* terlebih dahulu sesuai dengan petunjuk installasi diatas. Masuk ke *folder project* Anda, kemudian buka terminal baru dan eksekusi file `app.js` menggunakan perintah berikut ini untuk menjalankan aplikasi:\n\n```bash\nnode app.js\n```\n\nAnda juga bisa menggunakan `pm2` untuk menjalankan `ayapingping-js`. Contoh:\n\n```bash\npm2 start app.js\n```\n\nJika berhasil, maka akan muncul keterangan \"Application is live!\" seperti ini:\n\n![https://lh3.googleusercontent.com/pw/ACtC-3fXyv2-V38wmHj798L2v3rf_d_wel3p2qIlZY5QiuW5ugQT_Lt_DM9OitVxRIOR6wwDStl0bmdnyFPu4jmsqBvWRUo2W9rUdPMt_JuoGsQUi4DUp6VRjienxLK3ysuXfv9svqeXNtReyVF7hXYPChR7=w714-h214-no](https://lh3.googleusercontent.com/pw/ACtC-3fXyv2-V38wmHj798L2v3rf_d_wel3p2qIlZY5QiuW5ugQT_Lt_DM9OitVxRIOR6wwDStl0bmdnyFPu4jmsqBvWRUo2W9rUdPMt_JuoGsQUi4DUp6VRjienxLK3ysuXfv9svqeXNtReyVF7hXYPChR7=w714-h214-no)\n\nAnda kemudian dapat melakukan *request* ke `url` dan `port` tersebut\u0026mdash;Anda juga bisa *test* dengan membuka browser ke -\u003e http://localhost:3000.\n\n### Simple routing (`ayapingping-js` style)\n\nAnda bisa membuat *route* sederhana di `app.js` dengan format seperti berikut:\n\n```javascript\nappjs.get('/my-route', 'myRouteController');\n```\n\nKemudian, di *folder* `controller` buat *file* bernama `myRouteController.js` dan isikan:\n\n```javascript\n'use strict';\n\nmodule.exports = function(proto, req, res, next) {\n  res.send('Hello world!');\n};\n```\n\n*Route* baru berhasil dibuat. Jika Anda mengakses *route* `GET '/my-route'`, maka Anda akan mendapatkan *response* \"Hello world!\".\n\n\u003e `ayapingping-js` adalah *controller-based*. Jadi setiap *route* harus memiliki *controller* untuk meng*handle* *logic* utamanya.\n\n### Simple routing (`ExpressJS` style)\n\nAnda juga bisa membuat *route* di `app.js` dengan gaya `ExpressJS` seperti berikut ini:\n\n```javascript\nappjs.express((proto, app) =\u003e {\n  // ExpressJS style\n  app.get('/my-route', (req, res, next) =\u003e {\n    res.send('Hello world!');\n  });\n  app.get('/my-route-2', (req, res, next) =\u003e {\n    res.send('Hello world! Again!');\n  });\n});\n```\n\n# Contributing\n\nFollow the Contributing Guide (updated soon).\n\n### People\n\nThanks to all people who took their time to contribute to this project.\n\n[List of all contributors](https://github.com/dalikewara/ayapingping-js/graphs/contributors)\n\n# Release\n\n### Changelog\n\nRead at [CHANGELOG.md](https://github.com/dalikewara/ayapingping-js/blob/master/CHANGELOG.md)\n\n### Credits\n\nCopyright \u0026copy; 2020 - 2021 [Dali Kewara](https://www.dalikewara.com)\n\n### License\n\n[MIT License](https://github.com/dalikewara/ayapingping-js/blob/master/LICENSE)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdalikewara%2Fayapingping-js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdalikewara%2Fayapingping-js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdalikewara%2Fayapingping-js/lists"}