Skip to content

NoteKeeper is a web-based note management system in PHP using OOP and MVC architecture. It supports secure user authentication, allows note management, and stores data in JSON format. Key security features include CSRF tokens and input validation.

Notifications You must be signed in to change notification settings

amormul/note-keeper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📝 NoteKeeper

NoteKeeper is a simple, web-based note-keeping system that provides user authentication, JSON-based data storage, and an intuitive interface. This project is built in PHP with Object-Oriented Programming (OOP) principles and an MVC (Model-View-Controller) architecture.


📋 Features

  • User Authentication: Login and registration functionality with secure password hashing.
  • Note Management: Users can create, view, and delete their notes.
  • JSON Data Storage: Data is stored in JSON files instead of a traditional database.
  • Security Measures: CSRF tokens, input validation, and XSS attack prevention.

🛠 Technologies

  • Language: PHP
  • Architecture: OOP with MVC structure
  • Data Storage: JSON files
  • Session Management: PHP-based session handling

📋 Screenshots

image image


⚙️ Project Structure

note-keeper/
├── public/                                    # Public directory for web server access
│   ├── add_note.php
│   ├── auth.php
│   ├── delete_note.php
│   ├── index.php 
│   ├── logout.php
│   └── register.php
│ 
├── src/                                       # Application core
│   ├── App/                                   # Core application logic
│   │   ├── Models/
│   │   │   ├── User.php
│   │   │   └── Note.php
│   │   ├── Views/
│   │   │   ├── auth/
│   │   │   │   ├── login.php
│   │   │   │   └── register.php
│   │   │   ├── notes/
│   │   │   │   └── dashboard.php
│   │   │   └── templates/
│   │   │   │   ├── header.php
│   │   │   │   └── footer.php
│   │   ├── Core/                              # Core components
│   │   │   └── App.php
└── data/
    ├── users.json                             # JSON file for storing user data
    └── notes.json                             # JSON file for storing notes

Installation

  1. Clone the repository:
    git clone https://github.com/amormul/note-keeper.git

About

NoteKeeper is a web-based note management system in PHP using OOP and MVC architecture. It supports secure user authentication, allows note management, and stores data in JSON format. Key security features include CSRF tokens and input validation.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published