https://github.com/raphi011/scores-api
https://github.com/raphi011/scores-api
go json rest
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/raphi011/scores-api
- Owner: raphi011
- Created: 2017-11-24T15:13:07.000Z (over 8 years ago)
- Default Branch: development
- Last Pushed: 2023-05-05T02:24:02.000Z (about 3 years ago)
- Last Synced: 2026-01-15T07:31:23.201Z (5 months ago)
- Topics: go, json, rest
- Language: Go
- Homepage: https://scores.network
- Size: 18.8 MB
- Stars: 10
- Watchers: 2
- Forks: 1
- Open Issues: 48
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# scores
## Motivation
This is mainly a hobby project of mine to improve my skills creating a modern javascript SPA + GO backend with all the newest bells and whistles.
### Incomplete list of features / tools:
- Serverside Rending (courtesy of the awesome [nextjs](https://nextjs.org/) framework).
- Automated builds / tests / deployments with [github actions](https://github.com/features/actions).
- Debugging of Front + Backend (via VS-Code).
- Automated database migrations.
- Webscraping of http://www.volleynet.at/beach.
- Plugable persistance architecture, currently it's possible to store the data with Postgresql, MySQL and Sqlite3. No-SQL db's could also be supported.
- Well tested against all supported data stores
- Integration tests
- Unit tests
- Browser E2E tests (TODO)
## Components
### Backend
Srape the data from the official Austrian beach volleynet homepage and present it as a REST api.
### Web Frontend
Signup/out of Tournaments, browse and filter through tournaments. Get notifications, ...
## Build locally
Development is done on Linux with VS-Code.
To get up and running follow these steps:
1. Install Node / Go 1.11+ / Docker + Docker Compose
1. Run npm install in ./web-client
1. Run docker-compose up
1. Start Frontend / Backend in VS-Code
1. Create test admin account by navigating to `localhost/api/debug/new-admin`
1. Open `localhost` in your browser of choice and login
## FAQ
- _Do you plan to earn money with this project?_
Nope I'm doing this purely for educational and practical reasons :).
- _Do you store volleynet passwords when logging in to tournaments?_
No, the only time you need to enter the volleynet password is when signing up/out of tournaments - since there is no offical API I'm unable to authenticate without having the user provide his/her cleartext password. But rest assured (or look at the sourcecode ;) ) that I will not do anything evil with it.
## Contributing
To contribute just open an issue and tell me how you would like to help!