Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
b75f4c5
added network 'net' to chroma, redis and postgres dockerfile configs,…
josh-le Oct 6, 2025
11354b6
first attempt at chat with failure db feature
josh-le Oct 7, 2025
3639a10
added payload kwarg to cl Action because it needs it
josh-le Oct 9, 2025
acbc6ce
updated openai sdk error handline in networks/models.py
josh-le Oct 22, 2025
4cdb4d4
updated to use 'invoke' method on the conversation chain over the leg…
josh-le Oct 22, 2025
83cfbe5
updated completion calls with new openai sdk
josh-le Oct 22, 2025
0c601e3
switched from 3.5 turbo back to text-babbage-001 for chat completions…
josh-le Oct 23, 2025
d7748a3
auth: first attempt at password auth
josh-le Nov 25, 2025
40ab47e
auth: auth works, still need to fix chat sessions within the chainlit…
josh-le Nov 25, 2025
f5a791e
set up chat sessions without persistence
josh-le Dec 15, 2025
64d5019
first attempt at persistent chats
josh-le Dec 15, 2025
c98bf13
imported our datalayer to failbot
josh-le Dec 15, 2025
f5b4658
fixing recursion error
josh-le Dec 15, 2025
2926fda
fix type error
josh-le Dec 15, 2025
4ea2dda
more type errors
josh-le Dec 15, 2025
5a83086
more type errors
josh-le Dec 15, 2025
19b8d7c
fixed chainlit datalayer getter
josh-le Dec 15, 2025
cb0b6e7
datetime formatting
josh-le Dec 16, 2025
5f2f611
manually created migration file and registered modules in django admin
josh-le Dec 16, 2025
651c225
changed to PersistedUser type
josh-le Dec 16, 2025
4f3fd7b
small fix in data layer
josh-le Dec 16, 2025
096f471
another small change in data layer
josh-le Dec 16, 2025
5802c1f
integrity error fix
josh-le Dec 16, 2025
cf1c9e0
added logs to datalayer
josh-le Dec 16, 2025
03f60f9
added id as fallback lookup in datalayer
josh-le Dec 16, 2025
3713eed
more fixes in datalayer
josh-le Dec 16, 2025
c470125
we see threads in the sidebar :)
josh-le Dec 16, 2025
80b106a
create thread on chat start
josh-le Dec 16, 2025
b4608b0
fixes for starting thread on chat start
josh-le Dec 16, 2025
2751e41
more fixes idc
josh-le Dec 16, 2025
fff6738
another type error
josh-le Dec 16, 2025
aaab855
trying to fix resume chat
josh-le Dec 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 91 additions & 0 deletions .chainlit/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
[project]
# Whether to enable telemetry (default: true). No personal data is collected.
enable_telemetry = true


# List of environment variables to be provided by each user to use the app.
user_env = []

# Duration (in seconds) during which the session is saved when the connection is lost
session_timeout = 3600

# Duration (in seconds) of the user session expiry
user_session_timeout = 1296000 # 15 days

# Enable third parties caching (e.g LangChain cache)
cache = false

# Authorized origins
allow_origins = ["*"]

[features]
# Process and display HTML in messages. This can be a security risk (see https://stackoverflow.com/questions/19603097/why-is-it-dangerous-to-render-user-generated-html-or-javascript)
unsafe_allow_html = false

# Process and display mathematical expressions. This can clash with "$" characters in messages.
latex = false

# Automatically tag threads with the current chat profile (if a chat profile is used)
auto_tag_thread = true

# Allow users to edit their own messages
edit_message = true

# Authorize users to spontaneously upload files with messages
[features.spontaneous_file_upload]
enabled = true
# Define accepted file types using MIME types
# Examples:
# 1. For specific file types:
# accept = ["image/jpeg", "image/png", "application/pdf"]
# 2. For all files of certain type:
# accept = ["image/*", "audio/*", "video/*"]
# 3. For specific file extensions:
# accept = { "application/octet-stream" = [".xyz", ".pdb"] }
# Note: Using "*/*" is not recommended as it may cause browser warnings
accept = ["*/*"]
max_files = 20
max_size_mb = 500

[features.audio]
# Sample rate of the audio
sample_rate = 24000

[UI]
# Name of the assistant.
name = "Assistant"

# default_theme = "dark"

# layout = "wide"

# Description of the assistant. This is used for HTML tags.
# description = ""

# Chain of Thought (CoT) display mode. Can be "hidden", "tool_call" or "full".
cot = "full"

# Specify a CSS file that can be used to customize the user interface.
# The CSS file can be served from the public directory or via an external link.
# custom_css = "/public/test.css"

# Specify a Javascript file that can be used to customize the user interface.
# The Javascript file can be served from the public directory.
# custom_js = "/public/test.js"

# Specify a custom meta image url.
# custom_meta_image_url = "https://chainlit-cloud.s3.eu-west-3.amazonaws.com/logo/chainlit_banner.png"

# Specify a custom build directory for the frontend.
# This can be used to customize the frontend code.
# Be careful: If this is a relative path, it should not start with a slash.
# custom_build = "./public/build"

# Specify optional one or more custom links in the header.
# [[UI.header_links]]
# name = "Issues"
# icon_url = "https://avatars.githubusercontent.com/u/128686189?s=200&v=4"
# url = "https://github.com/Chainlit/chainlit/issues"

[meta]
generated_by = "2.3.0"
214 changes: 214 additions & 0 deletions .chainlit/translations/bn.json

Large diffs are not rendered by default.

214 changes: 214 additions & 0 deletions .chainlit/translations/en-US.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,214 @@
{
"common": {
"actions": {
"cancel": "Cancel",
"confirm": "Confirm",
"continue": "Continue",
"goBack": "Go Back",
"reset": "Reset",
"submit": "Submit"
},
"status": {
"loading": "Loading...",
"error": {
"default": "An error occurred",
"serverConnection": "Could not reach the server"
}
}
},
"auth": {
"login": {
"title": "Login to access the app",
"form": {
"email": {
"label": "Email address",
"required": "email is a required field"
},
"password": {
"label": "Password",
"required": "password is a required field"
},
"actions": {
"signin": "Sign In"
},
"alternativeText": {
"or": "OR"
}
},
"errors": {
"default": "Unable to sign in",
"signin": "Try signing in with a different account",
"oauthSignin": "Try signing in with a different account",
"redirectUriMismatch": "The redirect URI is not matching the oauth app configuration",
"oauthCallback": "Try signing in with a different account",
"oauthCreateAccount": "Try signing in with a different account",
"emailCreateAccount": "Try signing in with a different account",
"callback": "Try signing in with a different account",
"oauthAccountNotLinked": "To confirm your identity, sign in with the same account you used originally",
"emailSignin": "The e-mail could not be sent",
"emailVerify": "Please verify your email, a new email has been sent",
"credentialsSignin": "Sign in failed. Check the details you provided are correct",
"sessionRequired": "Please sign in to access this page"
}
},
"provider": {
"continue": "Continue with {{provider}}"
}
},
"chat": {
"input": {
"placeholder": "Type your message here...",
"actions": {
"send": "Send message",
"stop": "Stop Task",
"attachFiles": "Attach files"
}
},
"speech": {
"start": "Start recording",
"stop": "Stop recording",
"connecting": "Connecting"
},
"fileUpload": {
"dragDrop": "Drag and drop files here",
"browse": "Browse Files",
"sizeLimit": "Limit:",
"errors": {
"failed": "Failed to upload",
"cancelled": "Cancelled upload of"
}
},
"messages": {
"status": {
"using": "Using",
"used": "Used"
},
"actions": {
"copy": {
"button": "Copy to clipboard",
"success": "Copied!"
}
},
"feedback": {
"positive": "Helpful",
"negative": "Not helpful",
"edit": "Edit feedback",
"dialog": {
"title": "Add a comment",
"submit": "Submit feedback"
},
"status": {
"updating": "Updating",
"updated": "Feedback updated"
}
}
},
"history": {
"title": "Last Inputs",
"empty": "Such empty...",
"show": "Show history"
},
"settings": {
"title": "Settings panel"
},
"watermark": "Built with"
},
"threadHistory": {
"sidebar": {
"title": "Past Chats",
"filters": {
"search": "Search",
"placeholder": "Search conversations..."
},
"timeframes": {
"today": "Today",
"yesterday": "Yesterday",
"previous7days": "Previous 7 days",
"previous30days": "Previous 30 days"
},
"empty": "No threads found",
"actions": {
"close": "Close sidebar",
"open": "Open sidebar"
}
},
"thread": {
"untitled": "Untitled Conversation",
"menu": {
"rename": "Rename",
"delete": "Delete"
},
"actions": {
"delete": {
"title": "Confirm deletion",
"description": "This will delete the thread as well as its messages and elements. This action cannot be undone",
"success": "Chat deleted",
"inProgress": "Deleting chat"
},
"rename": {
"title": "Rename Thread",
"description": "Enter a new name for this thread",
"form": {
"name": {
"label": "Name",
"placeholder": "Enter new name"
}
},
"success": "Thread renamed!",
"inProgress": "Renaming thread"
}
}
}
},
"navigation": {
"header": {
"chat": "Chat",
"readme": "Readme",
"theme": {
"light": "Light Theme",
"dark": "Dark Theme",
"system": "Follow System"
}
},
"newChat": {
"button": "New Chat",
"dialog": {
"title": "Create New Chat",
"description": "This will clear your current chat history. Are you sure you want to continue?",
"tooltip": "New Chat"
}
},
"user": {
"menu": {
"settings": "Settings",
"settingsKey": "S",
"apiKeys": "API Keys",
"logout": "Logout"
}
}
},
"apiKeys": {
"title": "Required API Keys",
"description": "To use this app, the following API keys are required. The keys are stored on your device's local storage.",
"success": {
"saved": "Saved successfully"
}
},
"alerts": {
"info": "Info",
"note": "Note",
"tip": "Tip",
"important": "Important",
"warning": "Warning",
"caution": "Caution",
"debug": "Debug",
"example": "Example",
"success": "Success",
"help": "Help",
"idea": "Idea",
"pending": "Pending",
"security": "Security",
"beta": "Beta",
"best-practice": "Best Practice"
}
}
Loading