Version 2.X is here!!

Jul 2, 2022 | Programming

For Version 1.X, view releases. Continuation of Version 1.X support in v1-x-branch branch.

School Management and Accounting Software

Build Status Pricing Linux Code Climate Latest release Made With Laravel Discord Contribute

We like to challenge the quality of what we build to make it better. To do so, we try to make the product intuitive, beautiful, and user-friendly. Innovation and hard work help to fulfill these requirements. I believe in order to innovate we need to think differently. A few months ago I discovered there was no open source free school management software that met my quality standards. I happened to know a bit of programming, so I decided to make one. I also believe that working with more people can push the standard higher than working alone. So I decided to make it open source and free.

Featured on Laravel News

See the news here.

Framework Used

Server Requirements

  • PHP = 7.4
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension

Testing

We want testable software. Most parts of the software in the previous version 1.x were covered by tests. Let’s cover version 2.x as well. You can also contribute by writing test cases!

To run Feature and Unit Tests, run the following commands:

sh
$ docker exec -it app sh  
Inside container shell
:# php artisan test

License

GNU General Public License v3.0

Contribute

Unifiedtransform is 100% open source and free forever!! Community contribution can make this product better!!

Repobeats analytics image

When you contribute to a Github project you agree with these terms of Github Terms of Service (Contributions Under Repository License). Since this project is under GNU General Public License v3.0, according to Github’s Terms of Service, all your contributions are also under the same license terms. Thus, you permit the user of this software to use your contribution under the terms of GNU General Public License v3.0.

What’s New

v2.X is built from scratch. Both UI and internal workflow of the application are changed to a better design.

Features Yet to Be Migrated from v1.X to v2.X

Following features that exist in v1.X will be added in v2.X as well in future:

  • Stripe payment
  • Messaging
  • Managing library
  • Managing Income and Expenses
  • Mass student and teachers export and import
  • Printing reports
  • Managing certificates
  • Supported other languages (Spanish, …)

How to Start

Using Docker Container:

Video instruction

Video of Installation Process

Document instruction

Docker is now supported and improved.

How To Set Up Laravel, Nginx, and MySQL With Docker Compose on Ubuntu 20.04

With the improved Docker setup, you will get:

  • Nginx
  • PHP 7.4
  • MySQL 5.7

Steps to Install:

  1. Clone or download the repository.
  2. Create purify folder in storage/app directory.
  3. Run cp .env.example .env.
  4. Run docker-compose up -d.
  5. Run docker exec -it db sh. Inside the shell, run:
  6. :# mysql -u root -p        Mysql Root password: your_mysql_root_password in the docker-compose.yml file. 
    mysql SHOW DATABASES; 
    mysql GRANT ALL ON unifiedtransform.* TO unifiedtransform@% IDENTIFIED BY secret; 
    mysql FLUSH PRIVILEGES; 
    mysql EXIT;
  7. Finally, exit the container by running exit in the container shell.
  8. Run docker exec -it app sh. Inside the shell, run:
  9. :# composer install 
    :# php artisan key:generate 
    :# php artisan config:cache 
    :# php artisan migrate:fresh --seed
  10. Then exit from the container.
  11. Visit http://localhost:8080. Admin login credentials:
    • Email: admin@ut.com
    • Password: password

Steps to Follow:

Please carefully follow the steps to setup the school.

Role: Admin

School Dashboard

1. Create a School Session:

After logging in for the first time, you will see the following message at the top navbar.

To create a new session, go to Academic Settings page.

Academic Settings Page:

Successful creation of a session using the following form will display a success message:

2. Create a Semester

Now create a semester. A semester duration usually is 3 – 6 months.

3. Create Classes

Now create classes. Give common names such as: Class 1 or Class 11 (Science).

4. Create Sections

Now create sections for each class. Give sections name (e.g.: Section A, Section B), room number, and assign them to the respective class.

5. Create Courses

Now create courses and assign them to the respective semester and class.

6. Set Attendance Type

Attendance can be maintained in two ways: By section or By course. Stick to one type for a semester. Default: By section.

7. Add Teachers

Now add teachers.

8. Assign Teacher

Now assign teachers to semester, class, section, and course.

9. Add Students

Now add students and assign them to class and section.

10. View Added Teachers and Students

Now browse to View Teachers and View Students pages.

11. View Student and Teacher Profile

Now browse to Profile from student and teacher list.

12. View and Edit Classes and Sections

Now go to Classes. Here you can view all classes and their respective sections, syllabi, and courses. Classes, sections, and courses can be edited from here.

13. Create Grading Systems

Now create grading systems for each class and semester.

14. View Grading Systems

Now browse to created Grading Systems.

15. Add and View Grading System Rules

Now add rules to the grading system and browse them.

16. Add Notices

Admin can add notices. Right now, notices can be written using a rich text editor.

17. Create Events

Events can be created inside a calendar. Click and drag on a date or time period to prompt the input box. An already created event can be deleted by clicking on the event.

18. Create and View Routines

Routines can be created for each class and section.

19. Add Syllabi

Syllabus for each class and course can be added. Admin can view them from Classes page. Syllabus can be downloaded.

20. Browse by Sessions

You can browse previous sessions like a snapshot. This mode is Read only. Nobody should be able to change the previous session’s data.

21. Allow Teachers to Submit Final Marks

Submitting final marks of a semester should be controlled. By enabling this feature, it is possible to open a Mark Submission Window for a short time period. Default: Disallowed.

22. Promote Students

Students can only be promoted to a new class and section when a new Session along with its classes and sections are created.

Role: Teacher

Teachers Dashboard

1. View Assigned Courses

Teachers can manage their assigned courses from this page. From this page, teachers can do the following:

  • Take and view attendance
  • View Syllabus
  • Create and view Assignment
  • Give Marks
  • Message Students (Available in v1.X. Will be added in v2.X as well).

2. Take Attendance

Teachers can take attendance for a section or a course (attendance type set by Admin).

3. View Attendance

Teachers can view attendance.

4. View Syllabus

Teachers can view and download the syllabus.

5. Create Assignment

Teachers can create assignments for an assigned course by uploading files.

6. View Assignments

Teachers can view and download created assignments.

7. Create Exams

Before giving marks, teachers need to create exams and set their rules. Don’t have to create all the exams at a time. (Admin can also create exams on behalf of teachers).

8. View Created Exams

Teachers can view their created exams.

9. Add, Edit, and View Exam Rules

Teachers can add, edit, and view exam rules.

10. Give Marks

Teachers can give marks after creating exams. Clicking on the exam names will lead to associated exam rules.

11. Submit Final Marks

When the Grade submission window is open, teachers can submit final marks. Calculated marks will be generated based on all exam marks. Final marks should be within the range set in the grade rules.

If final marks are submitted, a message will be shown in place of the submit button in the Give Marks page.

12. View Final Results

Teachers can view final results and calculated grades for a semester, class, section, and course based on their created grade rules.

Role: Student

Student Dashboard

1. View Attendance

A student can view his/her attendance.

2. View Courses

A student can view his/her courses that are assigned in his/her class. From here, a student can do the following:

  • View Marks
  • View Syllabus
  • View Assignments

3. View Marks

A student can view marks, final results and grades for a course.

4. View and Download Syllabus

Students can view and download syllabi of their courses just like their teachers.

5. View and Download Assignments

Students can view and download assignments of their courses just like their teachers.

6. View Routine

Students can view their class and section routine just like their admin/teachers.

Troubleshooting

If you encounter any issues during installation or setup, consider the following troubleshooting steps:

  • Ensure that your server meets all the necessary Server Requirements.
  • Verify your Docker installation and configurations.
  • If experiencing issues accessing the application, check your Docker container logs for errors.
  • Ensure that you’ve followed each step in the installation process carefully.

For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.

At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox