Welcome to the user manual for Neptune. This guide provides comprehensive instructions on how to navigate and utilise the various features available on the website.
You will need to have the above programming language, tool, database and server installed before you can actually install the Neptune platform. Laravel 8.x framework has been used, it is only there to acknowledge that. No need to install Laravel. The rest of the technologies are pre-requisites.
After you make sure that composer is installed properly and you can check composer -v has given you proper update about the version of composer installed, you need to go to the folder where you downloaded the project from CodeCanyon and run the below command. It will run composer within that directory and download all the library and package files required for the Neptune platform to work.
composer update
And then you will need to run the below command also for downloading all the npm packages that are needed for the Neptune Exam Management System to function properly. Before you run this command be sure to check nvm -v and npm -v gives proper version numbers.
npm install
npm install --save --legacy-peer-deps
Now comes the part where you have to run mostly commands related to the directory permissions and such for the Laravel framework to work properly. In the below two commands we are setting permission for the storage/ directory and bootstrap/cache directory. As Laravel needs to have access to this directories reading and writing data.
Linux
chmod -R 775 storage
chmod -R 775 bootstrap/cache
In some cases Laravel need to execute some files from the storage/ directory and that is why we will have give the directory execution permission as well and to do that you have to run the below command.
Linux
chmod -R ugo+rw storage
From this point on we have to run some Laravel specific command which uses Artisan (Command-line interface included with Laravel). The first one is this where we are linking the storage directory with the public directory for easy read/write of data from User's side.
php artisan storage:link
At this point of installation we have to copy the structure of .env.example file (which can be found
in the root directory of Neptune) and paste the contents to another file called .env
The below command will do that for you but if you want, you can do it manually too.
The dot(.) at the beginning is a must.
Linux
cp .env.example .env
Next open the .env file you just created (you can open it on a notepad). Replace the values that are shown in the below. You will need the database_name, database_user_name and database_password. We are assuming that you have already MySQL installed and created a database with your desired name. But for a far more detailed instructions please refer to this tutorial
For the email settings, make sure that you have set the values to the variables show below correctly. Otherwise emails will not be sent in case of creating/updating/cancelling an exam.
DB_DATABASE=YOUR DATABASE NAME
DB_USERNAME=YOUR DB USER NAME
DB_PASSWORD=YOUR DB USER PASSWORD
MAIL_DRIVER=EMAIL PROTOCOL
MAIL_HOST=EMAIL PROTOCOL URL
MAIL_PORT=EMAIL PROTOCOL PORT
MAIL_USERNAME=EMAIL PROTOCOL USER NAME
MAIL_PASSWORD=EMAIL PROTOCOL PASSWORD
MAIL_ENCRYPTION=EMAIL PROTOCOL ENCRYPTION
This command will generate a new key and write it on the .env file.
php artisan key:generate
The command below is very important as this command will create the database tables and push the initial data to get started on using the Neptune platform. So double check that you have MySQL installed and you have setup the database credentials correctly in the .env file. Once this has been done successfully, you are just one step away from using the brand new Exam Management System.
php artisan migrate:fresh --seed
In this step you will actually run the Laravel based Neptune platform and there are two ways to do that. If you want to run it manually then simply run the command shown under Manually and then visit http://localhost:8000 on your browser. If everything is done correctly, you should see the login page of Neptune.
But if you wish to run it as a VirtualHost, there are some steps that you have to
as described here.
i. Go to /etc/apache2/sites-available or /etc/nginx/sites-available
ii. Copy and paste the default config file and rename it to your-desired-project-name
iii. Open the file and remove everything withing that and put the below code under VirtualHost
- Make sure that value after root on line 2 matches with your directory (for example purpose neptune is put here)
- The public at the end is mandatory
- Make sure that you put the correct server name on line number 4 (for example purpose neptune.t1m9m.com is given here)
- Update the php8.3-fpm.sock on line 10 according to the PHP version you installed
iv. Now run the command sudo nginx ln -s /etc/apache2/sites-available/your-desired-project-name /etc/apache2/sites-enabled
v. In case of Nginx sudo nginx ln -s /etc/nginx/sites-available/your-desired-project-name /etc/nginx/sites-enabled
vi. Open /etc/hosts file and write 127.0.0.1 your-desired-project-name.local, then save and close
vii. Run sudo systemctl restart apache2 or sudo systemctl restart nginx
viii. Go to browser and visit your-desired-project-name.local and you should see the login page of Neptune.
Manually
php artisan serve
VirtualHost
server {
root /var/www/t1m9m.com/neptune/public;
index index.html index.htm index.php;
server_name neptune.t1m9m.com;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
Please email for any kind of support t1m9m.com@gmail.com and thank you for trying.
Upon successful login, you will be directed to the Dashboard.
Email: superadmin@neptune.com
Password: superadmin
On this website, we offer three predefined roles:
Each role comes with preset permissions and access levels suitable for different users. Additionally, users with appropriate permissions can create custom roles based on specific requirements. This feature enables the definition of precise permissions and access rights customised to the unique needs of an organisation or project.
The Dashboard serves as the central hub for accessing key information and functionalities. Here's an overview:
This page shows all Examiners and their various information along with new add examiner, Edit, Delete. This page includes,
In this section, all registered examinees in the system are displayed, with "Examinee" serving as a predefined role. Only users with the appropriate permissions can add new examinees. When adding a new examinee, they can be assigned to multiple categories, allowing them to automatically join exams created under those categories. Each row in the table includes columns indicating the exams completed by the examinee and the examiners overseeing them. This page contains,
All exams, both those already conducted and those scheduled for the future, are listed here. You can access various details about each exam, as well as options to create a new exam, view details, edit, and delete. This page contains,
This page displays all the image questions, providing the option to add or update them as needed.
This is the single questions page where all the questions are listed and can also be added or updated. This page includes,
This is the true/false questions page where all the questions are listed and can also be added or updated. This page includes,
This is the Fill in the Gap questions page where all the questions are listed and can also be added or updated. This page contains,
This is the MCQ3 questions page where all the questions are listed and can also be added or updated. This page contains,
This is the MCQ4 questions page where all the questions are listed and can also be added or updated. This page contains,
This is the MCQ5 questions page where all the questions are listed and can also be added or updated. This page contains,
This is the MAQ3 questions page where all the questions are listed and can also be added or updated. This page contains,
This is the MCQ4 questions page where all the questions are listed and can also be added or updated. This page contains,
This is the MCQ5 questions page where all the questions are listed and can also be added or updated. This page contains,
Categories function as tags within the system, facilitating organisation. They prove valuable when adding Examinees. During the creation of an Exam or an Examinee, multiple categories can be included. When adding a new Examinee, they will automatically be associated with exams sharing the same categories. Categories significantly enhance the efficiency of organising both exams and Examinees within the system.
Sections play a vital role in systematically organising exam papers. When sections are integrated into an exam, the paper is displayed section by section. Users with Section permissions can access all sections, regardless of their contribution. During exam creation, multiple sections can be included. However, while sections can be added during exam creation, questions must be added to the sections in the subsequent step.
The Permissions page offers a comprehensive view of the system's available access features. These access rights, totaling 84, come preconfigured and are categorised into 19 modules. While most modules provide basic access functions like Create, Show, Edit, and Delete, there are exceptions such as Permission, Exam, Examiner, and Examinee. It's important to note that these permissions undergo a thorough two-layer security check: first within the View files and then through verification within the Controllers. This method ensures robust security measures are in place.
Roles are crucial in determining your access within the system. For instance, if you possess the role of Examiner, you gain access to manage Questions, Categories, Sections, and Exams. It's important to understand that a single role defines a consistent set of actions across users. Predefined roles like Super Admin, Examiner, and Examinee should not be modified. Additionally, creating a new role with identical permissions as one of these predefined roles will not yield similar behaviour.Any new role added to the system is automatically categorised as a Staff role.
All types of users are displayed in this section ever superadmin (except examiner and examinee), along with their all other information like, email, age, role and gender of. New staff can be created from this page by selecting among predefined roles. Administrators can define the role and permissions of each user during the creation process.
Creating Staff or any User, for that matter, follows a role-based approach. Initially, you create a role with the desired permissions for a Staff member. Subsequently, you assign this role to the Staff member you intended to create initially. It's important to note that only one role can be assigned at a time; the system doesn't accommodate assigning multiple roles to one Staff/User. Additionally, predefined roles like Super Admin, Examiner, and Examinee are intentionally kept hidden. It's crucial to recognize that Examiner and Examinee roles are distinct from Staff roles. Furthermore, there should only be one user under the super admin role to maintain system integrity.
All types of users are displayed in this section, along with their email addresses and roles. New users can be created from this page by selecting among predefined roles. Administrators can define the role and permissions of each user during the creation process. And also can edit and delete them.
Welcome to the user manual for “Neptune”. This guide provides comprehensive instructions on how to navigate and utilise the various features available on the website.
To access the website, follow these steps:
Upon successful login, you will be directed to the Dashboard.
You can create your account as an examinee by registering. To create a new account, click the "here" button under the "Sign me in" button on the sign-in page. After clicking the register button, you'll be directed to a form page where you can enter your name, age, email, password, confirm password, select gender and category, and agree to the terms, data policy, and Cookie Use. Then, click "Sign up" to proceed, and you'll be directed to your dashboard.
The Dashboard serves as the central hub for accessing key information and functionalities. Here's an overview:
On this page, you'll find a list of all the exams you've completed and those scheduled for the future.You'll receive notifications in your account and via email whenever a new exam is created within your designated category. These categories are established either during your account setup or by the administrators. It's essential to remember that exams will start according to the system time, not the examinee's local time, so it's important to keep track of timing accordingly. This page includes,