Project Video :
IRIS.Demo.mp4
"Your repo is your resume. But what is a good looking repo?"
So you want to start a Project on Github. Ever wondered what makes a project repository good? What makes your project stand apart when collaborating with multiple developers? What would ensure that your project is well documented and readable to other developers who might try to work on this in the future?
bash requirements.sh
Worry not. I.R.I.S is here.
I.R.I.S (Ideal ReposItory for Software projects) is a tool which can help developers align their repos as per the standards defined in Software Engineering.
You don't have to worry about missing a test case, or scratch your head on what more files or functionalities are needed to make your repository look good.
- Currently, this project cannot be run on Windows. You need to make use of WSL to work on this project in Windows
I.R.I.S streamlines your repository as per the Software Engineering Standards, so that your repository has all the necessary Structure to be called a "Good Repo".
I.R.I.S can be thought of a base repo to make sure your project repo fits the bill.
VID-20211108-WA0001.1.1.1.mp4
Delta.Phase3.mp4
-
Clone GITS Repo
-
From the root directory run the following command
pip install -r requirements.txt
-
Go to configurations directory and run the following command:
If you are working on Linux system with a bash terminal or a Windows system using Windows subsystem for linux:
bash project_init.sh
If you are working on Linux system with a fish terminal:
fish project_init.fish
-
Source the bashrc file
source ~/.bashrc
Note: Open the .bashrc file in User home directory to make sure that the alias command does not have any white spaces in the path. If so, rename the directory to remove the white spaces and re-run the setup.
- Clone GITS Repo
- From the root directory run the following command
pip install -r requirements.txt
- Run "windows_setup.bat" from configurations folder to setup environment.
- Run "autoRun.bat" as administrator.
- Now gits command is accessible all over the system.
Please take a look at our CONTRIBUTING.md where we provide instructions on contributing to the repo and help us in enhancing the current video conferencing platforms.
- Use custom commands to work with Git from your command line.
- Create Default files on startup according to the Stucture.
- Files will be auto generated with template to give the developers an idea on what needs to be filled. Also, the user is given a choice to add license in his repo from the list provided.
- Score Calculation to see how much the repo matches with the ideal repo structure.
- Created commands to show version of Git, count commits, list all custom created commands.
- Create a custom command to work with Git and make development fun.
(Please check the Projects Tab to see how you can make the project better)
This project aims to ease the developers efforts while working on their project repos. I.R.I.S makes their work easier and saves time by providing all the necessary default files in the required structure to ensure that the developers can focus on making their project better and not worry about the repository.
Here are few motivation points behind coming up with this idea:
- Sometimes when you're working with different files and branches, there are way too many commands which need to be updated in an order. Using a custom command, which can do multiple commands at the same time in a specific order saves time and effort from the developer.
- When working on one of the homeworks for the course, we realised the dearth in project repos which adhere to the standard structure.
- Even if the Idea is good, developers miss out on making a good impression due to the inability to make the projects transferable and easily-usable.
To solve the issues described above, we came up with the project I.R.I.S that stands for Ideal ReposItory for Software projects.
You can checkout the Projects Tab in GitHub to see the upcoming tasks for the Project.
- Initally , the software could only be implemented on MacOs or Linux Machines. Now we have made sure the commands can be executed on windows and that the software can be executed on windows platform as well.
- Also made an executable to setup the project on command line for ease of use for the user.
- The commands now run on windows and are able to take arguments as well.
- The user needs to set up and authenticate this software just once. Alias gets created that is permanent and can be used from anywhere on the command line in windows.
- Can add more git custom commands to improve quality of life.
- Can allow users to create commands that they want.
- Implement a UI.
- Implement the software on docker to make it totally OS independent.
Here are some measures that can help compare the results between traditional Git/Github Repo Creation and I.R.I.S
- The default files created as part of the repo creation.
- The structure followed for the default files.
- The default template followed for most files, so that even the most layman developer can ensure that his repo adheres to the Standard.
This repository is made for CSC-510 Software Engineering Course at NC State University for Fall 2021.
Neel Shah |
Parth Patel |
Ameya Tathavadkar |
Jay Shah |
Harshil Shah |
For any questions and contribution please contact: [email protected]
Made with ❤️ on GitHub.