Skip to content
/ nemos Public

✍🏻 Nemos | Minimalistic Note-taking app

Notifications You must be signed in to change notification settings

USpiri/nemos

Repository files navigation

✍🏻 Nemos | Minimalist Note-Taking App

Things shop icon
A minimalist, private, and customizable note-taking app.

Β  Β  Β  Β 

Download here

About Nemos Ξ·

Nemos is an intuitive and easy-to-use note-taking application designed to help users focus on capturing and organizing their thoughts without distractions. Most of its features seamlessly integrate into the text, providing a smooth and immersive writing experience.

349shots_so

✨ Key Features

  • Minimalist & Customizable: Simple and extensive customization options. Including custom color schemes and light/dark mode.
  • Standard Editor Features: Headings, paragraphs, bold, italics, quotes, inline code, strikethrough, underline.
  • Advanced & Custom Editor Features:
    • Code Blocks: Language selector, syntax highlighting, and copy button.
    • Diagrams: Integrated Mermaid.js support.
    • Mathematical Notation: Inline and display math with KaTeX.
    • Chemical Notation: Support for SMILES chemical structures.
    • Resizable Images: Drag to adjust image size.
    • File Handling: Direct image uploads and embedding.
    • Slash Command Menu: Quickly access editor features with / commands.
    • Drag & Drop Nodes: Easily rearrange content blocks.
  • File Tree Navigation: Organize your notes effectively.
  • Note Properties: Customize metadata and styling for each note (coming soon).
  • Local-First: No cloud storageβ€”your notes stay on your device.

πŸ–ΌοΈ Screenshoots

916shots_so

736shots_so

πŸ› οΈ Tech Stack

  • Framework: Tauri + React (Vite).
  • Language: TypeScript.
  • Database: None! Notes are stored locally.
  • State Management: Zustand.
  • Styling: Tailwind CSS.

πŸ“‚ Project Structure

.git/                              # Git workflow and build
dist/                              # Frontend build output

src/
β”œβ”€β”€ app/                           # App routing
β”œβ”€β”€ components/                    # UI Components
|   β”œβ”€β”€ editor/                    # Editor
|   |   β”œβ”€β”€ extensions/            # Editor extensions
|   |   └── Editor.tsx
|   β”œβ”€β”€ ui                         # ShadCN UI components
|   └── ...
β”œβ”€β”€ config/                        # Configuration files
β”œβ”€β”€ hooks/                         # Global hooks
β”œβ”€β”€ models/                        # Types & interfaces
β”œβ”€β”€ store/                         # Zustand global state
β”œβ”€β”€ utils/                         # Utility functions
β”œβ”€β”€ style.css                      # Global styles
└── main.tsx                       # Application entry point

src-tauri/                         # Tauri backend
β”œβ”€β”€ capabilities/                  # App permissions
β”œβ”€β”€ icons/                         # App icon
β”œβ”€β”€ src/                           # Rust code
└── tauri.conf.json                # Tauri configuration

...                                # Config files (package.json, etc.)

πŸš€ Getting Started

To set up a development environment for Nemos, ensure you have the required Tauri prerequisites installed.

Development Setup

  1. Clone the repository:
    git clone https://github.com/USpiri/nemos.git
  2. Navigate to the project directory:
    cd nemos
  3. Install dependencies:
    pnpm install
  4. Start the Tauri development server:
    pnpm tauri dev

Building the Application

To create a production-ready build:

pnpm build

🀝 Contribution Guidelines

Contributions are welcome! If you'd like to contribute:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Commit your changes with a descriptive message.
  4. Submit a pull request for review.

We appreciate your help in making Nemos even better!

Happy note-taking! 😊