An open API service indexing awesome lists of open source software.

https://github.com/scottgriv/rust-json_note_manager

A simple command-line tool for managing JSON Notes built using Rust.
https://github.com/scottgriv/rust-json_note_manager

json note-taking note-taking-app notes notes-app notes-application notes-tool rust

Last synced: 21 days ago
JSON representation

A simple command-line tool for managing JSON Notes built using Rust.

Awesome Lists containing this project

README

        









Rust Badge


GitHub Badge
Email Badge
BuyMeACoffee Badge


Bronze

---------------

Rust JSON Note Manager

A simple command-line tool for managing `JSON` Notes built using **Rust**.

---------------

## Table of Contents

- [Features](#features)
- [Getting Started](#getting-started)
- [Installation](#installation)
- [Usage](#usage)
- [What's Inside?](#whats-inside)
- [Resources](#resources)
- [License](#license)
- [Credits](#credits)

## Features

The project will use the `serde` and `serde_json` crates for serialization and deserialization, allowing users to store notes in a `JSON` file.

## Getting Started

### Installation

1. Clone the Repository:
```bash
git clone https://github.com/scottgriv/rust-json_note_manager
```

2. Change to the Directory:
```bash
cd rust-json_note_manager
```

3. Build the Project:
```bash
cargo build --release
```

4. Run the Command:
```bash
cargo run -- [arguments]
```

5. Example:
```bash
cargo run -- add "This is a new note"
```

## Usage

- Add a note: `cargo run -- add "Your note content"`
- List notes: `cargo run -- list`
- Delete a note by ID: `cargo run -- delete `

> [!NOTE]
> Your notes will be stored in a file called `notes.json` in the same directory as the executable.

## What's Inside?

```bash
rust-note-manager/ # Root directory
├── src/ # Source code
│ ├── main.rs # For running the program
│ ├── notes.rs # For managing notes
│ └── commands.rs # For parsing command-line arguments
├── sample/ # Sample data
│ └── notes_sample_output.json # Sample data
├── target/ # Generated
├── notes.json # Generated notes file
├── Cargo.toml # Dependencies
├── .gitignore # git ignore file
├── LICENSE # License file
└── README.md # This file
```

## Resources

- [Rust](https://www.rust-lang.org/)
- [Rust Book](https://doc.rust-lang.org/book/)
- [Rust Documentation](https://doc.rust-lang.org/std/)
- [Rust Playground](https://play.rust-lang.org/)
- [Rust Crates](https://crates.io/)

## License

This project is released under the terms of **The Unlicense**, which allows you to use, modify, and distribute the code as you see fit.
- [The Unlicense](https://choosealicense.com/licenses/unlicense/) removes traditional copyright restrictions, giving you the freedom to use the code in any way you choose.
- For more details, see the [LICENSE](LICENSE) file in this repository.

## Credits

**Author:** [Scott Grivner](https://github.com/scottgriv)

**Email:** [[email protected]](mailto:[email protected])

**Website:** [scottgrivner.dev](https://www.scottgrivner.dev)

**Reference:** [Main Branch](https://github.com/scottgriv/rust-json_note_manager)

---------------