octon
Notifies you when a new release has been made on repositories you starred on Github.
Features
Emails you when a new release has been made on Github.
- Daily mail
- Weekly mail
- Github support
- TODO: Docker support
Stack
- Next.js
- React
- Apollo - Graphql client
- styled components - Styling
- Graphcool - Graphql backend
- Auth0 - Auth
Contribute
Pull requests are always welcome!
In order to run the project you will need to setup Graphcool and Auth0.
Graphcool setup
You need to apply the following schema to your graphcool project.
type User implements Node {
id: ID! @isUnique
auth0UserId: String @isUnique
email: String! @isUnique
username: String!
avatar: String!
lastGithubSyncAt: DateTime
dailyNotification: Boolean! @defaultValue(value: true)
weeklyNotification: Boolean! @defaultValue(value: true)
repositories: [Repository!]! @relation(name: "UserRepositories")
createdAt: DateTime!
updatedAt: DateTime!
}
type Repository implements Node {
id: ID! @isUnique
name: String!
avatar: String!
htmlUrl: String!
type: String!
refId: String!
users: [User!]! @relation(name: "UserRepositories")
releases: [Release!]! @relation(name: "RepositoryReleases")
createdAt: DateTime!
updatedAt: DateTime!
}
type Release implements Node {
id: ID! @isUnique
tagName: String!
htmlUrl: String!
type: String!
publishedAt: DateTime!
refId: String!
repository: Repository! @relation(name: "RepositoryReleases")
createdAt: DateTime!
updatedAt: DateTime!
}
Auth0 setup
App setup
cp .env.default .env
Edit the .env fileyarn
Install nodejs dependenciesyarn dev
Start the app in dev mode
Before submitting a pull request, please verify that your branch pass the tests with command yarn test
.
Special thanks to Quentin Saubadu for the logo and design!
License
MIT © Léo Pradel