Skip to content

sssilver/angler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Angler

Angler is a Python/Javascript application I made for ICLT, to help them manage the school. It is opensource.

Installation notes

Angler is meant to be built and shipped using Docker, so it's super easy to spin up if you know how to work that stuff. And if you don't, this is a good opportunity to get into the goodness.

When running the container, 2 ports will need to be mapped: 80 for serving the hook, and 8080 for serving the rod. A good way to build and run the container would thus be:

$ cd $YOUR_ANGLER_PATH
$ docker build -t angler .
...
$ docker run -p 80:80 -p 8080:8080 -v /opt/data:/opt/data -d angler

That also mounts /opt/data to be used as a directory for the SQLite datafile.

After first install, the system will have no users in the database, so it will hopefully be impossible to log in and add any staff members using hook. The first user will therefore have to be added manually using some kind of an sqlite client. sqlite3 on Linux works fine. The following command:

sqlite3 /opt/data/angler.db "insert into staff(email, password) values('[email]', '[password]')"

Gets the job done.

Note that Angler uses bcrypt with 12 rounds of hashing to encrypt user passwords. This means that the password value will need to be encrypted before being inserted into the database, otherwise rod will not be able to match it during authentication. To encrypt your first user's password, use something like this.

About

Business management software for a school

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published