Skip to content

bashnota/bashnota

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

761 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BashNota

BashNota Logo

More Than a Second Brain, It's a Second Brain Cracked on Code and AI

Issues Pull Requests License Deploy

Overview

BashNota combines rich text editing with executable code blocks, AI assistance, and seamless organization. Built for developers who need more than just notes.

Key Features:

  • 📝 Rich markdown editing with TipTap
  • 💻 Execute Python/JavaScript code blocks
  • 🤖 AI assistant integration
  • 📊 LaTeX math & Mermaid diagrams
  • 🔗 Jupyter notebook integration
  • 🌙 Dark/light themes
  • 💾 Dual storage modes: IndexedDB or direct file system access
  • 🔄 Real-time file watching: Edit .nota files with any text editor

Quick Start

Prerequisites

  • Node.js 18+
  • Firebase account

Development

git clone https://github.com/bashnota/bashnota.git
cd bashnota
npm install
cp .env.example .env  # Configure your environment
npm run dev

Build & Deploy

# Build for production
npm run build

# Preview production build
npm run preview

# Deploy to Firebase
npm run deploy

Firebase Functions

cd functions
npm install
npm run build
npm run deploy

Tech Stack

  • Frontend: Vue 3 + TypeScript + Vite
  • Editor: TipTap (ProseMirror)
  • UI: Tailwind CSS + Radix Vue + Shadcn
  • Backend: Firebase (Auth, Firestore, Functions)
  • Code Execution: Jupyter protocol
  • AI: OpenAI, Gemini, Claude

Project Structure

src/
├── features/           # Feature modules
│   ├── ai/            # AI assistant
│   ├── editor/        # Note editor
│   ├── nota/          # Note management
│   └── jupyter/       # Jupyter integration
├── components/        # Shared components
├── ui/               # UI components
└── stores/           # State management

Storage Modes

BashNota supports two storage modes for maximum flexibility:

  • IndexedDB Mode (default): Browser-based storage for quick setup
  • File System Mode: Direct file system access for .nota files
    • Edit notes with any text editor
    • Real-time synchronization
    • Easy backup and version control
    • Works with git

See FILE_SYSTEM_MODE.md for detailed documentation.

Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit changes: git commit -m 'Add amazing feature'
  4. Push to branch: git push origin feature/amazing-feature
  5. Open a Pull Request

See CONTRIBUTING.md for detailed guidelines.

Acknowledgments

Built with these amazing open-source projects:

License

GNU AFFERO GENERAL PUBLIC LICENSE License - see LICENSE file for details.


About

jupyter notebooks alternative with a touch of notion and chaos

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages