https://github.com/lillysilly3/simple-note-app
A simple command-line note-taking app built in Ruby. You can add, edit, delete and view notes - all saved persistently between sessions.
https://github.com/lillysilly3/simple-note-app
cli crud notes-app ruby
Last synced: 9 days ago
JSON representation
A simple command-line note-taking app built in Ruby. You can add, edit, delete and view notes - all saved persistently between sessions.
- Host: GitHub
- URL: https://github.com/lillysilly3/simple-note-app
- Owner: lillysilly3
- Created: 2026-06-03T09:58:31.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2026-06-03T10:33:05.000Z (about 1 month ago)
- Last Synced: 2026-06-03T12:16:03.178Z (about 1 month ago)
- Topics: cli, crud, notes-app, ruby
- Language: Ruby
- Homepage:
- Size: 1.95 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Simple Note App
A command-line note-taking application built in Ruby. Add, edit, delete and view notes — all stored persistently on disk.
## Features
- Add notes
- Edit existing notes
- Delete notes with confirmation prompt
- View all notes with timestamps
- Notes persist between sessions using PStore
## Demo
```
########## Simple Note Application ##########
a) Add
b) Edit
d) Delete
s) Show All
q) Quit
> a
Note: Buy groceries
> s
------------------------ 1 ------------------------
Date: 2026-06-03 12:00:00
Note: Buy groceries
------------------------------------------------------
> b
Enter Index Number to edit: 1
Note: Buy groceries and cook dinner
********************Entry Updated********************
> d
Enter Index Number to delete: 1
Are you sure? (y/n): y
********************Entry Deleted********************
> q
#################### Goodbye! ####################
```
## Prerequisites
- Ruby 2.7+
- PStore (included in Ruby standard library — no extra install needed)
## Getting Started
```bash
git clone https://github.com/lillysilly3/simple_note_app
cd simple_note_app
ruby main.rb
```
## Project Structure
- `main.rb` - Entry point
- `application.rb` - Main application loop
- `menu.rb` - User interaction and menu actions
- `manager.rb` - Business logic layer
- `database.rb` - PStore persistence layer
- `note.rb` - Note model
## What I Explored
- Object-oriented Ruby design with classes and modules
- Separating concerns across model, database, and application layers
- Persisting data with Ruby's built-in PStore
- Input validation and error handling
## Acknowledgments
This project was built following the [Ruby tutorial by Best Tutorials](https://www.youtube.com/watch?v=MXlZCgh2M6A) on YouTube.