Transform raw data into actionable insights with just a few clicks!
Features • Demo • Installation • Usage • Tech Stack
Get Your Insights is a powerful web-based platform that automates Exploratory Data Analysis (EDA) for your datasets. Upload your CSV or Excel files and receive comprehensive, professional data profiling reports in seconds. Built with Django and powered by ydata-profiling, our platform helps data scientists, analysts, and business professionals make data-driven decisions effortlessly.
- 🚀 Instant Analysis: Get comprehensive EDA reports in just a few clicks
- 📈 Professional Reports: Detailed statistical analysis and visualizations
- 💼 Multiple Pricing Plans: Flexible options for individuals and teams
- 🔒 Secure & Private: Your data is processed securely with user authentication
- 📱 User-Friendly Interface: Clean, intuitive dashboard for easy navigation
- 💳 Integrated Payments: Seamless Stripe integration for subscriptions
- 📁 File Upload Support: CSV and Excel (.xls, .xlsx) files
- 📊 Comprehensive EDA Reports:
- Descriptive statistics
- Missing value analysis
- Correlation matrices
- Distribution plots
- Data type inference
- And much more!
- 🔄 Report History: Access all your previously generated reports
- 👤 User Dashboard: Personalized workspace for managing your analyses
- ✅ User Registration & Authentication
- ✅ Email Verification with OTP
- ✅ Password Reset Functionality
- ✅ User Profile Management
- ✅ Secure Session Management
- 💳 Stripe Payment Integration
- 💰 Multiple Pricing Tiers:
- Basic: $5/month
- Premium: $10/month
- One-time: $100 (lifetime access)
- 📜 Payment History Tracking
- 📧 Email Notifications
- 🔐 Secure File Storage
- 📱 Responsive Design
- 📋 Terms of Service & Privacy Policy
- 🆘 Support System
The beautiful landing page showcases the platform's capabilities and guides users to get started.
Upload your data files and access your analysis reports from a clean, intuitive dashboard.
Receive comprehensive HTML reports with interactive visualizations and detailed statistical analysis powered by ydata-profiling.
- Python 3.9 or higher
- pip (Python package manager)
- Virtual environment (recommended)
-
Clone the repository
git clone https://github.com/UmanSheikh/EDA.git cd EDA -
Create and activate virtual environment
# On Windows python -m venv venv venv\Scripts\activate # On macOS/Linux python3 -m venv venv source venv/bin/activate
-
Install dependencies
pip install -r requirements.txt
-
Set up environment variables
Create a
.envfile in the root directory (or set these in your environment):# Email Configuration EMAIL_HOST_USER=your_email@example.com EMAIL_HOST_PASSWORD=your_app_specific_password # NEVER use your regular email password! # Stripe Configuration STRIPE_SECRET_KEY=your_stripe_secret_key STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key # Django Secret Key (for production) SECRET_KEY=your_secret_key_here
⚠️ Security Note:- Never commit the
.envfile to version control - For EMAIL_HOST_PASSWORD, use app-specific passwords (Gmail) or OAuth tokens - NEVER your regular email password
- Generate a strong SECRET_KEY for production using
python -c 'from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())'
- Never commit the
-
Run database migrations
python manage.py migrate
-
Create a superuser (admin account)
python manage.py createsuperuser
-
Collect static files
python manage.py collectstatic --noinput
-
Run the development server
python manage.py runserver
-
Access the application
Open your browser and navigate to:
http://127.0.0.1:8000/
- Sign Up: Create an account on the platform
- Verify Email: Check your email for the OTP verification code
- Choose Plan: Select a pricing plan that fits your needs
- Upload Data: Navigate to the dashboard and upload your CSV or Excel file
- Get Insights: Receive your comprehensive EDA report instantly
- Access History: View all your previous reports from your profile
EDA/
├── frontend/ # Main Django app
│ ├── migrations/ # Database migrations
│ ├── models.py # Database models (Users, Payment, UserHistory)
│ ├── views.py # View functions and business logic
│ ├── urls.py # URL routing
│ ├── utils.py # Utility functions (report generation)
│ ├── templates/ # HTML templates
│ └── static/ # Static files (CSS, JS, images)
├── getyourinsights/ # Project settings
│ ├── settings.py # Django settings
│ ├── urls.py # Root URL configuration
│ └── wsgi.py # WSGI configuration
├── static/ # Static files directory
├── media/ # User uploads and generated reports
├── manage.py # Django management script
└── requirements.txt # Python dependencies
Users_GYI (Custom User Model)
- Extends Django's AbstractUser
- Includes pricing type, verification status, and payment fields
UserHistory
- Tracks uploaded files and generated reports
- Links to user accounts
Payment
- Stores Stripe payment information
- Tracks payment status and dates
The report generation is handled by the generate_profile_report() function in frontend/utils.py:
from frontend.utils import generate_profile_report
# Generate a report
report_path = generate_profile_report('path/to/your/data.csv')- Django 5.1.1 - Web framework
- Python 3.9+ - Programming language
- SQLite - Database (development)
- Pandas 2.2.3 - Data manipulation
- NumPy 2.0.2 - Numerical computing
- ydata-profiling 4.10.0 - Automated EDA report generation
- Matplotlib 3.9.2 - Data visualization
- Seaborn 0.13.2 - Statistical data visualization
- SciPy 1.13.1 - Scientific computing
- Statsmodels 0.14.3 - Statistical models
- Stripe 11.1.0 - Payment gateway integration
- Bootstrap - CSS framework
- jQuery - JavaScript library
- Custom CSS/JS - For additional styling and functionality
- Pillow 10.4.0 - Image processing
- WordCloud 1.9.3 - Text visualization
- ImageHash 4.3.1 - Image hashing
Configure your email backend in settings.py:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.zoho.com' # or your email provider
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = os.environ.get('EMAIL_HOST_USER')
EMAIL_HOST_PASSWORD = os.environ.get('EMAIL_HOST_PASSWORD')Add your Stripe keys:
STRIPE_SECRET_KEY = os.environ.get('STRIPE_SECRET_KEY')
STRIPE_PUBLISHABLE_KEY = os.environ.get('STRIPE_PUBLISHABLE_KEY')For production deployment:
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'frontend/static'),
]- Set
DEBUG = Falsein production - Update
ALLOWED_HOSTSwith your domain - Use a strong, unique
SECRET_KEY - Use environment variables for sensitive data
- Configure HTTPS/SSL
- Set up proper CORS headers if needed
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch
git checkout -b feature/AmazingFeature
- Commit your changes
git commit -m 'Add some AmazingFeature' - Push to the branch
git push origin feature/AmazingFeature
- Open a Pull Request
- Follow PEP 8 style guidelines for Python code
- Write clear, descriptive commit messages
- Add comments for complex logic
- Update documentation as needed
- Test your changes thoroughly
This project is open source and available for use. Please contact the repository owner for licensing details.
- Website: edaanalysis.com (Offically Closed)
- Email: support@edaanalysis.com (No longer receving emails)
- GitHub Issues: Report a bug or request a feature
- ydata-profiling - For providing the excellent EDA report generation library
- Django Community - For the robust web framework
- Bootstrap - For the responsive UI components
- All contributors and users who help improve this platform
- ✅ Initial release
- ✅ User authentication and verification
- ✅ File upload and EDA report generation
- ✅ Stripe payment integration
- ✅ User dashboard and history
- ✅ Email notifications
- ✅ Responsive design
Future enhancements we're planning:
- Support for more file formats (JSON, Parquet, SQL)
- Advanced customization options for reports
- API access for programmatic usage
- Team collaboration features
- Export reports in multiple formats (PDF, Word)
- Scheduled report generation
- Integration with cloud storage (AWS S3, Google Drive)
- Real-time data analysis for streaming data
- Mobile app development
⭐ Star this repository if you find it helpful!
Made with ❤️ by Uman Sheikh