My University eco system (psychology website)
My university is an integrated ecosystem that consolidates all the services needed by Innopolis University students into a single website, streamlining their lives.
Among these services is a psychology website, which facilitates scheduling and organizing appointments between students and specialists.
This ensures that all students have access to this valuable resource, enhancing their comfort and well-being at the university.
project/
├── src/
│ ├── __init__.py
│ ├── app.py
│ ├── routers/
│ │ ├── __init__.py
│ │ ├── appointment_router.py
│ │ ├── admin_router.py
│ │ └── user_router.py
│ ├── models/
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ └── ...
│ ├── controllers/
│ │ ├── __init__.py
│ │ ├── user_controller.py
│ │ ├── admin_controller.py
│ │ └── appointment_controller.py
│ ├── instance/
│ │ └── events.db
│ └── database
│ │ └── database.py
│ └── middleware
│ └── middleware.py
├── tests/
│ ├── __init__.py
│ └── test_app.py
└── README.md
Book an Appointment: Students can book an appointment for a psychology session.
Create Timeslots: Specialists can create available timeslots for users to book.
Log In and Registration: Secure login and registration system for both students and specialists.
Specialist Dashboard:
View a list of all booked sessions.
View available (free) timeslots .
User Dashboard: Students can view their scheduled sessions.
Availability Check: Users can check if a timeslot is booked or available.
Session Type Selection: Users can choose between group sessions and individual sessions.
You can visit the website then:
Register
Login
Book appointment by chosing the specialist then free time slot after chosing a f date .
you can put comment to allow the specialist to know the goal of the session.
Notes that you can not book more than one appointment with a specific specialist.
For specialist
To be specialist(admin):
Register
Login
Apply for being admin
Wait for response.
To set up the environment for your Flask project, follow these steps:
Open your terminal and run:
sudo apt update
To install Python 3, run:
sudo apt install python3
To install pip for Python 3, run:
sudo apt install python3-pip
To install the venv package, run:
sudo apt install python3-venv
pip install Flask PyJWT
Create a virtual environment named venv by running:
python3 -m venv venv
Activate your virtual environment with the following command:
source venv/bin/activate
Install Flask and Flask extensions using pip:
pip3 install flask flask-sqlalchemy
pip install flask-cors
pip install flask-pydantic
pip install pydantic[email]
pip install flask-blueprint
Navigate to the directory containing your application and run:
python3 -m src.app
###Unit Testing
python -m unittest discover -s tests to run the test
Creating the database
from src.app import app, db
Create an application context
app_ctx = app.app_context()
app_ctx.push()
Now you can perform Flask-SQLAlchemy operations within this context
db.create_all()
Don't forget to pop the application context when you're done
app_ctx.pop()
npm i
npm run dev
- Ensure you have the necessary permissions to run the
sudocommands. - The virtual environment should be activated whenever you are working on your project to ensure all dependencies are available.
By following these steps, you will have a Flask environment set up and ready for development.