Giter VIP home page Giter VIP logo

nlux's Introduction

NLUX ๐ŸŒฒโœจ๐Ÿ’ฌ

Free And Open Source npm version Docs NLUX.ai

The JS / React Library For Building Conversational AI Interfaces โœจ๐Ÿ’ฌ

NLUX (for Natural Language User Experience) is an open-source Javascript library that makes it super simple to integrate powerful large language models (LLMs) like ChatGPT into your web app or website. With just a few lines of code, you can add conversational AI capabilities and interact with your favourite LLM.

Key Features ๐ŸŒŸ

  • Build AI Chat Interfaces In Minutes โ€• High quality conversational AI interfaces with just a few lines of code.
  • React Components & Hooks โ€• <AiChat /> for UI and useAdapter hook for easy integration.
  • LLM Adapters โ€• For ChatGPT โ€• LangChain ๐Ÿฆœ LangServe APIs โ€• HuggingFace ๐Ÿค— Inference.
  • A flexible interface to Create Your Own Adapter for any LLM or API, with support for stream or fetch modes.
  • Bot and User Personas โ€• Customize the bot and user personas with names, images, and descriptions.
  • Streaming LLM Output โ€• Stream the chat response to the UI as it's being generated.
  • Zero Dependencies โ€• Lightweight codebase, with zero-dependencies except for LLM front-end libraries.

200+ Unit Tests

Repo Content ๐Ÿ“ฆ

This GitHub repository contains the source code for the NLUX library.
It is a monorepo that contains the following NPM packages:

React JS Packages:

Vanilla JS Packages:

  • @nlux/core โ€• The core Vanilla JS library to use with any web framework.
  • @nlux/langchain โ€• Adapter for APIs created using LangChain's LangServe library.
  • @nlux/openai โ€• Adapter for the OpenAI API.
  • @nlux/hf โ€• Adapter and pre-processors for the Hugging Face Inference API.

Themes & Extensions:

Please visit each package's NPM page for information on how to use it.

Docs & Examples ๐Ÿคฉ

  • For developer documentation, examples, and API reference โ€• please visit: NLUX.dev

Design Principles โšœ๏ธ

The following design principles guide the development of NLUX:

  • Intuitive โ€• Interactions enabled by NLUX should be intuitive. Usage should unfold naturally without obstacles or friction. No teaching or thinking should be required to use UI built with NLUX.

  • Performance โ€• NLUX should be as fast as possible. Fast to load, fast to render and update, fast to respond to user input. To achieve that, we should avoid unnecessary work, optimize for performance, minimize bundle size, and not depend on external libraries.

  • Accessibility โ€• UI built with NLUX should be accessible to everyone. It should be usable by people with disabilities, on various devices, in various environments, and using various input methods (keyboard, touch, voice).

  • DX โ€• NLUX recognizes developers as first-class citizens. The library should enable an optimal DX (developer experience). It should be effortless to use, easy to understand, and simple to extend. Stellar documentation should be provided. The feature roadmap should evolve aligning to developer needs voiced.

Mission ๐Ÿ‘จโ€๐Ÿš€

Our mission is to enable developers to build outstanding LLM front-ends and applications, cross platforms, with a focus on performance and usability.

Community & Support ๐Ÿ™


  • Star The Repo ๐ŸŒŸ โ€• If you like NLUX, please star the repo to show your support.

  • GitHub Discussions โ€• Ask questions, report issues, and share your ideas with the community.
  • Discord Community โ€• Join our Discord server to chat with the community and get support.
  • NLUX.dev Developers Website โ€• Examples, learning resources, and API reference.

License ๐Ÿ“ƒ

NLUX is licensed under the terms of the Mozilla Public License 2.0.
Wondering what that means? Learn more on MPL 2.0 FAQ.

About The Developer ๐Ÿ‘จโ€๐Ÿ’ป

NLUX is a new open-source project that's being led by Salmen Hichri, a senior front-end engineer with over a decade of experience building user interfaces and developer tools at companies like Amazon and Goldman Sachs, and contributions to open-source projects.

nlux's People

Contributors

salmenus avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.