A web application for analyzing log files, featuring a React frontend and Flask backend. Upload log files to extract insights such as total logs processed, unique IPs detected, and detailed findings.
- Upload and analyze log files
- Display total logs and unique IPs
- View detailed findings in a table format
- Responsive UI with animations
- Backend: Flask (Python)
- Frontend: React with Vite, Tailwind CSS
- Libraries: Axios for API calls, Framer Motion for animations
- Python 3.8 or higher
- Node.js 16 or higher
- npm or yarn
-
Navigate to the backend directory:
cd backend -
Install Python dependencies:
pip install -r requirements.txt
-
Navigate to the frontend directory:
cd frontend -
Install Node.js dependencies:
npm install
- From the backend directory, run the Flask server:
The backend will run on
python app.pyhttp://127.0.0.1:5000.
-
From the frontend directory, start the development server:
npm run devThe frontend will run on
http://localhost:5173. -
Open your browser and go to
http://localhost:5173to access the application.
- Upload a log file using the upload box on the dashboard.
- The application will analyze the file and display:
- Total logs processed
- Number of unique IPs
- A table of findings and top IPs
log-file-analyzer/
├── backend/
│ ├── app.py
│ ├── requirements.txt
│ └── analyzer/
│ ├── __init__.py
│ └── log_parser.py
├── frontend/
│ ├── package.json
│ ├── vite.config.js
│ └── src/
│ ├── App.jsx
│ ├── main.jsx
│ └── components/
│ ├── UploadBox.jsx
│ ├── ReportCard.jsx
│ └── FindingsTable.jsx
└── README.md
Feel free to submit issues or pull requests for improvements.
This project is open-source. See LICENSE for details.