https://github.com/medea-learner/book-collection-task-manager
A web application combining a REST API for book collection management and a task manager app. The task manager supports multi-user registration with role-based access control, allowing managers to create tasks and assign them to workers.
https://github.com/medea-learner/book-collection-task-manager
book-management django docker python rest-api task-manager vscode
Last synced: 27 days ago
JSON representation
A web application combining a REST API for book collection management and a task manager app. The task manager supports multi-user registration with role-based access control, allowing managers to create tasks and assign them to workers.
- Host: GitHub
- URL: https://github.com/medea-learner/book-collection-task-manager
- Owner: medea-learner
- Created: 2023-12-16T22:45:30.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-01-13T13:38:33.000Z (over 1 year ago)
- Last Synced: 2025-01-21T22:14:41.589Z (over 1 year ago)
- Topics: book-management, django, docker, python, rest-api, task-manager, vscode
- Language: Python
- Homepage:
- Size: 19.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Book Collection and Task Manager
A web application that combines two main functionalities:
1. A REST API for managing a collection of books.
2. A task management app with multi-user registration and role-based access control.
## Features
### Book Collection API
- Add, update, delete, and view books.
### Task Manager
- **User Registration**: Supports multiple user accounts.
- **Roles**: Users can have roles such as `Manager` and `Worker`.
- **Task Creation**: Only `Manager` role users can create tasks.
### Notes
- Roles (`Manager` and `Worker`) need to be created manually via the admin panel -> Roles admin view.
## Setup
### Using Docker (Recommended)
1. Install **Docker** and **Docker Compose** on your machine.
2. Open the project in a code editor and select **"Reopen in Container"**.
3. Run the command:
```bash
Launch Test App
```
### Manual Setup
1. Create a virtual environment:
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
2. Install dependencies:
```bash
pip install -r requirements.txt
```
3. Run the application:
```bash
python manage.py runserver
```
## Usage
- Access the application at `http://127.0.0.1:8000/`.
- Use the admin panel to create roles (`Manager` and `Worker`).
- Register users and assign roles via the admin panel.
## Technologies Used
- **Backend**: Django
- **Database**: SQLite (default, can be configured)
- **Containerization**: Docker
## Contributing
Contributions are welcome! Fork the repository and submit a pull request for review.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.