hoof-ai / hoof Goto Github PK
View Code? Open in Web Editor NEW"Just hoof it!" - A spotlight like interface to Ollama
Home Page: https://hoof.ing
License: MIT License
"Just hoof it!" - A spotlight like interface to Ollama
Home Page: https://hoof.ing
License: MIT License
I am on Windows, running Ollama on WSL. I am able to run the app, but there isn't very much that I can do in the app, and I would like to know how much of that is because I am on Windows, and how much of it is because the features haven't been implemented yet.
pnpm tauri dev
in the repo (with the Ollama server running in the background`:
localhost:1420
)pnpm tauri dev
says "Sending request to http://localhost:11434/api/generate" (good)Are any of these actual problems? Or have they just not been implemented yet?
A few small bugs / tweaks that need fixing:
We will need to use a library that can register global hotkeys on macOS.
This library would listen for your specific hotkey combination and trigger the Tauri window to open.
An example of a similar use case is https://github.com/ahkohd/tauri-macos-spotlight-example
What platforms can I run this on? Does it work on Windows 11?
When adding input and waiting for ollama - the app should provide the user with a UI hint that it's loading / processing.
Perhaps even an event log stream?
We will need to use a library that can register global hotkeys on macOS.
This library would listen for your specific hotkey combination and trigger the Tauri window to open.
An example of a similar use case is https://github.com/ahkohd/tauri-macos-spotlight-example
This is a just in case. Don't need but nice reminder to have if we do grow.
As our project grows and we begin to receive more contributions from the community, it's important to have clear guidelines in place. This issue is to track the creation of comprehensive contribution and community guidelines to ensure a welcoming and productive environment for all contributors.
Research best practices for contribution and community guidelines.
Draft the Contribution Guidelines.
Draft the Community Guidelines.
Review and finalize the guidelines.
Publish the guidelines.
CONTRIBUTING.md
file in the repository.CODE_OF_CONDUCT.md
file in the repository.Monitor and iterate on the guidelines.
Please add any additional tasks or notes that might be relevant as we work through this process.
Creating a macOS application that integrates with a local Ollama model and is triggered by a hotkey involves several steps. Here's a high-level overview of the tasks you'd need to accomplish to create a minimum viable product (MVP):
Set Up a Local Server for Ollama Model: We will need a local server that can act as a "parser" for the Ollama service (would just start it as brew service) and handle requests. This server would receive text and return the model's response. (Can eventually support plugins for prompt engineering things)
Develop a Tauri Application: Tauri is a framework for building desktop applications using web technologies. You can use it to create a lightweight and secure window for your chat interface.
Implement Hotkey Functionality: We will need to use a library that can register global hotkeys on macOS. This library would listen for your specific hotkey combination and trigger the Tauri window to open.
Clipboard and Selection Integration: The application should be able to grab the current selection or clipboard content when the hotkey is pressed.
Create a User Interface: The Tauri window should have a user-friendly interface for chatting with the Ollama model, including a model selector and a chat display.
Communication Between Tauri and the Local Server: Implement the logic to pass messages back and forth between the Tauri application and the local Ollama server.
Packaging and Distribution: Once your application is ready, you'll need to package it for distribution so that others can easily install and use it on their macOS systems.
Now, let's create a task list for a GitHub issue to organize the development of this MVP:
Title: Develop a macOS Application for Local Ollama Model Interaction with Global Hotkey
Body:
Create a macOS application that allows users to interact with a local Ollama model using a global hotkey. The application will present a chat interface where users can send and receive messages from the Ollama model.
This issue outlines the basic requirements and tasks for the project. You can add more details or break down the tasks further as needed. Once you have this issue created, you can start organizing the work into milestones, assigning tasks to contributors, and tracking progress.
This issue only exists to host screenshots etc... that we don't want in the git repo.
This issue tracks the progress of preparing and distributing our macOS app through Homebrew. This includes determining the best practices for submission, understanding Homebrew and Homebrew Cask, and ensuring we meet all requirements for a smooth user experience.
Research how to distribute a macOS app through Homebrew.
Investigate the submission process for Homebrew.
Learn about the review process for Homebrew submissions.
Prepare the app for submission.
Submit the app to Homebrew.
Post-submission tasks.
Please update this issue with any progress or additional information found during the research phase.
It would be great to have a simple UI view for settings.
etc...
The application should be able to grab the current selection or clipboard content when the hotkey is pressed.
Sam -
As a user, I'd like to be able to highlight text in any app on macOS, trigger the app with a hotkey and have it parse the selected text to Ollama along with a prompt or a list of prompts to choose from.
Examples:
This needs a lot of work I would like to see a UI not dis-simililar to OpenAi's or Vercels AgentAI bear in mind that the ui will also need to be coherent across the two states, spotlight and chat... See this this repo for a demo of the functionality w hotkeys.
Please feel free to add tailwind to the project and submit layout ideas. Can be as simple as an excalidraw sketch.
Documentation, Documentation Documentation. This is important don't forget it. This is its own issue for a reason.
This would also provide a way to quit the app (other than cmd+q)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.