{"id":42219030,"url":"https://github.com/antsanchez/prompto","last_synced_at":"2026-01-27T01:36:27.849Z","repository":{"id":237485915,"uuid":"793138726","full_name":"antsanchez/prompto","owner":"antsanchez","description":"Interact with various LLMs in your browser (LangChain.js, Angular)","archived":false,"fork":false,"pushed_at":"2025-04-29T02:20:41.000Z","size":868,"stargazers_count":17,"open_issues_count":4,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-01-14T16:18:35.577Z","etag":null,"topics":["angular","chatbot","langchain","langchain-js","llama","mistral","ollama","openai","prompt","prompt-engineering"],"latest_commit_sha":null,"homepage":"https://prompto.asanchez.dev/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/antsanchez.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-04-28T14:38:32.000Z","updated_at":"2025-12-26T20:59:17.000Z","dependencies_parsed_at":"2024-05-03T10:54:01.382Z","dependency_job_id":"751667a8-f5e7-41f3-a960-e93d98de2bf9","html_url":"https://github.com/antsanchez/prompto","commit_stats":{"total_commits":29,"total_committers":1,"mean_commits":29.0,"dds":0.0,"last_synced_commit":"965732e42c014a2989b14b3b1a947fd59e8625a2"},"previous_names":["antsanchez/prompto"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/antsanchez/prompto","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antsanchez%2Fprompto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antsanchez%2Fprompto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antsanchez%2Fprompto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antsanchez%2Fprompto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/antsanchez","download_url":"https://codeload.github.com/antsanchez/prompto/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antsanchez%2Fprompto/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28479406,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["angular","chatbot","langchain","langchain-js","llama","mistral","ollama","openai","prompt","prompt-engineering"],"created_at":"2026-01-27T01:36:27.237Z","updated_at":"2026-01-27T01:36:27.842Z","avatar_url":"https://github.com/antsanchez.png","language":"HTML","readme":"# Prompto - Advanced Chat UI for Language Models\n\nWelcome to Prompto, an open-source Angular chat interface designed to provide a user-friendly way of interacting with a variety of Large Language Models (LLMs) via LangChain.js. Prompto, a blend of the word 'Prompt' and the Italian word 'Pronto' (meaning ready and quick), offers a modern chat UI that allows for quick and easy switching between different AI chat models, directly from your browser.\n\n## Technology Stack\n\n- **Frontend**: Angular ^17\n- **UI Framework**: TailwindCSS\n- **Markdown Processing**: Marked with syntax highlighting via highlight.js\n- **LLM Integration**: LangChain.js\n- **PWA Support**: Service Worker\n\n## Features\n\n- **Modern Chat Interface**: Clean and intuitive chat UI similar to popular chat applications, with message threading and real-time responses.\n- **Multiple LLMs**: Effortlessly switch between a range of Large Language Models (LLMs) supported by LangChain Js.\n- **Temperature Settings**: Adjust the temperature to fine-tune the responses from your chosen LLM.\n- **Chatbot UI**: Engage with a chatbot interface that remembers the conversation context.\n- **Notebook**: Utilize a notebook feature to send prompts to the LLM and receive responses without prior context or memory.\n- **Templates**: Create, save, and reuse prompts for specific use cases. Incorporate a \"contextual\" prompt alongside your saved template for dynamic interaction.\n- **Arena**: Engage in a conversation with multiple LLMs simultaneously, comparing their responses side by side.\n- **Discussion**: Create dynamic conversations between multiple AI personas to explore topics from different perspectives.\n\n## Data Storage and Security\n\n**Important Note:** Prompto saves your chat history, prompt templates, and settings on your browser for easy access. This is convenient, but there's a small catch: information saved on your local storage can be accessed by others in some situations.\n\nPrompto provides a button on the settings page that allows you to clear all saved data, including chat conversations, prompt templates, and settings. \n\n## Live Example\nYou can view a live example of Prompto by visiting the following link: [Prompto](https://prompto.asanchez.dev/).\nThe application can be installed as a PWA on your device.\n\n## Installation\n\n1. Clone the repository to your local machine\n2. Navigate to the project directory\n3. Install dependencies:\n   ```bash\n   npm install\n   ```\n4. Start the development server:\n   ```bash\n   ng serve\n   ```\n5. Open your browser and navigate to `http://localhost:4200`\n\n### Production Build\n\nTo create a production build:\n\n```bash\nng build --configuration=production\n```\n\nThe build artifacts will be stored in the `dist/prompto` directory.\n\n## Development\n\nThe project uses Angular's latest features including:\n- Standalone components\n- Lazy loading for all routes\n- Service workers for PWA support\n- TypeScript strict mode enabled\n\n## Ollama\nIf you are running Ollama and you want to connect it to Prompto from a different domain than localhost, you will need to add the domain to the CORS configuration in the Ollama server. To do this, read the following blog post: [How to Handle CORS Settings in OLLAMA: A Comprehensive Guide](https://medium.com/dcoderai/how-to-handle-cors-settings-in-ollama-a-comprehensive-guide-ee2a5a1beef0) or the official documentation: [How do I configure Ollama server?](https://github.com/ollama/ollama/blob/main/docs/faq.md#how-do-i-configure-ollama-server).\n\n## Roadmap\n\n- Broaden the spectrum of LLMs supported by LangChain.js.\n- Enhance the Chat Conversation Memory feature by adding an option for summarization, reducing the need to pass the entire chat history.\n- Introduce the ability to create custom tools and agents.\n\n## Contributing\n\nContributions are welcome! Please follow these steps:\n\n1. Fork the repository\n2. Create a new branch for your feature\n3. Follow the existing code style (2 spaces for indentation as per .editorconfig)\n4. Submit a pull request\n\nWhether it's feature enhancements, bug fixes, or documentation improvements, all contributions are greatly appreciated.\n\n## License\n\nThis project is open-sourced under the MIT License. \n\n---\n\n**Note**: \nAs this project is in beta, I am actively working on improvements and new features. I appreciate your support and contributions during this phase.\n\nThis project is not affiliated with OpenAI, LangChain or any other provider. It is an independent project designed to provide a user-friendly interface for interacting with LLMs.\n\nThis project is not associated with the french trademark Prompto registered in the field of AI.","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantsanchez%2Fprompto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantsanchez%2Fprompto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantsanchez%2Fprompto/lists"}