{"id":17660982,"url":"https://github.com/soulteary/njs-learning-materials","last_synced_at":"2025-05-07T08:13:34.685Z","repository":{"id":42937485,"uuid":"328297832","full_name":"soulteary/njs-learning-materials","owner":"soulteary","description":"List some learning materials to help you step into the world of njs.","archived":false,"fork":false,"pushed_at":"2021-11-14T09:41:08.000Z","size":14,"stargazers_count":65,"open_issues_count":0,"forks_count":7,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-05-07T08:13:29.653Z","etag":null,"topics":["nginx","njs"],"latest_commit_sha":null,"homepage":"","language":null,"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/soulteary.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-01-10T03:48:36.000Z","updated_at":"2025-04-24T14:59:03.000Z","dependencies_parsed_at":"2022-08-24T00:40:41.694Z","dependency_job_id":null,"html_url":"https://github.com/soulteary/njs-learning-materials","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soulteary%2Fnjs-learning-materials","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soulteary%2Fnjs-learning-materials/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soulteary%2Fnjs-learning-materials/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soulteary%2Fnjs-learning-materials/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/soulteary","download_url":"https://codeload.github.com/soulteary/njs-learning-materials/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252839296,"owners_count":21812090,"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":["nginx","njs"],"created_at":"2024-10-23T17:09:51.980Z","updated_at":"2025-05-07T08:13:34.661Z","avatar_url":"https://github.com/soulteary.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# NJS Learning Materials\n\nList some learning materials to help you step into the world of njs. Thanks to these open source authors and engineer of Nginx/F5, inc.\n\n## Docs / Repo\n\n- [nginx.org/en/docs/njs/](https://nginx.org/en/docs/njs/) An official nginx docs for njs.\n- [github.com/nginx/njs](https://github.com/nginx/njs) An official read-only mirror of `http://hg.nginx.org/njs/` which is updated hourly.\n\n## Example\n\n- [xeioex/njs-examples](https://github.com/xeioex/njs-examples) Maintained by nginx,inc engineer [@Dmitry Volyntsev](https://github.com/xeioex), contains examples from official documentation. Project started at [24 Sep 2018](https://github.com/xeioex/njs-examples/commit/be03b8245fc5e6e6e8bdfabd50e1d733a87c23e2).\n- [zongzw-nginx/nginx-njs-usecases](https://github.com/zongzw-nginx/nginx-njs-usecases) Maintained by F5,inc engineer [@zongzw](https://github.com/zongzw), use `docker` and `docker-compose` to demonstrate some usage scenarios of njs.Project started at [Mar 9, 2020](https://github.com/zongzw-nginx/nginx-njs-usecases/commits/master/LICENSE).\n- [nginxinc/nginx-s3-gateway](https://github.com/nginxinc/nginx-s3-gateway) Maintained by nginx,inc engineer [@Elijah Zupancic](https://github.com/dekobon), illustrates setting up a S3 Gateway using njs and creating njs unit tests.\n\n## Project\n\n- [Nginx RSA Encryption](https://github.com/soulteary/nginx-rsa-encryption) by [@soulteary](https://github.com/soulteary)\n- [Nginx DNS](https://github.com/TuxInvader/nginx-dns) by [@TuxInvader](https://github.com/TuxInvader)\n- [Nginx DDNS](https://github.com/soulteary/njs-ddns-service) by [@soulteary](https://github.com/soulteary)\n- [LDAP Auth](https://github.com/floffel/nla) by [@floffel](https://github.com/floffel)\n- [S3 Proxy](https://github.com/dedok/nginx-s3) by [@Vasiliy Soshnikov](https://github.com/dedok)\n- [JWT](https://github.com/lombax85/nginx-jwt) by [@lombax85](https://github.com/lombax85)\n- [Mod Security](https://github.com/sreinfrasystemjp/docker-nginx-modsecurity) by [@ihironao](https://github.com/ihironao)\n- [OAuth/OIDC Proxy](https://github.com/kaz/nginx-njs-oidc-proxy) by [@kaz](https://github.com/kaz)\n- [NJS TypeScript Definition](https://github.com/patricknelson/nginx-njs-typescript) by [@Patrick Nelson](https://github.com/patricknelson)\n- [MQTT Client Auth](https://github.com/casandberg/NGINX-mqtt-client-auth-with-SSL) by [@Chris Sandberg](https://github.com/casandberg)\n- [Nginx/NJS Binares](https://github.com/jirutka/nginx-binaries) by [@Jakub Jirutka](https://github.com/jirutka)\n- [Docker v2 Registry](https://github.com/psvmcc/static_docker_v2_registry) by [@Skitsanos](https://github.com/skitsanos)\n- [Babel Preset](https://github.com/jirutka/babel-preset-njs) by [@Jakub Jirutka](https://github.com/jirutka)\n- [OpenResty with NJS](https://github.com/skitsanos/openresty-njs) by [@Skitsanos](https://github.com/skitsanos)\n- [UML Diagram Renderer](https://github.com/soulteary/docker-nomnoml)\n    - Docker Nomnoml is a simple but elegant self-hosted UML Generator \u0026 UML Sharing solution. This Project use NJS to provide server-side generation function.\n    - NJS compatible: 0.5.0+\n- [JSONRPC gateway](https://github.com/sah4ez/nginx-rpc-gateway) by [@sah4ez](https://github.com/sah4ez)\n\n## Docker Image\n\n- [nginxinc/docker-nginx](https://github.com/nginxinc/docker-nginx) An official nginx docker images, contains njs executable files.\n    - Registry: https://hub.docker.com/_/nginx\n- [soulteary/docker-njs](https://github.com/soulteary/docker-njs) Maintained by soulteary, minimal image containing only njs executable files for development and debugging.\n    - Registry: https://hub.docker.com/r/soulteary/docker-njs\n    - HowTo: https://soulteary.com/2021/01/10/let-us-start-with-the-mirroring-of-the-nginx-njs-tool-package.html\n\n## Alternative\n\n\u003e Independent project maintained by nginx fans.\n\n- Maintained by [@Peter Leonov](https://github.com/peter-leonov) at [4 Dec 2008](https://github.com/peter-leonov/ngx_http_js_module/commit/a5e13174211f26e0b821701c972715ebd8adbb2a), full port of [ngx_http_perl_module](http://nginx.org/en/docs/http/ngx_http_perl_module.html): [peter-leonov/ngx_http_js_module](https://github.com/peter-leonov/ngx_http_js_module)\n- Maintained by [@webcpp](https://github.com/webcpp) at [Apr 6, 2017](https://github.com/webcpp/hi-nginx/commit/18e478ccf4578d1136a2ea0e06f4535c7261b749#diff-a7a55a3590638a4406be827f58ad2a2b4724f42e00753b9a88d470dabf3133e9), use various languages to extend nginx as an application server: [webcpp/hi-nginx](https://github.com/webcpp/hi-nginx)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoulteary%2Fnjs-learning-materials","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsoulteary%2Fnjs-learning-materials","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoulteary%2Fnjs-learning-materials/lists"}