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.
- PHP 8.0+ - Server-side scripting language
- MySQL 8.0+ - Relational database management system
- Apache/Nginx - Web server
- 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
- Composer - Dependency management (optional)
- Git - Version control
- XAMPP/WAMP - Local development environment
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
- 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
- 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
- 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
- Create up to 50 notes
- 100 MB storage limit
- Basic search functionality
- Category organization
- Standard support
- Create up to 500 notes
- 1 GB storage limit
- Tags and file attachments
- Note sharing capabilities
- Email support
- Create up to 5,000 notes
- 10 GB storage limit
- Advanced collaboration tools
- Version history tracking
- Advanced search capabilities
- Priority email support
- Unlimited notes
- 100 GB storage limit
- All Premium features
- Admin panel access
- Advanced analytics
- API access
- Priority phone support
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
- PHP 8.0 or higher
- MySQL 8.0 or higher
- Apache/Nginx web server
- Composer (optional, for dependency management)
-
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
-
Database Setup
-- Create a new MySQL database CREATE DATABASE notes_app; -- Import the database schema mysql -u username -p notes_app < sql/setup.sql
-
Configuration
- Open
includes/config.phpand update database credentials:
define('DB_HOST', 'localhost'); define('DB_NAME', 'notes_app'); define('DB_USER', 'your_username'); define('DB_PASS', 'your_password');
- Update
BASE_URLto 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)
- Open
-
File Permissions
chmod 755 uploads/ chmod 644 includes/config.php
-
Web Server Configuration
- Point your web server to the project directory
- Ensure the
uploads/directory is writable - Configure URL rewriting if needed
-
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
- Username:
- Navigate to
-
Getting Started
- Register a new account or sign in
- Complete your profile setup
- Choose a subscription plan
-
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)
-
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
-
Collaboration
- Share notes with team members
- Enable real-time editing
- Track changes and comments
- Manage access permissions
-
Subscription Management
- Monitor user subscriptions
- Manage billing and payments
- Handle upgrade/downgrade requests
-
User Management
- View user activities and analytics
- Monitor system usage
- Handle support requests
-
System Maintenance
- Database optimization
- File storage management
- Performance monitoring
- 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 note-taking and organization
- Learning and experimentation
- Portfolio projects
- Requires Pro License from RiverTheme.com
- Custom development and modifications
- Production deployments
- White-label solutions
- Enterprise integrations
- Classroom demonstrations
- Code review and analysis
- Teaching web development concepts
- Student projects and assignments
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.