* Chore disable git submodule for web-client and app-backend * Chore add newest source code of app-backend and web-client --------- Co-authored-by: Hien To <tominhhien97@gmail.com>
3.9 KiB
Jan Web
Jan Web is a Next.js application designed to provide users with the ability to interact with the Language Model (LLM) through chat or generate art using Stable Diffusion. This application runs as a single-page application (SPA) and is encapsulated within a Docker container for easy local deployment.
Features
-
Chat with the Language Model: Engage in interactive conversations with the Language Model. Ask questions, seek information, or simply have a chat.
-
Generate Art with Stable Diffusion: Utilize the power of Stable Diffusion to generate unique and captivating pieces of art. Experiment with various parameters to achieve desired results.
Installation and Usage
Use as complete suite
For using our complete solution, check this
For interactive development
-
Clone the Repository:
git clone https://github.com/your-username/jan-web.git cd jan-web -
Install dependencies:
yarn -
Run development:
yarn dev -
Access Jan Web:
Open your web browser and navigate to
http://localhost:3000to access the Jan Web application.
Configuration
You can customize the endpoint of the Jan Web application through environment file. These options can be found in the .env file located in the project's root directory.
// .env
KEYCLOAK_CLIENT_ID=hasura
KEYCLOAK_CLIENT_SECRET=**********
AUTH_ISSUER=http://localhost:8088/realms/hasura
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=my-secret
END_SESSION_URL=http://localhost:8088/realms/hasura/protocol/openid-connect/logout
REFRESH_TOKEN_URL=http://localhost:8088/realms/hasura/protocol/openid-connect/token
HASURA_ADMIN_TOKEN=myadminsecretkey
NEXT_PUBLIC_GRAPHQL_ENGINE_URL=localhost:8080
Replace above configuration with your actual infrastructure.
Dependencies
| Library | Category | Version | Description |
|---|---|---|---|
| next | Framework | 13.4.10 | |
| typescript | Language | 5.1.6 | |
| tailwindcss | UI | 3.3.3 | |
| Tailwind UI | UI | ||
| react-hook-form | UI | ^7.45.4 | |
| @headlessui/react | UI | ^1.7.15 | |
| @heroicons/react | UI | ^2.0.18 | |
| @tailwindcss/typography | UI | ^0.5.9 | |
| embla-carousel | UI | ^8.0.0-rc11 | |
| @apollo/client | State management | ^3.8.1 | |
| mobx | State management | ^6.10.0 | |
| mobx-react-lite | State management | ^4.0.3 | |
| mobx-state-tree | State management | ^5.1.8 |
Deploy to Netlify
Clone this repository on own GitHub account and deploy to Netlify:
Deploy to Vercel
Deploy Jan Web on Vercel in one click:
Contributing
Contributions are welcome! If you find a bug or have suggestions for improvements, feel free to open an issue or submit a pull request on the GitHub repository.
License
This project is licensed under the Fair-code License - see the License for more details.
Feel free to reach out Discord if you have any questions or need further assistance. Happy coding with Jan Web and exploring the capabilities of the Language Model and Stable Diffusion! 🚀🎨🤖