https://github.com/n-elmer/survey-manager
SURVEY 📊 MANAGEMENT 📈 SYSTEM
https://github.com/n-elmer/survey-manager
artificial-intelligence css flask html javascript jupyter-notebook machine-learning predictive-modeling python reactjs system-development vitejs webapplication
Last synced: about 2 months ago
JSON representation
SURVEY 📊 MANAGEMENT 📈 SYSTEM
- Host: GitHub
- URL: https://github.com/n-elmer/survey-manager
- Owner: N-Elmer
- License: apache-2.0
- Created: 2024-06-19T10:27:18.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-19T14:49:34.000Z (almost 2 years ago)
- Last Synced: 2025-03-15T18:31:40.293Z (about 1 year ago)
- Topics: artificial-intelligence, css, flask, html, javascript, jupyter-notebook, machine-learning, predictive-modeling, python, reactjs, system-development, vitejs, webapplication
- Language: Python
- Homepage:
- Size: 6.26 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SURVEY-MANAGER
SURVEY 📊 MANAGEMENT 📈 SYSTEM
Survey Manager is a web application for creating and managing surveys. It offers a user-friendly interface for non-technical users to easily create surveys, answer questions, and view analytics on the responses.
## Folder Structure
```
📂 SURVEY-MANAGER
│
├── 📄 README.md
├── 📂 backend
│ ├── 📂 __pycache__
│ ├── 📂 instance
│ ├── 📂 venv
│ ├── 📄 app.py
│ ├── 📄 init_db.py
│ ├── 📄 schema.sql
│ └── 📄 survey.db
├── 📂 node_modules
│ ├── 📂 modules
│ └── 📄 package-lock.json
├── 📂 public
│ ├── 📄 logo.ico
│ └── 📄 vite.svg
├── 📂 src
│ ├── 📂 assets
│ │ ├── 📄 logo.ico
│ │ └── 📄 vite.svg
│ ├── 📂 components
│ ├── 📂 pages
│ │ ├── 📄 AnswerQuestions.jsx
│ │ ├── 📄 Dashboard.jsx
│ │ ├── 📄 ManageQuestions.jsx
│ └── 📂 utils
│ └── 📄 api.js
├── 📄 App.css
├── 📄 App.jsx
├── 📄 index.css
└── 📄 main.jsx
```
The project folder structure consists of the following files and folders:
- **📄 README.md**: This file contains the documentation and information about the Survey Manager application, including how to use it and any additional details.
- **📂 backend**: This folder contains the backend-related files for the Survey Manager application.
- **📄 app.py**: This file contains the Flask backend for the Survey Manager application. It handles the API endpoints and database interactions.
- **📄 init_db.py**: This file initializes the database schema.
- **📄 schema.sql**: This file contains the SQL statements to create the necessary database schema.
- **📄 survey.db**: This is the SQLite database file for the Survey Manager application.
- **📂 node_modules**: This folder contains all the npm packages required for the frontend of the application.
- **📄 package-lock.json**: This file describes the exact tree that was generated, such that subsequent installs are able to generate identical trees, regardless of intermediate dependency updates.
- **📂 public**: This folder contains the static assets used in the web application.
- **📄 logo.ico**: This is the favicon for the application.
- **📄 vite.svg**: This is a Vite logo used for development purposes.
- **📂 src**: This folder contains the source code for the frontend of the application.
- **📂 assets**: This subfolder contains additional assets used in the application.
- **📄 logo.ico**: This is the favicon for the application.
- **📄 vite.svg**: This is a Vite logo used for development purposes.
- **📂 components**: This subfolder will contain any reusable React components.
- **📂 pages**: This subfolder contains the main page components of the application.
- **📄 AnswerQuestions.jsx**: This component handles the interface for answering survey questions.
- **📄 Dashboard.jsx**: This component displays analytics and visual data of survey responses.
- **📄 ManageQuestions.jsx**: This component handles the creation and management of survey questions.
- **📂 utils**: This subfolder contains utility functions used across the application.
- **📄 api.js**: This file contains functions for making API requests to the backend.
- **📄 App.css**: This file contains the main CSS styles for the application.
- **📄 App.jsx**: This file is the main entry point for the React application.
- **📄 index.css**: This file contains global CSS styles for the application.
- **📄 main.jsx**: This file is the entry point for the React application and is responsible for rendering the App component.
## Usage
To use the Survey Manager web application, follow these steps:
1. **Clone or download this project repository.**
2. **Install the required dependencies for the frontend:**
```bash
npm install
```
3. **Install the required dependencies for the backend:**
```bash
pip install -r backend/requirements.txt
```
4. **Initialize the database:**
```bash
cd backend
python init_db.py
```
5. **Run the backend Flask server:**
```bash
python app.py
```
6. **Run the frontend development server:**
```bash
npm run dev
```
7. **Open a web browser and access the Survey Manager web application by navigating to `http://localhost:3000`.**
## Code Explanation
The Survey Manager web application is implemented using React for the frontend and Flask for the backend. Here's a breakdown of the different components:
- **JavaScript (React)**: The frontend is implemented using React. The components in the `src/pages` folder handle the main functionalities of the application. The `src/utils/api.js` file contains functions for making API requests to the backend.
- **Flask**: The backend is implemented in the `backend/app.py` file. It handles the routing and API endpoints for the application.
- **CSS**: The styles for the application are defined in the `src/App.css` and `src/index.css` files.
## Troubleshooting
If you encounter any issues or errors while using the Survey Manager web application, consider the following:
- Double-check that all the necessary files and folders are present in the correct locations, as described in the folder structure section.
- Ensure that you have Node.js and npm installed on your system, and the required dependencies are installed by running `npm install`.
- Ensure that you have Python installed on your system, and the required dependencies are installed by running `pip install -r backend/requirements.txt`.
- Verify that the database file `survey.db` is initialized and located in the `backend` folder.
- If you encounter any issues with the backend, check that there are no errors in the `backend/app.py` file and that the required dependencies are installed.
If the problem persists, feel free to open an issue in the GitHub repository for further assistance.
---
This README file provides an overview of the Survey Manager web application, its folder structure, usage instructions, code explanation, and troubleshooting tips. Use it as a guide to understand and utilize the Survey Manager app.