Teamix is a fully functional clone of microsoft teams made using Agile development methodologies, as a part of the Microsoft Engage 2021 program.
Having an excellent team space is key to being able to make creative decisions and communicate with one another.
Shared workspace software makes this much easier to achieve, especially if a particular team is based in a very large company, has many remote employees, or is made up of a significant number of team members.
Keeping these in mind, introducing to you Teamix
, a desktop application to effortlessly communicate and collaborate with your team remotely.
☢ Make an account and login to start using Teamix!
⚡ Make a team or join a team to collaborate with users remotely.
📺 video call any time with your team and chat with them. Inside a video call, you can share your screen, raise your hand, chat, toggle tile view, change background, start a live stream, share a youtube video, view speaker stats, and many more!
🌿 Make posts inside a team to communicate effectively
🧬 interactive chatbot to help you through if you get stuck.
⚛ Delete a team or post whenever you want.
Having an excellent team space is key to being able to make creative decisions and communicate with one another. Shared workspace software makes this much easier to achieve, especially if a particular team is based in a very large company, has many remote employees, or is made up of a significant amount of team members.
Keeping these in mind, introducing to you Teamix
Teamix is a desktop application made with electron.js. There is also a central server and a database in a typical three tier architecture system. The app and the server communicate through http requests and follow RESTful standards.
Backend service:
- PostgreSQL for database.
- Node.js
- Jitsi Web RTC for video calling
Frontend service:
- HTML
- CSS
- Javascript
- Electron to package the desktop application
- To run development server, first cd into the backend directory then run -
npm run dev
- To run electron app, cd into the frontend directory then run -
npm run electron
- To lint code
npm run lint
- To run unit tests
npm run test
The software was developed using scrum framework in agile methodology.
This was done to ensure that the main focus was on the software product. The exact list of features were not exactly known since the start and hence it was very necessary that the whole process was able to accommodate change easily.
The project was released in 2 sprints, and each sprint was further divided into 3 phases-
- Planning and prototyping: I used a method of prototyping by first designing the UI on Figma and then after final approval, the implementation of it on the desktop application
- Implementation
- Testing and review: After each sprint, I discussed my progress with my mentors, and improved my project based on their feedback.
The backend is deployed using Heroku. The deployment follows a CI/CD pipeline in which, a successful push to the main branch of the github repository runs a github action which in turn runs a series of unit tests which were written, and only on passing the tests successfully the latest code is deployed to Heroku.
Sharanya Mukherjee |
Made with ❤️ by Sharanya Mukherjee