notorix/notorix

User management tool for schools

0.3.19 2021-09-24 13:27 UTC

This package is auto-updated.

Last update: 2022-01-16 13:03:34 UTC


README

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Notorix

User management tool for schools
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgements

About The Project

![Product Name Screen Shot][product-screenshot]

What is Notorix?

Notorix is a user management tool for schools that:

  • answers the questions "who is who" and "in relation to whom"
  • informs users about the legal framework and general conditions
  • manages registrations, modifications, deletions, and accesses of user accounts
  • validates user's e-mail address
  • strengthens the security of personal data and their operations
  • guarantees user consent and privacy (RGPD)
  • maintains data sovereignty within the school
  • is free and open source

For who?

  • school administrators
  • teachers
  • students
  • parents
  • school software developers

How does it work?

  • web interface
  • relational database
  • interactions with multiple platforms via API (GraphQL, LDAP, OAuth)

Extensions

Notorix is the cornerstone between all the systems with a user base. Extensions make them work together:

  • Import population (students, parents, classes) from Siel
  • Link with e-mail server and deliver corporate e-mail adresses
  • Secure Wi-Fi with personal access (1 account per user)
  • Login to multiple platforms with the same account
  • ...

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

There're 2 ways to install Notorix:

  1. docker
  2. composer

Docker embeds all the necessary components, but it must be reserved to test and development environments.

For production, it is advisable to use a proper web server providing:

  • Nginx
  • PHP >= 7.3
  • Composer
  • Nodejs + npm
  • MariaDB/MySQL
  • Redis

Installation

Docker

  1. Clone the repo

    git clone https://github.com/githesix/notorix.git
  2. Edit .env

  3. Start the container

    cd notorix
    docker-compose up

Composer

  1. Install Notorix
    composer create-project notorix/notorix
  2. Generate secure key
    cd notorix
    php artisan key:generate
  3. Edit .env
  4. Give the webserver the rights to read and write to storage and cache
     sudo chgrp -R www-data storage bootstrap/cache
     sudo chmod -R ug+rwx storage bootstrap/cache
  5. Edit /resources/markdown/policy.md and /resources/markdown/terms.md to your liking
  6. Create a first user with admin privileges: php artisan create:adminuser

Usage

This part is still being written.

For more examples, please refer to the Documentation

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Thesis ASBL (NPO) - project_notorix@thesis.nu

Project Link: https://github.com/githesix/notorix

Acknowledgements