CoWork-Connect is a Django-based web application designed for booking desks in a coworking space. This application allows users to view available desks, make reservations, and manage their bookings. The admin panel enables administrators to manage users, desks, reservations, contact information, terms of service, and the main page content.
- Python 3.10 or higher
- Celery 5.0.5 or higher
- Redis 3.5.3 or higher
- Git
- Virtualenv (recommended)
-
Clone the repository:
git clone https://github.com/yourusername/CoWork-Connect.git cd CoWork-Connect/Django-CoWork-Connect
-
Create and activate a virtual environment:
python3 -m venv venv source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Run migrations:
python manage.py migrate
-
Clone the repository:
git clone https://github.com/yourusername/CoWork-Connect.git cd CoWork-Connect\Django-CoWork-Connect
-
Create and activate a virtual environment:
python -m venv venv .\venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Run migrations:
python manage.py migrate
-
Clone the repository:
git clone https://github.com/yourusername/CoWork-Connect.git cd CoWork-Connect/Django-CoWork-Connect
-
Create and activate a virtual environment:
python3 -m venv venv source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Run migrations:
python manage.py migrate
To import the initial set of desks, you need to run the import_desk.py
script:
python manage.py runscript import_desk
-
Start the development server:
python manage.py runserver
-
Open another terminal and start the Celery worker:
celery -A CoWorkConnect worker --loglevel=info
-
Create a .env file:
In the folder /CoWork-Connect/Django-CoWork-Connect/, create a file named .env with the following content:
SECRET_KEY= write here your secret key EMAIL_HOST_USER='write here host email' EMAIL_HOST_PASSWORD='write here host password' DEFAULT_FROM_EMAIL='write here default from email'
The admin panel allows you to manage desks, users, reservations, contact information, terms of service, and the main page content.
-
Create a superuser:
python manage.py createsuperuser
-
Access the admin panel:
Open your browser and go to http://127.0.0.1:8000/admin/ and log in with your superuser credentials.
-
Screenshots:
- Admin Login Page
- Admin Dashboard
- Managing Desks
- Managing Users
- Managing Reservations
- Editing Contact Information
- Editing Terms of Service
- Editing Main Page Content
-
Home Page:
Unregistered and not logged-in users can view the home page and read about CoWork Connect.
-
Offer Page:
Unregistered and not logged-in users can view available desks on the offer page.
-
Registration and Login:
Users need to register and log in to make a reservation.
-
Reservation:
After logging in, users can book a desk by selecting the desired time period.
-
User Reservations:
Users can view their reservations on the 'My Reservations' page and cancel them if necessary.
-
Email Notifications:
Users receive email notifications upon registration, reservation, and cancellation.