IraSoro / peri

The period tracker app
https://irasoro.github.io/peri/
32 stars 26 forks source link

added a docker file and my argument in statement.md file #261

Closed stephennwachukwu closed 3 months ago

imblowfish commented 3 months ago

Hello, Thank you very much for your PR, but we already have necessary docker image for development environment. You can find more info in the BUILDING.md file.

I read all your arguments about dockerizing and I have several answers:

Provides a dedicated space for developers to build and test new features without affecting the live application

Peri is not a web application, it's just an Ionic-based app focused on Android with a statically built demo running on Github Pages. Peri doesn't use any server and stores all user data in the local device storage.

So, it's pretty simple to test new features on local developer environment or developer smartphone without affecting the live application.

Multiple environment enable comprehensive testing processes, including unit tests, integration tests, and user acceptance tests

We already have testing process that includes unit tests, integration tests and user acceptance tests.

Many manual tests are not yet automated and this is done for several reasons: 1 We are saving money, since this is an open source and free project and we don't make money on it 2 Our UI is still not in stable state, and the implementation of screenshot testing or any other automated UI testing requires large-scale changes in test flow

Developers, testers, and stakeholders can work in parallel without interference, improving overall productivity

Good point, but now there is just two of us and it's pretty simple to git clone project and run it locally

Docker container encapsulate all dependencies and configurations, ensuring that the application runs consistently across differenct environments

Yes, that's true, but peri doesn't use any environment except of default node+npm and all other dependencies from package.json. This dependencies will be the same on every device

Additionally we have Android Studio dependency, but every developer uses their own preferred environment (Android Studio or docker image with Android SDK)

Container isolate applications, reducing the attack surface and potential vulnerabilities

Yes, but as I described above, peri is the smartphone oriented app that may be built statically and we don't use any server. If user wanna make some attack then this attack will affect only this user and their smartphone/statically built app