Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fr0st1n/mydailies
A simple, open-source and self-hosted habit tracker app.
https://github.com/fr0st1n/mydailies
docker golang react rest-api self-hosted typescript webapp
Last synced: 20 days ago
JSON representation
A simple, open-source and self-hosted habit tracker app.
- Host: GitHub
- URL: https://github.com/fr0st1n/mydailies
- Owner: FR0ST1N
- License: mit
- Created: 2022-10-21T06:26:45.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2023-06-05T03:46:04.000Z (over 1 year ago)
- Last Synced: 2024-10-05T17:07:03.167Z (about 1 month ago)
- Topics: docker, golang, react, rest-api, self-hosted, typescript, webapp
- Language: TypeScript
- Homepage:
- Size: 795 KB
- Stars: 9
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MyDailies
A simple, open-source and self-hosted habit tracker app.
![Banner](banner.png)
[Click here for screenshots.](screenshots)
## Features
- Simple UI 👌
- Dark mode 🌕
- Easy deployment with [Docker][1]. 🐋## Deployment
> Make sure you have [Docker][1] and [Docker Compose][2] installed.
1. Clone the repo.
```bash
git clone https://github.com/FR0ST1N/MyDailies.git
```
2. Go to project root.
```bash
cd MyDailies
```
3. Set `JWT_SECRET_KEY` environment variable in the api [Dockerfile](Dockerfile).
4. Run docker compose.
```bash
docker compose up
```
5. Create the first user (this user will be an admin and can add more users from the users page accessed from the menu).
```bash
curl -X POST http://localhost:8080/api/user/setup-admin \
-H 'Content-Type: application/json' \
-d '{"email": "[email protected]", "password": "password", "name": "Your Name", "timezone": "TZ database name"}'
```[List of tz database time zones](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)
## Development
### Start server
- Start API server with `go run ./main.go`
- Start web server with `npm start --prefix ./web`### Run tests
- API unit test can be run using `go test ./...`
### Code Formatting
- API `gofmt -w -s .`
- Web `npm run format`## License
- [MIT](LICENSE)
[1]: https://www.docker.com/
[2]: https://docs.docker.com/compose/