https://github.com/igrek51/schedulio
Plan your periodic events continuously
https://github.com/igrek51/schedulio
django fastapi python react schedule
Last synced: 3 months ago
JSON representation
Plan your periodic events continuously
- Host: GitHub
- URL: https://github.com/igrek51/schedulio
- Owner: igrek51
- License: mit
- Created: 2022-05-26T08:53:26.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-06-17T19:14:54.000Z (about 3 years ago)
- Last Synced: 2025-01-20T22:10:01.027Z (over 1 year ago)
- Topics: django, fastapi, python, react, schedule
- Language: TypeScript
- Homepage:
- Size: 40.1 MB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Schedulio
[](https://github.com/igrek51/schedulio)
[](https://hub.docker.com/r/igrek52/schedulio)
[](https://igrek51.github.io/schedulio)
Schedulio lets you plan your periodic events continuously.
1. Vote for the days with your firends.
2. Let Schedulio find the best match for you.
3. Repeat.
## Example screenshots



## Run from Docker Hub
Install [Docker](https://docs.docker.com/desktop/linux/install/#supported-platforms), run:
```bash
docker run --rm -it -p 8000:8000 -u 1000 --name schedulio igrek52/schedulio
```
and visit [http://127.0.0.1:8000](http://127.0.0.1:8000)
## Local Setup
```bash
make setup # setup virtualenv and install dependencies
. venv/bin/activate # activate virtualenv
```
### Running
Run on localhost:
```
make run
```
and visit [http://127.0.0.1:8000](http://127.0.0.1:8000).
You can also run it inside a local docker container:
```
make run-docker
```
### Database Management
Visit [http://127.0.0.1:8000/admin](http://127.0.0.1:8000/admin) endpoint to access administration panel and manage data models.
Default username & password is `admin` / `admin`.
In first place, reset the database and setup your admin account with:
```bash
make recreate-db
```
## Endpoints
- `/` - home page (frontend app)
- `/admin` - administration panel
- `/docs` - API documentation
- `/api/status` - Server status and version
## Tech stack
- **Python 3.8** - backend
- **Fastapi** & **Uvicorn** - serving API
- **Django** - managing data models
- **SQLite** - storing data
- [**nuclear**](https://github.com/igrek51/nuclear) - logging and error handling
- **Docker** - containerization
- **React** & **Typescript** - frontend app
- **Material UI** - UI component library
## Testing
Run unit tests with:
```bash
make test
```