OAuth Middleware for Express, Koa and Hapi
oauth oauth2 authentication middleware express koa hapi oauth2-clientApollo Server is a community-maintained open-source GraphQL server. It works with pretty much all Node.js HTTP server frameworks, and we're happy to take PRs for more! It works with any GraphQL schema built with the graphql-js reference implementation.Apollo Server is super easy to set up. Just npm install apollo-server-<variant>, write a GraphQL schema, and then use one of the following snippets to get started. For more info, read the Apollo Server docs.
graphql graphql-server express-graphql express koa hapi node restify apollographqlObject schema description language and validator for JavaScript objects.This is joi, joi allows you to create blueprints or schemas for JavaScript objects (an object that stores information) to ensure validation of key information.
schema validation hapiAn unopinionated authentication library for building Node.js APIs. Permit makes it easy to add an authentication layer to any Node.js API. It can be used with any of the popular server frameworks (eg. Express, Koa, Hapi, Fastify) and it can be used for any type of API (eg. REST, GraphQL, etc.) due to its simple, unopinionated design.
nodejs authentication express koa hapi fastify api auth authn authorization bearer fastly graphql header oauth passport request rest server tokenJsRender is a light-weight but powerful templating engine, highly extensible, and optimized for high-performance rendering, without DOM dependency. It is designed for use in the browser or on Node.js, with or without jQuery. JsRender and JsViews together provide the next-generation implementation of the official jQuery plugins JQuery Templates, and JQuery Data Link -- and supersede those libraries.
jsrender node express hapi browserify templates template jquery-plugin ecosystem:jqueryA simple and composable way to validate data in JavaScript. Superstruct makes it easy to define interfaces and then validate JavaScript data against them. Its type annotation API was inspired by Typescript, Flow, Go, and GraphQL, giving it a familiar and easy to understand API.
validation types interface structs schema api array assert cast check checker collection data error express hapi invalid joi json list model object orm scalar struct throw type valid validate validatorBoilerplates can be a huge time sink to maintain and I've decieded to archive this project. I started the work for upgrading to hapi v17 and using async/await instead of callbacks, that work can be found in the hapi-17-async-await branch.
hapi react mongodb nodejs boilerplate starter-kit user-system user-manager adminYou need Node.js installed and you'll need MongoDB installed and running.
hapi hapi-plugin joi swagger rest rest-api validation crud mongoose mongodb nosql relational api documentation joi-validation hapi-server audit-log crud-generator crud-api restful generatorCurrently the consumption of HTTP REST APIs dominate the client-side world, GraphQL aims to change this. This transition can be time-consuming - this is where graffiti comes into the picture. We don't want to rewrite our application - no one wants that. graffiti provides an Express middleware, a Hapi plugin and a Koa middleware to convert your existing models into a GraphQL schema and exposes it over HTTP.
graphql graffiti express hapi koa ormAdminJS is An automatic admin interface which can be plugged into your application. You, as a developer, provide database models (like posts, comments, stores, products or whatever else your application uses), and AdminJS generates UI which allows you (or other trusted users) to manage content.
admin mongodb admin-dashboard admin-panel hapi express mongoosegood is a hapi plugin to monitor and report on a variety of hapi server events as well as ops information from the host machine. It listens for events emitted by hapi server instances and pushes standardized events to a collection of streams.See the Reporter Interface section of the API documentation on how to configure reporters.
process monitor log report hapi pluginLearn all about hapi through a series of self-guided challenges.makemehapi will run you through a series of challenges ranging from a basic "hello world" server then move on to more advanced exercises dealing with rendering views, handling uploads, and managing cookies.
nodeschool workshopper hapijs hapiThird-party authentication plugin for hapi.bell ships with built-in support for authentication using Facebook, GitHub, Google, Google Plus, Instagram, LinkedIn, Slack, Stripe, Twitter, Yahoo, Foursquare, VK, ArcGIS Online, Windows Live, Nest, Phabricator, BitBucket, Dropbox, Reddit, Tumblr, Twitch, Mixer, Salesforce, Pinterest, Discord, DigitalOcean, AzureAD, trakt.tv and Okta. It also supports any compliant OAuth 1.0a and OAuth 2.0 based login services with a simple configuration object.
hapi login authentication oauth plugin auth0 arcgisonline bitbucket dropbox facebook fitbit foursquare github gitlab google instagram medium linkedin live meetup nest phabricator office365 okta reddit spotify tumblr twitter vk wordpress yahooThis is a OpenAPI (aka Swagger) plug-in for HAPI When installed it will self document the API interface in a project. Release Notes for v9.0.x which only supports hapi v17 and above. Note: For hapi versions below v17, you must use versions v7.x.x of this module.
api docs swagger hapi joiHappiness is learning how to use the Hapi.js (Node.js) web framework to build reliable/scalable apps faster. Hapi is the framework for rapidly building RESTful & Real-Time web applications and services with Node.js. Whether you are building a very simple API for your website/mobile app or a large scale, cache heavy, secure e-commerce website, hapi has you covered. Hapi will help get your server developed quickly with its wide range of configurable options.
learn hapi how-to introduction tutorialA user system API starter. Bring your own front-end. Frame is built with the hapi framework. We're using MongoDB as a data store.
mongodb hapi nodejs boilerplate starter-kit user-system user-manager adminWelcome to hapijs university. A community learning experiment utilizing the distributed classroom. The idea is simple - use GitHub as a platform for teaching people coding skills as a group, everyone is both a student and a teacher. The goal is to learn how to operate such a distributed classroom and then apply that pattern to other topics.hapijs/university started as a group coding learning experiment. The university developed an application covering the essentials of a hapi application: authentication, validation, application architecture, testing, and more. To track future development watch the issues list.
hapi learn communitynes adds native WebSocket support to hapi-based application servers. Instead of treating the WebSocket connections as a separate platform with its own security and application context, nes builds on top of the existing hapi architecture to provide a flexible and organic extension.The full client and server API is available in the API documentation.
hapi plugin websocketNode.js Chat Apps are practically the "Hello World" of real-time apps. If you Google for "node.js chat example" you will see thousands of results! But ... 90% of the examples use Express.js, 95% use MongoDB to store data/messages and 100% have zero tests. So, this example is for the the people who prefer to have examples that are fully explained (including tests). As with all our examples we have a suite of tests.
hapi hapi.js node chat real-time socket.io redis pubsub publish subscribe scalableUse JavaScript and hapijs to build web applications. See the essentials of how to build hapi applications: authentication, validation, application architecture, and testing. Plus, delve into deeper topics like: bearer-tokens, caching, the request lifecycle. First, we need some basic structure: a lib folder, a package.json file, and an initial ./lib/index.js. Since we will be using hapi, we need to include that in the project dependencies. Second, create a basic hapi server on port 8000 which responds to /version requests and replies with a simple { "version": "0.1.1" } JSON payload. The version data in the response should come from the package.json file.
hapijs hapi learn learning
We have large collection of open source products. Follow the tags from
Tag Cloud >>
Open source products are scattered around the web. Please provide information
about the open source projects you own / you use.
Add Projects.