Hi, community! I discovered Fineract CN project just recently and found it very interesting and ambitious and it raised a great interest in me. I went through all the documentation and materials I could find. I thought I share my first impressions and ideas on how I think the project could be further improved and highlight some minor issues that I found.
1. Fineract CN is targeted to a wider audience than its predecessors so in my opinion, Fineract CN materials and discussions should be separated from the Fineract project as it causes confusion and noise. I see that there is a separate Jira project created for Fineract CN but not yet a separate Confluence space nor separate developers list. Fineract CN materials are mostly grouped under "Fineract CN" but there is also some material found elsewhere (for example Fineract User Zone -> Apache Fineract CN Users Guide). 2. I had some comments about Confluence pages. First I thought to register myself as a Confluence user but after that, I still didn't have any permissions to add comments to pages. So I thought I write them here for now. 2.1. Comments on "How to build Apache Fineract CN <https://cwiki.apache.org/confluence/display/FINERACT/How+To+Build+Apache+Fineract+CN> " The wiki page has a lot of info and organizing it into logical steps would help a newcomer out and it wouldn't hurt to add a few lines explaining why some step is done and also add a link to demo_server Readme.md Luckily wiki page has all the info in there and so eventually I managed to get the app running in my local environment (Mac). For some reason, I couldn't get Cassandra working but I managed to solve this by running Cassandra from a Docker image instead: docker run -p9042:9042 -p7199:7199 cassandra:3.11 This brought me to an idea that a docker-compose.yml could be set up to create an environment with all the running services (you can google "docker compose npm local" for more info). I know it adds overhead (won't probably work well on slow computers) but it would speed up getting the demo server running locally. All FN projects have Gradle wrapper in use so I don't see why there is a need to install Gradle (Mac users are suggested to install Maven as well). Also, I didn't get why there is a need for Nginx. Creating a fork of all the Fineract CN Github repositories could be an optional step - one could just clone the repos directly and switch to a fork only if he actually plans contributing. 2.2. Comments on "Importing Fineract CN Microservices Into IntelliJ <https://cwiki.apache.org/confluence/display/FINERACT/Importing+Fineract+CN+Microservices+Into+IntelliJ> " I think it would be good to suggest also importing modules under "integration-tests/*" into IntelliJ IDEA 3. I was surprised to see that Fineract CN is based on Spring Boot 1. I didn't find from anywhere in the roadmap about any plans to migrating on Spring Boot 2. I think that at this stage it would be wise to stay up to date with the base framework. Spring Boot 2 comes with Hikari Connection Pool that is very fast and in my opinion, Hikari combined with "com.mysql.jdbc.Driver" would solve the licensing problem described by https://issues.apache.org/jira/browse/FINCN-26 as well. Some minor bugs in documentation that caught my attention: 1. This page http://fineract.apache.org/ says "To subscribe, send a blank email to [email protected]" I got a response back: Fineract user list is closed. Please see dev.at.fineract list instead 2. https://cwiki.apache.org/confluence/display/FINERACT/Fineract+Home Says: "On Jira tickets, please see the label CN. " This made me search for issues in project https://issues.apache.org/jira/projects/FINERACT/ (with labels=CN) but some time later I found out that correct Jira project link for Fineract CN is actually: https://issues.apache.org/jira/projects/FINCN Thank you for your attention and I hope to become a contributor soon. Kind regards Juhan Aasaru
