Skip to content

CBYeuler/Bismuth

Repository files navigation

BLogo

Bismuth

A lightweight, local-first developer workspace for notes, terminal workflows, and structured thinking.

Notes. Files. Terminal. One workspace.

Build Status Releases Downloads License Last Commit Windows Linux macOS Tauri JavaScript

Overview

Bismuth is a minimal but powerful desktop application designed for structured note-taking, workspace organization, and developer productivity.

It combines:

  • Markdown-based notes
  • Workspace-based file organization
  • A terminal-ready environment
  • Fast, local filesystem-first architecture

The goal is to provide a clean, distraction-free environment for developers and technical users who want full control over their data.


A filesystem-native workspace for developers who prefer convenience and control



Features

Implemented (v1 Frontend)

  • Markdown note editor (vanilla JS prototype)
  • Collapsible sidebar navigation
  • Dark / Light mode support
  • Basic workspace UI structure
  • Clean, minimal UI layout
  • Tauri integration (completed shell migration)
  • Workspace CRUD operations
  • Note persistence (filesystem-based)
  • PTY terminal integration

Planned

  • File tree explorer
  • Graph view (note linking visualization)
  • Export system (PDF / Markdown / HTML)
  • Advanced workspace management
  • Search indexing

Architecture

Bismuth follows a local-first filesystem-based design.

Workspace/
├── notes/
├── assets/
└── exports/

Each workspace is a self-contained directory on the user’s machine.

Tech Stack

  • Frontend: React
  • Desktop Runtime: Tauri
  • Backend: Rust (filesystem + process management)
  • Terminal: PTY integration (xterm.js + backend bridge planned)

Design Philosophy

  • Local-first (no cloud dependency)
  • User owns all data
  • Minimal overhead
  • Fast startup & performance-focused
  • Extensible architecture for developer workflows

Motivation

Most note-taking apps are either:

  • Too heavy and cloud-dependent
  • Too simple and not developer-friendly
  • Locked into proprietary ecosystems

Bismuth aims to sit in between:

A developer workspace where notes, files, and terminal workflows coexist.


Screenshots


Getting Started

Prerequisites

On Linux you'll also need:

sudo apt install libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf

On Windows:

Installation

# Clone the repo
git clone https://github.com/CBYeuler/Bismuth.git
cd Bismuth-main

# Install dependencies
npm install

# Run in development mode
npm run tauri dev

Build for production

npm run tauri build

Project Structure

Bismuth/
├── src/                    
│   ├── App.jsx          
│   ├── index.css            
│   ├── main.jsx          
│   ├── assets/           
│   ├── components/
│   ├── lib/
│   ├── pages/             
│   └── context/           
│
└── src-tauri/              # Tauri / Rust backend
    ├── src/
    │   ├── main.rs         
    │   ├── lib.rs          # Cargo lib entry point
    │   └──  ....        
    ├── Cargo.toml
    └── tauri.conf.json
src-tauri/src/
├── main.rs       
├── lib.rs                 
├── commands/         
│   ├── mod.rs
│   ├── workspace.rs      
│   ├── notes.rs         
│   ├── filesystem.rs    
│   └── terminal.rs     
├── models/               
│   ├── mod.rs
│   ├── workspace.rs       
│   ├── note.rs           
│   └── response.rs        
├── services/             
│   ├── mod.rs
│   ├── workspace_service.rs    
│   ├── note_service.rs        
│   ├── filesystem_service.rs   
│   └── terminal_service.rs     
├── utils/                 
│   ├── mod.rs
│   ├── error.rs            
│   ├── path.rs            
│   └── config.rs          
└── build.rs

Roadmap

  • Vanilla JS UI prototype
  • Tauri migration
  • Workspace CRUD
  • Note persistence
  • PTY terminal
  • File tree explorer
  • Graph view
  • Export system

Contributing

This project is currently in early development. Contributions, ideas, and feedback are welcome once the core architecture stabilizes.


License

This project is licensed under the MIT License.

See the full license text in the LICENSE file.


Status

Early-stage active development — architecture evolving rapidly.

About

A lightweight, local-first developer workspace for notes, terminal workflows, and structured thinking. Notes. Files. Terminal. One workspace.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors