💃 Anime tracker, database and community.
378 Commits
.vscode | ||
auth | ||
benchmarks | ||
db | ||
images | ||
jobs | ||
layout | ||
logs | ||
middleware | ||
mixins | ||
pages | ||
patches | ||
scripts | ||
security | ||
styles | ||
utils | ||
.editorconfig | ||
.gitignore | ||
assets.go | ||
config.json | ||
main_test.go | ||
main.go | ||
makefile | ||
README.md | ||
rewrite.go | ||
tests.go | ||
tsconfig.json |
Anime Notifier
Info
notify.moe is powered by the Aero framework from the same author. The project also uses Go and Aerospike.
Installation
Prerequisites
- Install a Debian based operating system
- Install Go (1.9 or higher)
- Install Aerospike (3.14.0 or higher)
Download the repository and its dependencies
go get github.com/animenotifier/notify.moe
Install pack & run
go get github.com/aerogo/pack
go get github.com/aerogo/run
go install github.com/aerogo/pack
go install github.com/aerogo/run
Build all
- Run
make all
- Run
make ports
to set up local port forwarding (80 to 4000, 443 to 4001) - You should be able to start the server by executing
run
now
Database
- Remove all namespaces in
/etc/aerospike/aerospike.conf
- Add a namespace called
arn
:
namespace arn {
storage-engine device {
file /home/YOUR_NAME/YOUR_PATH/notify.moe/db/arn-dev.dat
filesize 64M
data-in-memory true
# Maximum object size. 128K is ideal for SSDs but we need 1M for search indices.
write-block-size 1M
# Write block size x Post write queue = Cache memory usage (for write block buffers)
post-write-queue 1
}
}
- Download the database for developers to notify.moe/db/arn-dev.dat
- Start the database using
sudo service aerospike start
- Confirm that the status is "green":
sudo service aerospike status
Hosts
- Add
127.0.0.1 arn-db
to/etc/hosts
- Add
127.0.0.1 beta.notify.moe
to/etc/hosts
HTTPS
- Create the certificate
notify.moe/security/fullchain.pem
(domain:beta.notify.moe
) - Create the private key
notify.moe/security/privkey.pem
API keys
- Get a Google OAuth 2.0 client key & secret from console.developers.google.com
- Create the file
notify.moe/security/api-keys.json
:
{
"google": {
"id": "YOUR_KEY",
"secret": "YOUR_SECRET"
}
}
Fetch data
- Run
jobs/sync-anime/sync-anime
from this repository to fetch anime data
Run
- Start the web server in notify.moe directory:
run
- Open
https://beta.notify.moe
which should now resolve to localhost