This project poster is following the template at https://www.atlassian.com/team-playbook/plays/project-poster
projectA is the first one of 26 projects from A to Z that I intend to develop on the way to become a full-stack developer.
projectA will last in one month from Aug 10 to Sep 10. Hope that it can contain basic knowledge of full-stack system development including front-end, back-end, and DevOps.
Team project owner |
---|
@iamacoderguy |
Team members | Project status: Active / Inactive / Shipped |
---|---|
@iamacoderguy | Active |
@luyendt | Active |
@Dienvm | Active |
PROBLEM STATEMENT: Need for one who is looking for a sample system that requires basic knowledge of front-end, back-end, and DevOps to build.
IMPACT OF THIS PROBLEM: I have two years' experience of mobile development in Xamarin and that's it. My job is at risk. I can be fired at any time and it's hard to find a new one with Xamarin experience in my country. There are many things to learn, but not enough time for me for learning anything deeply. The best way for me to learn a thing is from practicing. So I would like to implement my ideas one by one to help me learn about the high-demand domain knowledge in my area. A system that requires basic knowledge of front-end, back-end and DevOps is a good starting point for me.
The project will be finished if:
- We finish developing a system which involves a server (back-end) and one or more clients (front-end)
- The system can run, do one or more useful tasks and everyone can use it with some configurations
- The system doesn't need to run online, on-cloud. It can use a LAN.
- No master how many features the system has.
- The system must be continuously integrated and continuously delivered.
- Play a mini game with an auto bot from the server
- Play a mini game with friends via LAN
- An authentication system (sign up and sign in).
- Randomly show a thing (such as a motivation quote or a video from Youtube).
- File transfer between PC and mobile or PC and PC
I've chosen the last one. So we're implementing a system that enables end-users to transfer their files between their PCs or their mobiles. For more information, please refer to What are we doing?
We will choose frameworks to implement the solution based on the roadmap at https://github.com/kamranahmedse/developer-roadmap (maybe JS related frameworks). We take ownership of defining of done.
No, just do it, then we will explore.
The project will deliver a solution including:
- Client applications:
- A mobile application (Android or iOS or both)
- A desktop application (desktop or web app or both)
- A server package which is able to install and run on Windows
The clients can connect (#18☑️, #22☑️, #9, #10) to the server if they're in a same LAN, then
- Upload files to the server's shared folder (#15☑️, #3, #4)
- Browse files from server (#21☑️, #30☑️, #5, #6)
- Download files from the server's shared folder (#17☑️, #7, #8)
- Disconnect from the server (#19☑️, #11, #12)
The release package also includes a CI/CD system for the above solution.
It can help us to learn about basics of front-end (the clients), back-end (the server) and DevOps (the CI/CD system).
The project will last in one month: