FTP servers can be difficult to setup, this utility adds a web interface to a python based FTP server in order to control users, upload/download files quickly, and view the server status.
Our project contains two different servers, the FTP server itself and the web server. The FTP server is how users can login, manage files, and manage files remotely. The web server allows you to view the status of the FTP server, manage the users in the FTP server, change listening port and IP, and upload/download files quickly.
We used the following languages to build this project:
- PHP
- TailwindCSS
- Python
- Sqlite
- Bash
- Docker
Our team was fairly new with project collaboration (programming-wise), so in order to combat this we decided to work on one main branch and communicate every time we made a push on GitHub. Simultaneously, each of us pulled at each push. Through this we were able to avoid merging conflicts as well as any break in the code.
We are most proud of being able to come together to incorporate each of our own piece of technological knowledge into one big project. We built a unique & minimal looking UI that is pleasing to the eye as well as a functional FTP.
We enhanced our ability to collaborate. Using Github to our advantage as well as their collaborate feature, we came up with our own way to push and pull our commits without merging conflicts or any other problems.
Incorporating new technologies such as AI will be next for NebulaFTP. We plan to add a small chatbot that a user can interact with that enables them to navigate through the interface or ask FTP-related questions.