Skip to content

noah-s-dev/basic-notes-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Notes Pro - Professional Note Taking Application

A comprehensive, commercial-grade note-taking application built with modern web technologies. Features a beautiful, responsive UI with enhanced user experience and advanced collaboration tools.

πŸ› οΈ Technologies Used

Backend Technologies

  • PHP 8.0+ - Server-side scripting language
  • MySQL 8.0+ - Relational database management system
  • Apache/Nginx - Web server

Frontend Technologies

  • HTML5 - Semantic markup
  • CSS3 - Modern styling with custom properties and animations
  • JavaScript (ES6+) - Client-side functionality and interactions
  • Bootstrap 5.1.3 - Responsive UI framework
  • Bootstrap Icons - Icon library

Development Tools

  • Composer - Dependency management (optional)
  • Git - Version control
  • XAMPP/WAMP - Local development environment

πŸ“‹ Project Overview

Notes Pro is a professional note-taking application designed for modern teams and organizations. It provides a comprehensive solution for creating, organizing, and collaborating on notes with advanced features like file attachments, version history, and subscription-based premium features.

The application follows modern web development practices with a focus on:

  • Security: CSRF protection, password hashing, input sanitization
  • Performance: Optimized database queries, efficient file handling
  • User Experience: Intuitive interface, responsive design, smooth animations
  • Scalability: Modular architecture, feature flags, extensible design

✨ Key Features

🎨 Modern UI/UX

  • Beautiful Design: Modern gradient backgrounds, smooth animations, professional styling
  • Responsive Layout: Optimized for desktop, tablet, and mobile devices
  • Dark/Light Themes: Toggle between themes with automatic preference saving
  • Interactive Elements: Hover effects, loading states, and visual feedback

πŸ“ Core Features

  • User Authentication: Secure login/registration with session management
  • Note Management: Create, edit, delete, and organize notes with rich formatting
  • Rich Text Editor: WYSIWYG editor with toolbar and formatting options
  • Categories & Tags: Color-coded categories and tags for organization
  • Advanced Search: Real-time search with filters and sorting options
  • File Attachments: Drag-and-drop file uploads with preview
  • Note Sharing: Share notes with other users and collaboration
  • Version History: Track changes and restore previous versions
  • User Preferences: Customizable themes, fonts, and settings
  • Activity Logging: Track user actions and analytics

⭐ Premium Features

  • Subscription Plans: Free, Basic, Premium, and Enterprise tiers
  • Advanced Analytics: Usage statistics and insights with visual charts
  • Collaboration Tools: Real-time collaboration features
  • API Access: RESTful API for integrations
  • Admin Panel: Comprehensive administration tools
  • Priority Support: Dedicated customer support

πŸ‘₯ User Roles

Free Users

  • Create up to 50 notes
  • 100 MB storage limit
  • Basic search functionality
  • Category organization
  • Standard support

Basic Users ($4.99/month)

  • Create up to 500 notes
  • 1 GB storage limit
  • Tags and file attachments
  • Note sharing capabilities
  • Email support

Premium Users ($9.99/month)

  • Create up to 5,000 notes
  • 10 GB storage limit
  • Advanced collaboration tools
  • Version history tracking
  • Advanced search capabilities
  • Priority email support

Enterprise Users ($19.99/month)

  • Unlimited notes
  • 100 GB storage limit
  • All Premium features
  • Admin panel access
  • Advanced analytics
  • API access
  • Priority phone support

πŸ“ Project Structure

basic-notes-app/
β”œβ”€β”€ index.php                 # Main entry point (redirects to landing)
β”œβ”€β”€ landing.php               # Marketing landing page with features/pricing
β”œβ”€β”€ login.php                 # User authentication page
β”œβ”€β”€ dashboard.php             # Main dashboard with integrated search
β”œβ”€β”€ add_note.php             # Note creation with rich editor
β”œβ”€β”€ edit_note.php            # Note editing functionality
β”œβ”€β”€ delete_note.php          # Note deletion with confirmation
β”œβ”€β”€ profile.php              # User profile (under development)
β”œβ”€β”€ settings.php             # User settings and preferences
β”œβ”€β”€ subscription.php         # Subscription management
β”œβ”€β”€ register.php             # User registration
β”œβ”€β”€ logout.php               # Logout functionality
β”œβ”€β”€ includes/
β”‚   └── config.php           # Configuration and helper functions
β”œβ”€β”€ css/
β”‚   └── style.css            # Custom styling and animations
β”œβ”€β”€ js/
β”‚   └── app.js               # JavaScript functionality
β”œβ”€β”€ sql/
β”‚   └── setup.sql            # Database schema and sample data
β”œβ”€β”€ uploads/                 # File upload directory
└── README.md                # Project documentation

πŸš€ Setup Instructions

Prerequisites

  • PHP 8.0 or higher
  • MySQL 8.0 or higher
  • Apache/Nginx web server
  • Composer (optional, for dependency management)

Installation Steps

  1. Clone or Download the Project

    # If using Git
    git clone https://github.com/noah-s-dev/basic-notes-app.git
    cd basic-notes-app
    
    # Or download and extract to your web server directory
  2. Database Setup

    -- Create a new MySQL database
    CREATE DATABASE notes_app;
    
    -- Import the database schema
    mysql -u username -p notes_app < sql/setup.sql
  3. Configuration

    • Open includes/config.php and update database credentials:
    define('DB_HOST', 'localhost');
    define('DB_NAME', 'notes_app');
    define('DB_USER', 'your_username');
    define('DB_PASS', 'your_password');
    • Update BASE_URL to match your project directory name:
    define('BASE_URL', 'http://localhost/basic-notes-app');
    • If your project is in a different directory, update the path accordingly (e.g., http://localhost/your-project-name)
  4. File Permissions

    chmod 755 uploads/
    chmod 644 includes/config.php
  5. Web Server Configuration

    • Point your web server to the project directory
    • Ensure the uploads/ directory is writable
    • Configure URL rewriting if needed
  6. Access the Application

    • Navigate to http://localhost/basic-notes-app (or your configured BASE_URL)
    • If using XAMPP/WAMP, ensure Apache is running on port 80 (default)
    • Register a new account or use the demo account:
      • Username: demo_user
      • Password: password123

πŸ“– Usage

For End Users

  1. Getting Started

    • Register a new account or sign in
    • Complete your profile setup
    • Choose a subscription plan
  2. Creating Notes

    • Navigate to "Add Note"
    • Use the rich text editor with formatting options
    • Add categories and tags for organization
    • Attach files using drag-and-drop
    • Set note options (public, pinned, favorite)
  3. Organizing Content

    • Use categories to group related notes
    • Apply tags for detailed classification
    • Pin important notes for quick access
    • Mark favorites for easy retrieval
    • Archive old notes to reduce clutter
  4. Collaboration

    • Share notes with team members
    • Enable real-time editing
    • Track changes and comments
    • Manage access permissions

For Administrators

  1. Subscription Management

    • Monitor user subscriptions
    • Manage billing and payments
    • Handle upgrade/downgrade requests
  2. User Management

    • View user activities and analytics
    • Monitor system usage
    • Handle support requests
  3. System Maintenance

    • Database optimization
    • File storage management
    • Performance monitoring

🎯 Intended Use

Demo and Learning

  • Perfect for demonstrating modern web application development
  • Excellent learning resource for PHP, MySQL, and frontend technologies
  • Shows best practices in web development and UI/UX design

Personal Use

  • Personal note-taking and organization
  • Learning and experimentation
  • Portfolio projects

Commercial Use

  • Requires Pro License from RiverTheme.com
  • Custom development and modifications
  • Production deployments
  • White-label solutions
  • Enterprise integrations

Educational Use

  • Classroom demonstrations
  • Code review and analysis
  • Teaching web development concepts
  • Student projects and assignments

πŸ“„ License

License for RiverTheme

RiverTheme makes this project available for demo, instructional, and personal use. You can ask for or buy a license from RiverTheme.com if you want a pro website, sophisticated features, or expert setup and assistance. A Pro license is needed for production deployments, customizations, and commercial use.

Disclaimer

The free version is offered "as is" with no warranty and might not function on all devices or browsers. It might also have some coding or security flaws. For additional information or to get a Pro license, please get in touch with RiverTheme.com.


Notes Pro - Professional note-taking for modern teams.

Developed by RiverTheme - Professional web development solutions.

About

A comprehensive, commercial-grade note-taking application built with modern web technologies. Features a beautiful, responsive UI with enhanced user experience and advanced collaboration tools.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors