Welcome! CyNote is a simple notepad application created as part of coursework initially, and then refined to help beginners practice Java GUIs using JFrameβa beginner-friendly library for building graphical user interfaces in Java. This project is a great starting point for anyone looking to learn the basics of Java development and GUI design.
A simple, user-friendly text editor built with Java Swing. CyNote provides essential text editing features, file operations, formatting, themes, and templates, making it a great tool for quick notes, letters, emails, and lists.
- π Create and edit text notes
- π Save notes to your local storage
- ποΈ Rich text formatting (bold, italic)
- π¨ Customizable theme (light or dark mode)
- Basic Text Editing: Write, edit, and view plain text documents easily with a simple interface.
- File Operations: Open and save text files. Prompts to save unsaved changes on exit.
- Format Menu:
- Font selection (Arial, Comic Sans MS, Times New Roman)
- Font size (12, 16, 20)
- Bold and Italic styles
- Edit Menu:
- Undo/Redo (menu and shortcuts: Ctrl+Z, Ctrl+Y)
- Cut, Copy, Paste
- Keyboard Shortcuts:
- Ctrl+S: Save
- Ctrl+O: Open
- Ctrl+Z: Undo
- Ctrl+Y: Redo
- Ctrl+C: Copy
- Ctrl+X: Cut
- Ctrl+V: Paste
- Themes: Toggle between a light and dark theme to suit your preferences.
The application uses only Java Standard Library packages, primarily for GUI (Swing), file I/O, and event handling. No third-party or external libraries are used.
To run the application, you'll need to have Java (Java Development Kit (JDK) 8 or higher) installed on your machine.
-
Clone the repository:
- Linux/macOS:
git clone https://github.com/Shadi-az/CyNote.git
- Windows:
git clone https://github.com/Shadi-az/CyNote.git
- Linux/macOS:
-
Navigate to the project directory:
cd CyNote -
Compile the source code first:
javac -d bin src/*.java -
To run the app, execute the following:
java -cp bin GUI
CyNote/
βββ src/ # Java source files
βββ bin/ # This will be created once you have succefully compiled class files
βββ README.md # This file
βββ ...
MIT License - The software is provided 'as is', without warranty of any kind.
Feel free to contribute or open an issue to report any bugs. This project is designed as a beginner-friendly way to practice Java GUI development, and contributions are encouraged!
βΉοΈ This project is for educational and personal use. Feel free to modify and use it as you wish.
