Skip to content

RajeshTechForge/pinac_workspace

header image

Github Contributors GitHub closed issues

View My Profile

A privacy-first, cross-platform, open-source desktop AI assistant for all



PINAC Workspace

PINAC Workspace is a modern-looking privacy-first AI chat for desktops, seamlessly blending Electron-React for a modern user experience with powerfully Python backend. Unlock the full potential of AI with unparalleled simplicity and user-friendliness, while enjoying ultimate freedom and privacy.

✨ Features

  • Total Freedom: Choose between local (Ollama) and Cloud AI models (using API keys) to suit your workflow and privacy needs.
  • Privacy by Design: No personal data is ever shared or stored on our servers. All features work fully offline, ensuring your data stays on your device.
  • Secure Authentication: Sign in and out securely with Firebase Authentication, protecting your identity and access.
  • Real-Time Web Search: Instantly access up-to-date information from the web to answer questions and enhance conversations.
  • Local Chat History: All conversations are stored locally for your privacy and convenience. Easily revisit and refine past chats.
  • Modern Desktop Experience: Enjoy a sleek, responsive UI built with Electron and React, powered by a robust Python backend.

🛹 UI-Design

app screenshot

🚀 Getting Started

PINAC Workspace's python backend utilizes uv for high-speed dependency resolution.

Note

Make sure your Ollama is running for using local AI models.

  1. Clone the Repository

    git clone https://github.com/RajeshTechForge/pinac_workspace.git
    cd pinac_workspace
    
  2. Install all dependencies

    npm install
    # install all backend and frontend dependencies
    npm run install:all
    
    # Create a `.env` file based on example
    # no need to modify .env, no changes required
    cp .env.example .env
    
  3. Launch the App

    npm run dev
    # this will start both fast-api backend and
    # electron app at once

Important

For Linux Users (Dev Mode): To enable sign-in functionality, you need to register the custom protocol handler. Run the following commands once:

# Create launcher script
cat > ~/pinac-workspace-launcher.sh << 'EOF'
#!/bin/bash
cd /path/to/pinac_workspace/app
/path/to/pinac_workspace/app/node_modules/.bin/electron . "$@"
EOF
chmod +x ~/pinac-workspace-launcher.sh

# Create desktop entry (replace /path/to/ with your actual path)
cat > ~/.local/share/applications/pinac-workspace-dev.desktop << 'EOF'
[Desktop Entry]
Version=1.0
Name=PINAC Workspace Dev
Exec=/home/$USER/pinac-workspace-launcher.sh %u
Type=Application
MimeType=x-scheme-handler/pinac-workspace;
EOF

# Register the protocol
xdg-mime default pinac-workspace-dev.desktop x-scheme-handler/pinac-workspace
update-desktop-database ~/.local/share/applications

This enables the browser to redirect back to the app after authentication. For production builds (AppImage/deb), this is handled automatically.

🤝 Contributing

We love contributors! Whether you are fixing a bug or suggesting a feature.
Check out Contributing Guidelines for more details.

📄 License

Distributed under the MIT license. See LICENSE for more information.

🌏 Contributors

Thanks to our contributors, we have received huge support from the open-source community.


Built with ❤️ for a better AI future by @RajeshTechForge