A comprehensive research management system built with modern web technologies, designed to help researchers organize, analyze, and collaborate on academic papers and documents.
-
Document Management 📄
- Upload PDF and text documents
- Categorize documents for better organization
- View document details and metadata
- Delete unwanted documents
- Search and filter documents
-
Category Management 🗂️
- Create custom categories
- Delete categories
- Automatic categorization of documents
- Persistent category storage
-
Note Taking 📝
- Create and manage notes for each document
- Organize notes by document
- Rich text formatting support
-
Data Analysis 📊
- Document analysis tools
- Statistical analysis of research data
- Visual representation of research trends
-
Modern Stack 🛠️
- React + Vite frontend
- Node.js + Express backend
- MongoDB database
- Responsive design
-
User Experience 😊
- Intuitive drag-and-drop interface
- Modal-based forms for better user interaction
- Real-time updates
- Clean and modern UI
PersonalResearchPlatform/
├── backend/ # Backend server code
│ ├── src/
│ │ ├── controllers/ # API controllers
│ │ ├── models/ # MongoDB models
│ │ ├── routes/ # API routes
│ │ └── server.js # Main server file
│ └── uploads/ # Uploaded files storage
├── src/ # Frontend React code
│ ├── components/ # React components
│ ├── pages/ # React pages
│ └── App.jsx # Main app component
├── public/ # Public static files
└── package.json # Project dependencies
- Node.js (v14+)
- npm or yarn
- MongoDB (local or Atlas)
-
Clone the repository
git clone <repository-url> cd PersonalResearchPlatform
-
Install dependencies
# Install frontend dependencies npm install # Install backend dependencies cd backend npm install cd ..
-
Configure environment variables Create a
.envfile in the backend directory:# MongoDB connection string MONGODB_URI=mongodb://localhost:27017/research-platform # Server port PORT=5001
-
Start the backend server
cd backend node src/server.js -
Start the frontend development server
# In a new terminal npm run dev -
Access the application Open your browser and navigate to
http://localhost:5173
GET /api/documents- Get all documentsGET /api/documents/:id- Get document by IDPOST /api/documents/upload- Upload new documentPATCH /api/documents/:id- Update documentDELETE /api/documents/:id- Delete document
GET /api/categories- Get all categoriesPOST /api/categories- Create new categoryDELETE /api/categories/:id- Delete category
GET /api/notes- Get all notesGET /api/notes/:documentId- Get notes for specific documentPOST /api/notes- Create new noteDELETE /api/notes/:id- Delete note
GET /api/analysis- Get analysis data
- Document List - Browse and manage all documents
- Document Detail - View detailed document information
- Upload Page - Upload new documents
- Note Manager - Manage notes for documents
- Analysis Page - View document analysis
- Statistics Page - View research statistics
- Settings Page - Configure platform settings
- Drag-and-Drop - Easy document organization
- Modal Forms - Intuitive data entry
- Responsive Design - Works on all devices
- Real-time Updates - Instant feedback
- React - JavaScript library for building user interfaces
- Vite - Modern build tool
- Axios - HTTP client for API requests
- React Router - Client-side routing
- Node.js - JavaScript runtime
- Express - Web framework
- MongoDB - NoSQL database
- Mongoose - MongoDB object modeling
- Multer - File upload handling
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
- Built with ❤️ for researchers everywhere
- Powered by modern web technologies
- Designed for simplicity and efficiency
Happy Researching! 🎓