Skip to content

darsana-dev/NoteAPP

Repository files navigation

COPY-READY README.md QuickNotes – Java Console Notes App

QuickNotes is a simple, clean, object-oriented Java application that allows users to create, store, view, and manage notes from the terminal. Built with a modular structure and proper OOP principles (Services, Models, and a Main App runner).

Features

User authentication (login & basic validation)

Create text notes

View all notes

Organized Notebook structure

Clear separation of responsibilities using OOP

Project Structure

src/ • AuthenticationService.java – Handles login/authentication • Note.java – Base note model • TextNote.java – Child class for text notes • Notebook.java – Stores a list of notes • NoteService.java – Operations for adding & listing notes • QuickNotesApp.java – Main entry point for the application

bin/ contains compiled .class files (ignored using .gitignore)

How to Run

Compile javac -d bin src/*.java

Run java -cp bin QuickNotesApp

Example Flow

App launches

User logs in

User selects an action • Create a note • View notes • Exit

Notes stored in memory via Notebook

Technologies Used

• Java 20 • Core OOP (Inheritance, Encapsulation, Composition) • No external libraries

Learning Goals

• Practice real OOP concepts • Understand layered architecture • Build CLI apps with clean separation of concerns • Learn proper GitHub project structuring

Future Improvements

• Add file-based persistence • Add timestamps • Add search filters • Add categories/tags • Build GUI (JavaFX / Swing) • Convert into REST API (Spring Boot)

About

OOP Projects

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages